{"action":"created","issue":{"url":"https://api.github.com/repos/RefugeRestrooms/refugerestrooms/issues/484","repository_url":"https://api.github.com/repos/RefugeRestrooms/refugerestrooms","labels_url":"https://api.github.com/repos/RefugeRestrooms/refugerestrooms/issues/484/labels{/name}","comments_url":"https://api.github.com/repos/RefugeRestrooms/refugerestrooms/issues/484/comments","events_url":"https://api.github.com/repos/RefugeRestrooms/refugerestrooms/issues/484/events","html_url":"https://github.com/RefugeRestrooms/refugerestrooms/pull/484","id":331437063,"node_id":"MDExOlB1bGxSZXF1ZXN0MTk0MTY1ODM3","number":484,"title":"Use webpacker for bundling and transpiling javascript","user":{"login":"stardust66","id":11802391,"node_id":"MDQ6VXNlcjExODAyMzkx","avatar_url":"https://avatars3.githubusercontent.com/u/11802391?v=4","gravatar_id":"","url":"https://api.github.com/users/stardust66","html_url":"https://github.com/stardust66","followers_url":"https://api.github.com/users/stardust66/followers","following_url":"https://api.github.com/users/stardust66/following{/other_user}","gists_url":"https://api.github.com/users/stardust66/gists{/gist_id}","starred_url":"https://api.github.com/users/stardust66/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stardust66/subscriptions","organizations_url":"https://api.github.com/users/stardust66/orgs","repos_url":"https://api.github.com/users/stardust66/repos","events_url":"https://api.github.com/users/stardust66/events{/privacy}","received_events_url":"https://api.github.com/users/stardust66/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":10,"created_at":"2018-06-12T04:55:43Z","updated_at":"2018-06-14T20:48:41Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/RefugeRestrooms/refugerestrooms/pulls/484","html_url":"https://github.com/RefugeRestrooms/refugerestrooms/pull/484","diff_url":"https://github.com/RefugeRestrooms/refugerestrooms/pull/484.diff","patch_url":"https://github.com/RefugeRestrooms/refugerestrooms/pull/484.patch"},"body":"# Context\r\n- Fixes #456. Alternative to #474.\r\n- Convert all coffeescript files to javascript (some contain ES6 features), and bundle and transpile them with [Webpacker](https://github.com/rails/webpacker). Webpacker is a ruby wrapper around the popular javascript bundling tool, webpack.\r\n\r\n<br>\r\n\r\nUse [rails/webpacker](https://github.com/rails/webpacker) instead of sprockets for all javascript files for the following reasons:\r\n  - Enables use of ES6 javascript without the need for `.es6` extensions. For some reason that was the requirement for `sprockets-es6`. (See #474). ES6 is what the web is moving towards. It also allows for cleaner syntax when converting from Coffeescript.\r\n  - Webpacker uses yarn for javascript package management, instead of using gems to wrap javascript libraries (such as `jquery-rails`). This will be more familiar to javascript developers. From here on, adding more javascript libraries is trivial.\r\n\r\nWebpacker effectively decouples the javascript side of things with the ruby on rails side. It brings standard javascript ecosystems to ruby projects. This makes finding contributors for just the javascript side easier.\r\n\r\nCaveats:\r\n- It might seem weird to have two asset management systems, sprockets and webpacker. Though, Webpacker's [README](https://github.com/rails/webpacker#webpacker) does say that the two systems are meant to coexist and that the primary purpose of webpacker is to deal with javascript.\r\n- I couldn't delete the `coffee-rails` gem because I think `active-admin` still needs it.\r\n\r\nI recommend looking at the diffs for individual commits than all of them together. Please ask me questions if you have any.\r\n\r\n# Checklist\r\n\r\n- [ ] CI Passes\r\n- [ ] Deploys to Heroku on test Correctly (Maintainers will handle)\r\n- [ ] Added Documentation (Service and Code when required)"},"comment":{"url":"https://api.github.com/repos/RefugeRestrooms/refugerestrooms/issues/comments/397433428","html_url":"https://github.com/RefugeRestrooms/refugerestrooms/pull/484#issuecomment-397433428","issue_url":"https://api.github.com/repos/RefugeRestrooms/refugerestrooms/issues/484","id":397433428,"node_id":"MDEyOklzc3VlQ29tbWVudDM5NzQzMzQyOA==","user":{"login":"DeeDeeG","id":20157115,"node_id":"MDQ6VXNlcjIwMTU3MTE1","avatar_url":"https://avatars2.githubusercontent.com/u/20157115?v=4","gravatar_id":"","url":"https://api.github.com/users/DeeDeeG","html_url":"https://github.com/DeeDeeG","followers_url":"https://api.github.com/users/DeeDeeG/followers","following_url":"https://api.github.com/users/DeeDeeG/following{/other_user}","gists_url":"https://api.github.com/users/DeeDeeG/gists{/gist_id}","starred_url":"https://api.github.com/users/DeeDeeG/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DeeDeeG/subscriptions","organizations_url":"https://api.github.com/users/DeeDeeG/orgs","repos_url":"https://api.github.com/users/DeeDeeG/repos","events_url":"https://api.github.com/users/DeeDeeG/events{/privacy}","received_events_url":"https://api.github.com/users/DeeDeeG/received_events","type":"User","site_admin":false},"created_at":"2018-06-14T20:48:41Z","updated_at":"2018-06-14T20:48:41Z","author_association":"CONTRIBUTOR","body":"Lots of people over at that issue are saying they needed to run some commands on the Heroku side of things:\r\n\r\nhttps://github.com/rails/webpacker/issues/739#issuecomment-327259829\r\n\r\nOptionally?:\r\n>heroku buildpacks:clear\r\n\r\nThen:\r\n\r\n>heroku buildpacks:add heroku/nodejs\r\n>heroku buildpacks:add heroku/ruby"}}
{"actor":{"display_login":"DeeDeeG"}}