Comments (8)
@brenogazzola Thanks for this. I was digging into this last night and adding some paths into assets.rb appears to fix the issues:
Rails.application.config.assets.paths << Rails.root.join("node_modules/photoswipe/src/css/default-skin")
Rails.application.config.assets.paths << Rails.root.join("node_modules/flag-icons")
from jsbundling-rails.
Are you still on sprockets or did you switch to Propshaft? They handle paths in different ways.
from jsbundling-rails.
I'm actually unsure. I'm assuming Sprockets. Any documentation for this? What is Propshaft?, I've not heard anything about it? I thought I had to use Sprockets?
from jsbundling-rails.
Just been looking at the repo for Propshaft and have some questions:
- Is my issue not resolveable with Sprockets? Sprockets came with my Rails app so am wondering why it needs changing.
- How do I add Propshaft to an existing app? The documentation only mentions installation for new apps. Nothing about existing ones.
- Why is this a Sprockets replacement? Why not just update Sprockets?
Just a little bit confused with all this Rails 7 stuff right now as there doesn't appear to be solid documentation for any of it anywhere. It's all well and good for all these fancy features features to come along in new releases but If there are no decent bits of documentation for it then how are people meant to know how to use them?
from jsbundling-rails.
I'm actually unsure. I'm assuming Sprockets. Any documentation for this? What is Propshaft?, I've not heard anything about it? I thought I had to use Sprockets?
- Unless your Gemfile has
gem "propshaft"
in it you are using Sprockets. - Sprockets is the asset pipeline gem for the HTTP/1 era. Propshaft is the asset pipeline gem for the HTTP/2 era.
- We will continue supporting Sprockets for the foreseeable future and Propshaft is still pre-release. So for now it's best if you continue on Sprockets.
Is my issue not resolvable with Sprockets? Sprockets came with my Rails app so am wondering why it needs changing.
It should be. But there are two gems for the assets pipeline (Sprockets and Propshaft) and three bundlers (webpack, esbuild and rollup) so we need more information to figure out what's causing the problem. That is why I asked. By the way, are you still using Webpack or did you change to one of the other two bundlers (esbuild, rollup)?
How do I add Propshaft to an existing app? The documentation only mentions installation for new apps. Nothing about existing ones.
Propshaft is still pre-release. There is no need to migrate if you don't want to. If you do have an interest, I'm currently working on the installation/upgrade guide for existing apps: Add upgrade guide for propshaft #35.
Why is this a Sprockets replacement? Why not just update Sprockets?
Design decisions for Propshaft are based on the fact that browsers and servers support HTTP/2 and we have specialized javascript bundlers like Webpack. These designs decisions were incompatible with how Sprockets does things.
Just a little bit confused with all this Rails 7 stuff right now as there doesn't appear to be solid documentation for any of it anywhere. It's all well and good for all these fancy features features to come along in new releases but If there are no decent bits of documentation for it then how are people meant to know how to use them?
Solid documentation is the result of time and people who are not the maintainers/contributors (like you) trying to adopt the new gems and pointing to us where the problems are. Since Propshaft, jsbudling and the other gems are so new, they haven't had the time or the people needed to develop solid documentation.
from jsbundling-rails.
@brenogazzola All makes sense. Appreciate the comments.
Ok, Yes, I am using Sprockets currently. I have switched away from Webpack and am using jsbundling-rails and cssbundling-rails. I chose esbuild for JS and Sass for CSS.
I'm happy to switch to Propshaft if necessary as it does look to be the future etc.
Anything else you need to know about my setup for now?
from jsbundling-rails.
I created a new project and installed photoswipe, but I just noticed that you posted this in jsbundling but are talking about SCSS files, so I'm unsure if the error is in a CSS file, or in JS file that is importing CSS files. Do you think you can provide a minimal app with just this problem so I can download it, run and see the error happening?
from jsbundling-rails.
Ah. That makes sense. 👍
from jsbundling-rails.
Related Issues (20)
- Minor doc update per console warning HOT 1
- Large size of application.js produced by esbuild HOT 1
- Daily alerts not being delivered HOT 1
- bin/dev: 8: exec: foreman: not found HOT 3
- Could not resolve "@hotwired/turbo-rails" HOT 4
- yarn: not found while deployment by mina HOT 1
- jsbundling-rails: Command build failed, ensure yarn is installed and `yarn build` runs without errors HOT 4
- Question: could we also use jsbundling with npm instead of yarn? HOT 2
- How to confirm that yarn dependencies are installed? HOT 1
- Changing from outputting as application.js to something else
- Assets:precomipile task has to be run twice HOT 8
- Refer asset path inside of javascript file
- JS is compiling/Shows in script tag but doesn't execute HOT 1
- Webpacker migration asset_pack_path in jsbundling-rails
- bin/dev crashes on new app HOT 3
- ActionView::Template::Error (The asset "application.js" is not present in the asset pipeline): HOT 3
- jsbundling 1.2 doesn't compile javascript HOT 2
- bun install fails without .gitattributes file in project root HOT 3
- Allow npm or pnpm to be used as a package manager instead of yarn HOT 5
- bun individual files HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jsbundling-rails.