{ "id": "123106", "key": "TIMOB-15858", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "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": [], "resolution": null, "resolutiondate": null, "created": "2013-12-02T20:40:58.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "androidlib", "cb-tooling" ], "versions": [ { "id": "14982", "description": "Release 3.2.0", "name": "Release 3.2.0", "archived": false, "released": true, "releaseDate": "2013-12-19" } ], "issuelinks": [], "assignee": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "updated": "2016-09-02T06:00:35.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": "10202", "name": "Android", "description": "Android Platform" } ], "attachment": [], "flagged": false, "summary": "CLI: Error while cleaning a project after build", "creator": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "subtasks": [], "reporter": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "environment": "Windows 8", "comment": { "comments": [ { "id": "361256", "author": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "updateAuthor": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2015-08-26T13:53:07.000+0000", "updated": "2015-08-26T13:53:07.000+0000" }, { "id": "361257", "author": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "Why not just rimraf the whole {{build}} folder?", "updateAuthor": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2015-08-26T13:55:30.000+0000", "updated": "2015-08-26T13:55:30.000+0000" }, { "id": "361260", "author": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "body": "[~fokkezb] How is rimraf any different than a {{wrench.rmdirSyncRecursive()}}? https://github.com/appcelerator/titanium_mobile/blob/master/cli/commands/clean.js#L126-L130", "updateAuthor": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "created": "2015-08-26T14:32:02.000+0000", "updated": "2015-08-26T14:32:02.000+0000" }, { "id": "361262", "author": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "Well, apparently Isaacs handles this case:\r\nhttps://github.com/isaacs/rimraf/blob/master/rimraf.js#L321", "updateAuthor": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2015-08-26T14:38:38.000+0000", "updated": "2015-08-26T14:39:29.000+0000" }, { "id": "361263", "author": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "body": "Maybe we should just {{exec('rm -rf /path/to/build/dir')}}.", "updateAuthor": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "created": "2015-08-26T14:42:20.000+0000", "updated": "2015-08-26T14:42:20.000+0000" }, { "id": "361267", "author": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "I think rimraf handles cross-platform compat better.", "updateAuthor": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2015-08-26T14:48:41.000+0000", "updated": "2015-08-26T14:48:41.000+0000" }, { "id": "361269", "author": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "body": "Until I hear a solid argument to move away from {{wrench.rmdirSyncRecursive()}} and proof that rimraf actually solves this problem, I'm not going to touch anything which puts this ticket in jeopardy of being resolved won't fix. My guess is rimraf would have the same problem.", "updateAuthor": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "created": "2015-08-26T14:54:50.000+0000", "updated": "2015-08-26T14:54:50.000+0000" }, { "id": "361270", "author": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "As always, it seems you are right and even {{rm -rf}} would fail:\r\n\r\nhttps://github.com/oortcloud/meteorite/issues/235#issuecomment-32572271", "updateAuthor": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2015-08-26T15:01:09.000+0000", "updated": "2015-08-26T15:01:22.000+0000" }, { "id": "361271", "author": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "Haha, ugly workaround:\r\n\r\nhttps://github.com/oortcloud/meteorite/pull/237/files", "updateAuthor": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2015-08-26T15:02:31.000+0000", "updated": "2015-08-26T15:02:31.000+0000" }, { "id": "361272", "author": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "body": "I'm sure it's just a timing thing. I bet if we did a retry with a 250ms pause, it would probably work, but then we would have to make it async instead of sync, which is fine.", "updateAuthor": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "created": "2015-08-26T15:14:44.000+0000", "updated": "2015-08-26T15:14:44.000+0000" } ], "maxResults": 10, "total": 10, "startAt": 0 } } }