{ "id": "152336", "key": "TIMOB-19790", "fields": { "issuetype": { "id": "6", "description": "gh.issue.epic.desc", "name": "Epic", "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": "16980", "description": "New V8", "name": "Release 6.0.0", "archived": false, "released": true, "releaseDate": "2016-11-15" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2016-07-27T13:43:21.000+0000", "created": "2015-10-26T14:32:49.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "breaking-change" ], "versions": [], "issuelinks": [], "assignee": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "updated": "2016-09-28T00:02:34.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": "10202", "name": "Android", "description": "Android Platform" } ], "description": "Our current version of V8 that Android (and native modules) are built against is V8 3.9.24.29. That version is from mid-May 2012. It is very, very out of date. We should move to a more recent Long Term Support version of V8 engine to gain ES6 functionality as well as significant performance increases.\r\n\r\nIt's worth noting that the is a major change and will break backwards compatibility of native modules, and _may_ force us to drop support for older Android releases. See https://en.wikipedia.org/wiki/Google_Chrome_release_history where it looks like Chrome app dropped support for Android 4.0 with the 43.0.257 release (which uses V8 4.3.61).\r\n\r\nHere's the changelog up to 3.31.1: https://code.google.com/p/v8/source/browse/trunk/ChangeLog\r\nHere's the changelog for 4.8.151: https://github.com/v8/v8/blob/4.8.151/ChangeLog", "attachment": [], "flagged": false, "summary": "Android: Update V8 to latest LTS release", "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": 682, "state": "closed", "name": "2016 Sprint 15 SDK", "startDate": "2016-07-16T00:19:20.819Z", "endDate": "2016-07-30T00:19:00.000Z", "completeDate": "2016-08-01T04:40:11.421Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "377883", "author": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "body": "So, to find the stable release of V8 to use (from https://gist.github.com/domenic/aca7774a5d94156bfcc1 ):\r\n- first you go to: https://omahaproxy.appspot.com\r\n- Look for the Android stable row, then go all the way to the right and get the v8_version value (right now it is 4.8.271.17)\r\n- Take the major.minor version and then look at the commits on that branch's history at https://github.com/v8/v8/commits/4.8-lkgr (replace 4.8 with whatever branch version came from the table above)\r\n- Now look through the commits for the exact version from the value above for android. It *may not* be the latest patch release (i.e. right now there's a 4.8.271.20, but android stable is at 4.8.271.17 which is 4 commits back)", "updateAuthor": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "created": "2016-02-25T15:42:06.000+0000", "updated": "2016-02-25T15:42:17.000+0000" }, { "id": "377894", "author": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "body": "some handy dandy v8 references:\r\n\r\nSome older blog posts, uses older v8 API:\r\n- http://web.archive.org/web/20140727091841/http://create.tpsitulsa.com/blog/2009/01/31/persistent-handles/\r\n- http://web.archive.org/web/20150217015842/http://create.tpsitulsa.com/blog/2009/01/29/v8-objects\r\n\r\nNode add-ons examples:\r\nNot the exact same , since they use Nan and have node-specifics mixed in too.\r\n- https://github.com/nodejs/node-addon-examples\r\n\r\nV8 API Reference: http://v8.paulfryzel.com/docs/master/index.html\r\nV8 API changes overview: https://docs.google.com/document/d/1g8JFi8T_oAE_7uAri7Njtig7fKaPDfotU6huOa1alds/edit\r\n\r\n", "updateAuthor": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "created": "2016-02-25T17:10:15.000+0000", "updated": "2016-02-25T17:10:15.000+0000" }, { "id": "391665", "author": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "body": "Resolving since all sub-tasks except TIMOB-23550 are resolved. That ticket would be a nice to have, but is not required for rolling out the V8 update.", "updateAuthor": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "created": "2016-07-27T13:43:21.000+0000", "updated": "2016-07-27T13:43:21.000+0000" }, { "id": "397441", "author": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Verified the fix.\r\n\r\nRan a smoke on android & no issues found.\r\nClosing.\r\n\r\nEnvironment:\r\nAppc Studio : 4.8.0.201609191928\r\nTi SDK : 6.0.0.v20160923122318\r\nTi CLI : 5.0.9\r\nAlloy : 1.9.1\r\nMAC El Capitan : 10.11.6\r\nAppc NPM : 4.2.8-7\r\nAppc CLI : 6.0.0-48\r\nNode: 4.4.4\r\nNexus 6 - Android 6.0.1", "updateAuthor": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2016-09-28T00:02:28.000+0000", "updated": "2016-09-28T00:02:28.000+0000" } ], "maxResults": 4, "total": 4, "startAt": 0 } } }