{ "id": "167166", "key": "TIMOB-24591", "fields": { "issuetype": { "id": "7", "description": "gh.issue.story.desc", "name": "Story", "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": "18414", "description": "", "name": "Release 6.2.0", "archived": false, "released": true, "releaseDate": "2017-09-13" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2017-07-20T22:56:11.000+0000", "created": "2017-04-18T15:55:45.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [], "versions": [], "issuelinks": [ { "id": "55455", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "167573", "key": "TIMOB-24683", "fields": { "summary": "childprocess.spawn() BAD ARGUMENT : problem with Windows Phone SDK", "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": "Critical", "id": "1" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } } ], "assignee": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "updated": "2017-08-29T22:54:40.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" }, { "id": "13103", "name": "CLI", "description": "Node-based command line interface" }, { "id": "10206", "name": "iOS", "description": "iOS Platform" }, { "id": "10207", "name": "Tooling" } ], "description": "We've long checked in our node_modules folder when we update our npm dependencies. I believe we've done so to avoid npm dependency resolution issues?\r\n\r\nIf so, we could move to using yarn and lock file to ensure the full tree of dependency versions matches on everyone's systems and builds - and avoid bloating the hell out of our repo size and history.", "attachment": [], "flagged": false, "summary": "Use package-lock.json instead of checking in node_modules", "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": 925, "state": "closed", "name": "2017 Sprint 15 SDK", "startDate": "2017-07-16T14:40:47.191Z", "endDate": "2017-07-30T14:40:00.000Z", "completeDate": "2017-07-31T16:15:09.335Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "417617", "author": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "body": "One potential hangup is that we have a special 'titanium-sdk' module which actually only lives in the SDK repo, and has never been moved out to it's own package/repo. I've opened a PR to address that here: https://github.com/appcelerator/titanium_mobile/pull/8974\r\n", "updateAuthor": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "created": "2017-04-18T19:02:58.000+0000", "updated": "2017-04-18T19:02:58.000+0000" }, { "id": "417623", "author": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "body": "I'm fine with using Yarn, but now everybody MUST use Yarn. Just so everybody understands, Yarn should be installed via the recommended methods and NPM isn't one of them.\r\n\r\nEvery developer will need to routinely run {{yarn upgrade}} after pulling the latest from git. We should document this in the readme and an email to all active committers would be appropriate.\r\n\r\nAlso, I've seen the {{yarn.lock}} file be updated after doing {{yarn upgrade}}. The updated {{yarn.lock}} will be updated with any newly resolved versions, so we should probably instruct to use {{yarn upgrade \\-\\-frozen\\-lockfile}}.", "updateAuthor": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "created": "2017-04-18T20:06:28.000+0000", "updated": "2017-04-18T20:10:57.000+0000" }, { "id": "417659", "author": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "body": "[~cb1kenobi] Is there a particular reason we'd need to regularly run {{yarn upgrade}} after checkouts? Doesn't that make yarn attempt to upgrade all packages to the latest version within the semversion specs (and as a result also update {{yarn.lock}})? Wouldn't we instead want devs to run {{yarn install}} to grab the matching dependencies from the lock file when it's been updated?\r\n\r\nI would assume we'd prefer to run {{yarn upgrade}} as a way to update our existing dependencies to the latest as a step near fork/release time just so we're not falling behind (and that we'd have to test/validate the upgrades). In other words, upgrade would be an intentional step in a PR that was tested/reviewed and would be meant to update the lock file.", "updateAuthor": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "created": "2017-04-19T14:17:16.000+0000", "updated": "2017-04-19T14:17:16.000+0000" }, { "id": "417665", "author": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "body": "I've only been running {{yarn upgrade}} as habit from running {{npm upgrade}}. If {{yarn install}} does the trick, then that's cool.\r\n\r\nEveryone will need to run {{yarn install}} after pulling the latest from whichever branch just in case the {{yarn.lock}} file changed. This will require an internet connection. These 2 reasons are why {{node_modules}} is in the {{titanium_mobile}} repo. I guarantee you someone will not remember to run {{yarn install}} and complain things aren't working all because of an out of date dependency.", "updateAuthor": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "created": "2017-04-19T14:53:31.000+0000", "updated": "2017-04-19T14:53:31.000+0000" }, { "id": "417741", "author": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "body": "Just to confirm, you are correct, we should run {{yarn install}}, not {{yarn upgrade}}.", "updateAuthor": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "created": "2017-04-20T03:05:08.000+0000", "updated": "2017-04-20T03:05:08.000+0000" }, { "id": "420823", "author": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "body": "So, npm 5 just came out. Basically eliminates the need to use yarn and yarn.lock. Ugh, re-purposing this ticket to move to npm5 and package-lock.json file.", "updateAuthor": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "created": "2017-06-02T15:27:19.000+0000", "updated": "2017-06-02T15:27:19.000+0000" }, { "id": "427385", "author": { "name": "amukherjee", "key": "amukherjee", "displayName": "Abir Mukherjee", "active": true, "timeZone": "America/Los_Angeles" }, "body": "PR was merged. Closing ticket as changes are seen in the latest SDK's", "updateAuthor": { "name": "amukherjee", "key": "amukherjee", "displayName": "Abir Mukherjee", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-08-29T22:54:28.000+0000", "updated": "2017-08-29T22:54:28.000+0000" } ], "maxResults": 7, "total": 7, "startAt": 0 } } }