{"action":"created","issue":{"url":"https://api.github.com/repos/runspired/ember-gestures/issues/48","repository_url":"https://api.github.com/repos/runspired/ember-gestures","labels_url":"https://api.github.com/repos/runspired/ember-gestures/issues/48/labels{/name}","comments_url":"https://api.github.com/repos/runspired/ember-gestures/issues/48/comments","events_url":"https://api.github.com/repos/runspired/ember-gestures/issues/48/events","html_url":"https://github.com/runspired/ember-gestures/pull/48","id":150772517,"number":48,"title":"Work around race condition with concurrent bower installs","user":{"login":"jasonmit","id":3108309,"avatar_url":"https://avatars.githubusercontent.com/u/3108309?v=3","gravatar_id":"","url":"https://api.github.com/users/jasonmit","html_url":"https://github.com/jasonmit","followers_url":"https://api.github.com/users/jasonmit/followers","following_url":"https://api.github.com/users/jasonmit/following{/other_user}","gists_url":"https://api.github.com/users/jasonmit/gists{/gist_id}","starred_url":"https://api.github.com/users/jasonmit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jasonmit/subscriptions","organizations_url":"https://api.github.com/users/jasonmit/orgs","repos_url":"https://api.github.com/users/jasonmit/repos","events_url":"https://api.github.com/users/jasonmit/events{/privacy}","received_events_url":"https://api.github.com/users/jasonmit/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2016-04-25T07:22:46Z","updated_at":"2016-04-25T21:36:37Z","closed_at":"2016-04-25T21:36:35Z","pull_request":{"url":"https://api.github.com/repos/runspired/ember-gestures/pulls/48","html_url":"https://github.com/runspired/ember-gestures/pull/48","diff_url":"https://github.com/runspired/ember-gestures/pull/48.diff","patch_url":"https://github.com/runspired/ember-gestures/pull/48.patch"},"body":"This works around https://github.com/ember-cli/ember-cli/issues/5765\r\n\r\nThe issue is there are concurrent bower installs and the second starts before the first one settles (writes the update to bower.json).  So when the second install happens it uses the previous read bower.json to append to, writing over the initial entry since it wasn't there when it read `bower.json` into memory.\r\n\r\nhttps://github.com/bower/bower/blob/343e6ac8bcb3ad69a90b2e8c37bf71796417f7b8/lib/core/Project.js#L44 `analyse` here reads bower.json and sets `that._json`\r\n\r\nhttps://github.com/bower/bower/blob/343e6ac8bcb3ad69a90b2e8c37bf71796417f7b8/lib/core/Project.js#L111 writes `that._json` which doesn't contain the content of the first bower install\r\n\r\n```\r\n* read\r\n* read (stale)\r\n* write\r\n* write\r\n```\r\n\r\nWhere it should:\r\n\r\n```\r\n* read\r\n* read\r\n* re-read/write\r\n* re-read/write\r\n```\r\n\r\n/cc @EricWalklet since you had issues setting up ember-gestures awhile back.  This was the cause"},"comment":{"url":"https://api.github.com/repos/runspired/ember-gestures/issues/comments/214533071","html_url":"https://github.com/runspired/ember-gestures/pull/48#issuecomment-214533071","issue_url":"https://api.github.com/repos/runspired/ember-gestures/issues/48","id":214533071,"user":{"login":"runspired","id":650309,"avatar_url":"https://avatars.githubusercontent.com/u/650309?v=3","gravatar_id":"","url":"https://api.github.com/users/runspired","html_url":"https://github.com/runspired","followers_url":"https://api.github.com/users/runspired/followers","following_url":"https://api.github.com/users/runspired/following{/other_user}","gists_url":"https://api.github.com/users/runspired/gists{/gist_id}","starred_url":"https://api.github.com/users/runspired/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/runspired/subscriptions","organizations_url":"https://api.github.com/users/runspired/orgs","repos_url":"https://api.github.com/users/runspired/repos","events_url":"https://api.github.com/users/runspired/events{/privacy}","received_events_url":"https://api.github.com/users/runspired/received_events","type":"User","site_admin":false},"created_at":"2016-04-25T21:36:37Z","updated_at":"2016-04-25T21:36:37Z","body":"Thanks!"}}