{"action":"created","issue":{"url":"https://api.github.com/repos/ReadyTalk/gradle-readytalk-js/issues/26","labels_url":"https://api.github.com/repos/ReadyTalk/gradle-readytalk-js/issues/26/labels{/name}","comments_url":"https://api.github.com/repos/ReadyTalk/gradle-readytalk-js/issues/26/comments","events_url":"https://api.github.com/repos/ReadyTalk/gradle-readytalk-js/issues/26/events","html_url":"https://github.com/ReadyTalk/gradle-readytalk-js/issues/26","id":128262113,"number":26,"title":"Refactor to use nvm instead of upstream mooworks plugin","user":{"login":"stormbeta","id":1480818,"avatar_url":"https://avatars.githubusercontent.com/u/1480818?v=3","gravatar_id":"","url":"https://api.github.com/users/stormbeta","html_url":"https://github.com/stormbeta","followers_url":"https://api.github.com/users/stormbeta/followers","following_url":"https://api.github.com/users/stormbeta/following{/other_user}","gists_url":"https://api.github.com/users/stormbeta/gists{/gist_id}","starred_url":"https://api.github.com/users/stormbeta/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stormbeta/subscriptions","organizations_url":"https://api.github.com/users/stormbeta/orgs","repos_url":"https://api.github.com/users/stormbeta/repos","events_url":"https://api.github.com/users/stormbeta/events{/privacy}","received_events_url":"https://api.github.com/users/stormbeta/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/ReadyTalk/gradle-readytalk-js/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2016-01-22T22:32:22Z","updated_at":"2016-01-22T22:45:52Z","closed_at":null,"body":"As nvm is rapidly becoming the de facto version manager for node, the JS plugin should probably make use of it to better align with vanilla node.js development.\r\n\r\n* Use .nvmrc if it's present\r\n* Drop upstream node plugin, and have NodeExec wrap the local node environment directly\r\n* Move even more logic into `nodew`, setting it up as the canonical entry point for NodeExec tasks\r\n* Wrap nvm to have it install to the project instead of the global system\r\n* Inject something into the shell prompt when sourcing `nodew` to make it obvious to the developer their PATH is altered.\r\n\r\nGoing further, it might be interesting to look at adding some of this functionality to the upstream nvm project, in particular having it inject the project-local `node_modules/.bin` into the PATH as part of `nvm use`."},"comment":{"url":"https://api.github.com/repos/ReadyTalk/gradle-readytalk-js/issues/comments/174078205","html_url":"https://github.com/ReadyTalk/gradle-readytalk-js/issues/26#issuecomment-174078205","issue_url":"https://api.github.com/repos/ReadyTalk/gradle-readytalk-js/issues/26","id":174078205,"user":{"login":"joshuawarner32","id":182686,"avatar_url":"https://avatars.githubusercontent.com/u/182686?v=3","gravatar_id":"","url":"https://api.github.com/users/joshuawarner32","html_url":"https://github.com/joshuawarner32","followers_url":"https://api.github.com/users/joshuawarner32/followers","following_url":"https://api.github.com/users/joshuawarner32/following{/other_user}","gists_url":"https://api.github.com/users/joshuawarner32/gists{/gist_id}","starred_url":"https://api.github.com/users/joshuawarner32/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joshuawarner32/subscriptions","organizations_url":"https://api.github.com/users/joshuawarner32/orgs","repos_url":"https://api.github.com/users/joshuawarner32/repos","events_url":"https://api.github.com/users/joshuawarner32/events{/privacy}","received_events_url":"https://api.github.com/users/joshuawarner32/received_events","type":"User","site_admin":false},"created_at":"2016-01-22T22:45:52Z","updated_at":"2016-01-22T22:45:52Z","body":"I have no overall objections.\r\n\r\nA few comments:\r\n\r\n* I'd rather not always install node per-project (at least not by default).  What's the reasoning?\r\n* Don't muck with my shell prompt (even though I'm using fish, and this likely won't affect me anyway)"}}