{ "id": "117534", "key": "ALOY-758", "fields": { "issuetype": { "id": "5", "description": "The sub-task of the issue", "name": "Sub-task", "subtask": true }, "parent": { "id": "112795", "key": "ALOY-620", "fields": { "summary": "Reduce compile time", "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 } } }, "project": { "id": "11113", "key": "ALOY", "name": "Alloy", "projectCategory": { "id": "10400", "description": "Tools for developing applications", "name": "Tooling" } }, "fixVersions": [], "resolution": null, "resolutiondate": null, "created": "2013-07-24T14:54:10.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [], "versions": [], "issuelinks": [], "assignee": null, "updated": "2018-03-07T22:25:36.000+0000", "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" } }, "components": [ { "id": "12329", "name": "Runtime", "description": "Generic bucket for uncategorized runtime issues" }, { "id": "13604", "name": "Tooling", "description": "Items related to Alloy tooling and workflow" } ], "description": "Alloy recompiles its core runtime libraries on each build to account for the fact that they may contain compiler conditionals. We could speed up the compile process by having pre-compiled (perhaps even concatenated and optimized into a single file) for each platform supported. This would work assuming that the platforms compiler conditionals (OS_IOS, OS_ANDROID, etc...) were the only compiler conditionals used. \r\n\r\nTo optimize the files and enforce the minimal restrictions mentioned above, we should investigate the appropriate tooling to generate these files. We can possibly make use of [grunt.js|http://gruntjs.com/] and its pre-built uglify and concat tasks to generate the pre-compiled files. ", "attachment": [], "flagged": false, "summary": "Create pre-compiled versions of Alloy core runtime libraries per-platform", "creator": { "name": "tlukasavage", "key": "tlukasavage", "displayName": "Tony Lukasavage", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "tlukasavage", "key": "tlukasavage", "displayName": "Tony Lukasavage", "active": true, "timeZone": "America/Los_Angeles" }, "environment": null, "comment": { "comments": [], "maxResults": 0, "total": 0, "startAt": 0 } } }