{ "id": "173781", "key": "TIMOB-27167", "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": "20033", "name": "Release 9.0.0", "archived": false, "released": true, "releaseDate": "2020-03-18" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2020-01-30T21:27:26.000+0000", "created": "2019-06-19T13:01:46.000+0000", "priority": { "name": "Medium", "id": "3" }, "labels": [], "versions": [], "issuelinks": [ { "id": "57698", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "173780", "key": "TIMOB-27166", "fields": { "summary": "CLI: re-enable removal of dead code on minification", "status": { "description": "The issue is open and ready for the assignee to start work on it.", "name": "Open", "id": "1", "statusCategory": { "id": 2, "key": "new", "colorName": "blue-gray", "name": "To Do" } }, "priority": { "name": "Medium", "id": "3" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } }, { "id": "58107", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "174236", "key": "TIMOB-27457", "fields": { "summary": "Clarification on Titanium bootstrap files", "status": { "description": "The issue is open and ready for the assignee to start work on it.", "name": "Open", "id": "1", "statusCategory": { "id": 2, "key": "new", "colorName": "blue-gray", "name": "To Do" } }, "priority": { "name": "High", "id": "2" }, "issuetype": { "id": "7", "description": "gh.issue.story.desc", "name": "Story", "subtask": false } } } }, { "id": "57697", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "171402", "key": "ALOY-1612", "fields": { "summary": "CLI: Be able to use Alloy source-maps in Safari Debugger / Chrome Dev-Tools", "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": "None", "id": "6" }, "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": "2020-01-30T21:27:26.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": "13103", "name": "CLI", "description": "Node-based command line interface" } ], "description": "Alloy does some additional work in specialized Babel plugins to \"optimize\" Alloy applications. But most of these can be generally useful for Titanium apps and should be moved into the mainline build process to benefit all apps (and to simplify Alloy's build process which is poorly written resulting in some hard to fix build/source map bugs and performance issues).\r\n\r\nSpecifically Alloy allows developers to make use of special references that get replaced by true/false:\r\n- OS_IOS, OS_ANDROID, OS_WINDOWS\r\n- ENV_DEV, ENV_DEVELOPMENT, ENV_TEST, ENV_PROD, ENV_PRODUCTION\r\n- DIST_ADHOC, DIST_STORE\r\n\r\nThen it strips out dead code as a result (because these are typically use in if/else guards for platform-specific code)", "attachment": [], "flagged": false, "summary": "CLI: Move Alloy optimizations into core SDK build", "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": 1169, "state": "closed", "name": "2019 Sprint 22", "startDate": "2019-10-21T15:38:21.747Z", "endDate": "2019-11-03T15:38:00.000Z", "completeDate": "2019-11-04T18:36:57.022Z", "originBoardId": 114 }, { "id": 1170, "state": "closed", "name": "2019 Sprint 23", "startDate": "2019-11-04T18:38:14.526Z", "endDate": "2019-11-17T18:38:00.000Z", "completeDate": "2019-11-18T16:38:18.423Z", "originBoardId": 114 }, { "id": 1171, "state": "closed", "name": "2019 Sprint 24", "startDate": "2019-11-18T16:40:09.114Z", "endDate": "2019-12-01T16:40:00.000Z", "completeDate": "2019-12-02T23:06:24.654Z", "originBoardId": 114 }, { "id": 1172, "state": "closed", "name": "2019 Sprint 25", "startDate": "2019-12-02T23:08:39.644Z", "endDate": "2019-12-15T23:08:00.000Z", "completeDate": "2019-12-16T05:54:54.518Z", "originBoardId": 114 }, { "id": 1175, "state": "closed", "name": "2019 Sprint 26", "startDate": "2019-12-16T06:12:12.044Z", "endDate": "2019-12-21T06:12:00.000Z", "completeDate": "2019-12-22T03:07:15.802Z", "originBoardId": 114 }, { "id": 1177, "state": "closed", "name": "2020 Sprint 2", "startDate": "2020-01-20T17:44:37.733Z", "endDate": "2020-01-31T17:44:00.000Z", "completeDate": "2020-01-31T16:57:44.689Z", "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": "451982", "author": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "body": "Started moving this out to a Babel plugin we could include in node-titanium-sdk: https://github.com/appcelerator/babel-plugin-transform-titanium", "updateAuthor": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "created": "2019-10-11T12:59:56.000+0000", "updated": "2019-10-11T12:59:56.000+0000" }, { "id": "453179", "author": { "name": "s.volkov", "key": "s.volkov", "displayName": "Sergey Volkov", "active": true, "timeZone": "Europe/Moscow" }, "body": "Hi. Is there a way to integrate this Babel plugin (or any other) in a classic project (actually I need it to be executed after alloy)?", "updateAuthor": { "name": "s.volkov", "key": "s.volkov", "displayName": "Sergey Volkov", "active": true, "timeZone": "Europe/Moscow" }, "created": "2019-12-13T16:26:35.000+0000", "updated": "2019-12-13T16:26:35.000+0000" }, { "id": "453217", "author": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "body": "node-titanium-sdk PR: https://github.com/appcelerator/node-titanium-sdk/pull/131", "updateAuthor": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "created": "2019-12-17T14:57:57.000+0000", "updated": "2019-12-17T14:57:57.000+0000" }, { "id": "453219", "author": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "body": "A WIP PR for the SDK: https://github.com/appcelerator/titanium_mobile/pull/11400\r\n", "updateAuthor": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "created": "2019-12-17T16:29:09.000+0000", "updated": "2019-12-17T16:29:09.000+0000" }, { "id": "453222", "author": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "body": "[~s.volkov] This PR sort of shows how you could forcibly do this if you control the options that get into node-titanium-sdk's jsanalyze: https://github.com/appcelerator/node-titanium-sdk/pull/131/files#diff-5868425a37491ef8e1872789e566db31R137\r\n\r\nWe don't really expose a way to fiddle with that though. This is the location you'd try and pass in a {{plugins}} value that should eventually get rolled in: https://github.com/appcelerator/titanium_mobile/blob/master/android/cli/commands/_build.js#L2715 (for android) In this example you'd want to tweak {{defaultAnalyzeOptions.plugins}} to be an array with babel plugin entries. (each item being either the string name, or an array with two elements first is plugin name/object second is the options to pass to the plugin)\r\n", "updateAuthor": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "created": "2019-12-17T16:52:02.000+0000", "updated": "2019-12-17T16:52:02.000+0000" }, { "id": "453829", "author": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "body": "FR Passed.\r\nPR Merged.", "updateAuthor": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2020-01-27T18:25:47.000+0000", "updated": "2020-01-27T18:25:47.000+0000" }, { "id": "453952", "author": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Verified the fix with SDK 9.0.0.v20200130075800.\r\nClosing.", "updateAuthor": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2020-01-30T21:27:21.000+0000", "updated": "2020-01-30T21:27:21.000+0000" } ], "maxResults": 9, "total": 9, "startAt": 0 } } }