{ "id": "173945", "key": "TIMOB-27286", "fields": { "issuetype": { "id": "2", "description": "A new feature of the product, which has yet to be developed.", "name": "New Feature", "subtask": false }, "project": { "id": "10153", "key": "TIMOB", "name": "Titanium SDK/CLI", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [ { "id": "20832", "name": "Release 8.3.0", "archived": false, "released": true, "releaseDate": "2019-11-25" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2019-09-17T13:54:02.000+0000", "created": "2019-07-29T14:28:37.000+0000", "epic": { "id": 172628, "key": "TIMOB-26570", "name": "Node Compatibility", "summary": "Node compatibility and developer experience", "color": { "key": "color_3" }, "done": false }, "priority": { "name": "Low", "id": "4" }, "labels": [], "versions": [], "issuelinks": [ { "id": "57765", "type": { "id": "10020", "name": "Depends", "inward": "is dependent of", "outward": "depends on" }, "outwardIssue": { "id": "172632", "key": "TIMOB-26573", "fields": { "summary": "TiAPI: Make Ti.Buffer Node-compatible with Node's Buffer type", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "priority": { "name": "High", "id": "2" }, "issuetype": { "id": "4", "description": "An improvement or enhancement to an existing feature or task.", "name": "Improvement", "subtask": false } } } } ], "assignee": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "updated": "2019-10-09T11:04:19.000+0000", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "components": [ { "id": "10224", "name": "TiAPI", "description": "This component is used for cross-platform API work. Specifications are most likely to use this component." } ], "description": "It'd be useful to create equivalents of some of the core Node modules in Titanium so that users could port/re-use node codebases on mobile devices. Some of the more common modules could map relatively easily to devices, and would be worth investigating.\r\n\r\nhttps://nodejs.org/api/string_decoder.html\r\n\r\nOnce Node's Buffer module is implemented it is a relatively small effort to implement the String Decoder module.", "attachment": [ { "id": "67029", "filename": "Screenshot 2019-10-09 at 11.55.49.png", "author": { "name": "ssaddique", "key": "ssaddique", "displayName": "Sohail Saddique", "active": true, "timeZone": "Europe/London" }, "created": "2019-10-09T10:56:28.000+0000", "size": 29825, "mimeType": "image/png" } ], "flagged": false, "summary": "TiAPI: Create Node-compatible String Decoder module API", "creator": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "subtasks": [], "reporter": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "environment": null, "closedSprints": [ { "id": 1157, "state": "closed", "name": "2019 Sprint 16", "startDate": "2019-07-29T15:35:47.313Z", "endDate": "2019-08-11T15:35:00.000Z", "completeDate": "2019-08-12T07:57:02.552Z", "originBoardId": 114 }, { "id": 1163, "state": "closed", "name": "2019 Sprint 19", "startDate": "2019-09-09T20:43:13.091Z", "endDate": "2019-09-22T20:43:00.000Z", "completeDate": "2019-09-23T15:37:35.874Z", "originBoardId": 114 }, { "id": 1165, "state": "closed", "name": "2019 Sprint 20", "startDate": "2019-09-23T15:38:43.949Z", "endDate": "2019-10-06T15:38:00.000Z", "completeDate": "2019-10-07T18:33:11.953Z", "originBoardId": 114 }, { "id": 1168, "state": "closed", "name": "2019 Sprint 21", "startDate": "2019-10-07T18:35:57.052Z", "endDate": "2019-10-20T18:35:00.000Z", "completeDate": "2019-10-21T15:38:00.182Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "450179", "author": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "body": "https://github.com/appcelerator/titanium_mobile/pull/11095", "updateAuthor": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "created": "2019-07-31T13:51:41.000+0000", "updated": "2019-07-31T13:51:41.000+0000" }, { "id": "451917", "author": { "name": "ssaddique", "key": "ssaddique", "displayName": "Sohail Saddique", "active": true, "timeZone": "Europe/London" }, "body": "*Tested on latest build. Ticket closed.*\r\n\r\n*Test Environment*\r\nStudio Ver: 5.1.4.201909061933\r\nSDK Ver: 8.3.0.v20191008081818\r\nMac OS Ver: 10.14.6\r\nXcode Ver: Xcode 11.1\r\nAppc NPM: 4.2.15\r\nAppc CLI: 7.1.1\r\nNode Ver: 10.16.3\r\nNPM Ver: 6.11.3\r\nSimulators: iPhone 11 Pro (13.1), Pixel 3 (Android 10/API 29)\r\n\r\n\r\n*Test*\r\n\r\n{code:javascript}\r\nimport { StringDecoder } from \"string_decoder\";\r\n\r\nconst decoder = new StringDecoder('utf8');\r\n\r\nvar decode = decoder.write(Buffer.from([ 0xE2, 0x82 ]));\r\nvar decode2 = decoder.end(Buffer.from([ 0xAC]));\r\n{code}\r\n\r\n\r\n*Output*\r\n\r\n !Screenshot 2019-10-09 at 11.55.49.png|thumbnail! \r\n\r\n\r\n", "updateAuthor": { "name": "ssaddique", "key": "ssaddique", "displayName": "Sohail Saddique", "active": true, "timeZone": "Europe/London" }, "created": "2019-10-09T10:57:01.000+0000", "updated": "2019-10-09T11:04:12.000+0000" } ], "maxResults": 2, "total": 2, "startAt": 0 } } }