hyperstack-org / hyperstack-org/hyperstack
Can't deploy to Heroku and other places
- Lingua principale
- JavaScript
- Stelle
- 538
- Fork
- 41
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
Problem is that webpacker enhances `rake assets:precompile` to build the assets first, then builds the packs.
This doesn't work as Hyperstack references the packs from the application.js (via the `hyperstack-loader.js` file.) So the application.js file will not reference the packs.
The solution is to build the packs first, by adding the following lines the Rakefile in the application root directory:
```ruby
puts "Warning: Hyperstack is running yarn install and webpacker:compile BEFORE assets:precompile"
# determine if we should use built in yarn:install or use webpacker:yarn_install
yarn_installer = (Rails::VERSION::MAJOR == 5 && Rails::VERSION::MINOR == 0) ? 'webpacker:yarn_install' : 'yarn:install'
# install yarn and compile packs BEFORE assets:precompile
Rake::Task["assets:precompile"].enhance([yarn_installer, 'webpacker:compile'])
```
> Note: If you are patching an existing system, and you are already on Rails 5.1 or newer you can simplify the above to a single line: `Rake::Task["assets:precompile"].enhance(['yarn:install', 'webpacker:compile'])`
The above should be added to the hyperstack-rails configuration script (if webpack is being installed.)
Because there might be unknown side effects to this, this should be done as a patch (i.e. like the above) rather than sticking it a rake file in the hyperstack-rails lib directory for example.
https://github.com/rails/webpacker/issues/2237 has been raised on the rails webpacker gem. Hopefully the Rails team can accept this reversal in ordering, in which case the whole problem goes away.
Guida per i contributori
Apri la guida per i contributori
Valutazione
Questa issue non è ancora stata valutata.