Communities

Writing
Writing
Codidact Meta
Codidact Meta
The Great Outdoors
The Great Outdoors
Photography & Video
Photography & Video
Scientific Speculation
Scientific Speculation
Cooking
Cooking
Electrical Engineering
Electrical Engineering
Judaism
Judaism
Languages & Linguistics
Languages & Linguistics
Software Development
Software Development
Mathematics
Mathematics
Christianity
Christianity
Code Golf
Code Golf
Music
Music
Physics
Physics
Linux Systems
Linux Systems
Power Users
Power Users
Tabletop RPGs
Tabletop RPGs
Community Proposals
Community Proposals
tag:snake search within a tag
answers:0 unanswered questions
user:xxxx search by author id
score:0.5 posts with 0.5+ score
"snake oil" exact phrase
votes:4 posts with 4+ votes
created:<1w created < 1 week ago
post_type:xxxx type of post
Search help
Notifications
Mark all as read See all your notifications »
Q&A

Welcome to Software Development on Codidact!

Will you help us build our independent community of developers helping developers? We're small and trying to grow. We welcome questions about all aspects of software development, from design to code to QA and more. Got questions? Got answers? Got code you'd like someone to review? Please join us.

Comments on Rails 6.1, unbelievable assets-precompile time for a smallish project

Post

Rails 6.1, unbelievable assets-precompile time for a smallish project

+4
−0

I have an old Ruby on Rails project currently running on Rails 6.1. It isn't very large. I have got the old asset pipeline, 2.7 MB of Javascript in a node_modules folder and 3.7 MB of files in the asset folder.

When I build my Docker image, precompiling assets takes nearly two hours. Yes, two hours. I have no clue why, as the project isn't large. I have larger projects with exactly the same setup where the precompile time is a couple of minutes.

I have found that I can run rake assets:precompile in verbose mode and with a flag DEBUG=1. Neither produces any output worth watching. The first outputs a couple of setting values and then precompiles assets without any feedback. The second only produces a list of files it writes when it finishes.

What could cause this unbelievable build time? Is there any way to debug it? Some place where I could put in statements like puts 'processing xyz' to see which files cause that incredible compile time? Can I just edit the code in /Users/marion/.rvm/gems/ruby-3.2.3/gems/sprockets-rails-3.5.2/lib/sprockets/rails/task.rb? If so, what would be sensible edits?

History

1 comment thread

The culprit: unorganized imports (1 comment)
The culprit: unorganized imports
plain_toast‭ wrote 4 months ago

All right, I asked Claude. I admit it. And it turned out there's no limit to the problems you can cause if you import your scss files without thinking. Essentially Claude (powered by Opus 4.5) found out that I had mismanaged my scss imports to such an extent that the Bootstrap styles got compiled over 10 times in all, resulting in unbelivably large compiled assets and long compile time. My largest compiled CSS file came down from 6.7MB to 273KB...! I leave my question here in case someone else has a similar problem.