{"action":"created","issue":{"url":"https://api.github.com/repos/ember-cli/ember-cli/issues/4546","repository_url":"https://api.github.com/repos/ember-cli/ember-cli","labels_url":"https://api.github.com/repos/ember-cli/ember-cli/issues/4546/labels{/name}","comments_url":"https://api.github.com/repos/ember-cli/ember-cli/issues/4546/comments","events_url":"https://api.github.com/repos/ember-cli/ember-cli/issues/4546/events","html_url":"https://github.com/ember-cli/ember-cli/issues/4546","id":98015061,"number":4546,"title":"[QUEST] Ember CLI Runtime Code Migration to NPM via Addons","user":{"login":"chadhietala","id":183799,"avatar_url":"https://avatars.githubusercontent.com/u/183799?v=3","gravatar_id":"","url":"https://api.github.com/users/chadhietala","html_url":"https://github.com/chadhietala","followers_url":"https://api.github.com/users/chadhietala/followers","following_url":"https://api.github.com/users/chadhietala/following{/other_user}","gists_url":"https://api.github.com/users/chadhietala/gists{/gist_id}","starred_url":"https://api.github.com/users/chadhietala/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chadhietala/subscriptions","organizations_url":"https://api.github.com/users/chadhietala/orgs","repos_url":"https://api.github.com/users/chadhietala/repos","events_url":"https://api.github.com/users/chadhietala/events{/privacy}","received_events_url":"https://api.github.com/users/chadhietala/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/ember-cli/ember-cli/labels/Enhancement","name":"Enhancement","color":"009800"},{"url":"https://api.github.com/repos/ember-cli/ember-cli/labels/Needs%20Dependency%20Fix","name":"Needs Dependency Fix","color":"F40F74"},{"url":"https://api.github.com/repos/ember-cli/ember-cli/labels/Packager","name":"Packager","color":"eeeeee"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":17,"created_at":"2015-07-29T19:45:40Z","updated_at":"2016-10-07T19:49:12Z","closed_at":null,"body":"The following sanctioned Ember Bower components need be migrated to addons and published to NPM. The addons should not use `app.import` to pull in some bower dependency. This is prep work for the [packager](https://github.com/ember-cli/ember-cli/issues/4211), and can be done in parallel.\r\n\r\nThe migration plan is to create addons of the following libraries. For addons like `ember-qunit` all of their code should reside in the addon directory and there are very few cases where code should be in the app directory.  To migrate you will need to PR against the following projects removing `app.imports` to ember code and instead placing that code into the addon directory. This will mean that some projects may be merged or have 2 different published artifacts, one that continues to go to bower and they other that gets published to NPM.\r\n\r\n__Motivation__\r\n\r\nThe motivation behind this is to allow us reason about the dependencies in Ember CLI based applications. A new build process is coming that will help us unlock \"tree shaking\" and Ember features like engines and put us in a much better place. We also didn't have addons when Ember CLI first released so `app.import` was how you brought in 3rd party code. This obviously has changed and now we have a unit we directly depend on out apps.\r\n\r\n- [ ] [Ember](https://github.com/emberjs/ember.js)\r\n  - Someone close to the project will most likely need to do this migration\r\n- [x] [Ember Data](https://github.com/emberjs/data)\r\n  - Someone close to the project will most likely need to do this migration\r\n- [x] [Ember QUnit](https://github.com/rwjblue/ember-qunit)*\r\n- [x] Ember Test Loader https://github.com/ember-cli/ember-cli-test-loader/pull/13\r\n- [x] [Ember Load Initializers](https://github.com/ember-cli/ember-load-initializers)\r\n   - Should come out of the ember addon\r\n- [x] [Ember Resolver](https://github.com/ember-cli/ember-resolver)\r\n   - Should come out of the ember addon\r\n- [x] Loader.js https://github.com/ember-cli/loader.js/pull/48\r\n- [x] [Ember CLI IC-Ajax](https://github.com/rwjblue/ember-cli-ic-ajax)\r\n  - This already pulls everything out of NPM but should place items in addon not the vendor\r\n\r\n\r\n- [ ] ember pending https://github.com/emberjs/ember.js/pull/13022\r\n- [ ] ember-cli-shims pending https://github.com/emberjs/ember.js/pull/13022\r\n- [x] ember-cli-test-loader\r\n- [x] ember-qunit-notifications\r\n*It is unclear what the role of [Ember-CLI-Qunit](https://github.com/ember-cli/ember-cli-qunit) meta package may be\r\n"},"comment":{"url":"https://api.github.com/repos/ember-cli/ember-cli/issues/comments/252345021","html_url":"https://github.com/ember-cli/ember-cli/issues/4546#issuecomment-252345021","issue_url":"https://api.github.com/repos/ember-cli/ember-cli/issues/4546","id":252345021,"user":{"login":"thomblake","id":55923,"avatar_url":"https://avatars.githubusercontent.com/u/55923?v=3","gravatar_id":"","url":"https://api.github.com/users/thomblake","html_url":"https://github.com/thomblake","followers_url":"https://api.github.com/users/thomblake/followers","following_url":"https://api.github.com/users/thomblake/following{/other_user}","gists_url":"https://api.github.com/users/thomblake/gists{/gist_id}","starred_url":"https://api.github.com/users/thomblake/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/thomblake/subscriptions","organizations_url":"https://api.github.com/users/thomblake/orgs","repos_url":"https://api.github.com/users/thomblake/repos","events_url":"https://api.github.com/users/thomblake/events{/privacy}","received_events_url":"https://api.github.com/users/thomblake/received_events","type":"User","site_admin":false},"created_at":"2016-10-07T19:49:11Z","updated_at":"2016-10-07T19:49:11Z","body":"emberjs/ember.js#13022 is merged! 🎉 "}}
{"actor":{"display_login":"thomblake"}}