-
-
Notifications
You must be signed in to change notification settings - Fork 242
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improper dependency tracking for sass imports #1451
Comments
Ok, first step towards solving my issue : running Suggestion:
|
Hey @Ecco, do you have a copy of your site that I could get hold of? (I believe you'd be able to share a private GitHub repository with me.) |
Yeah, I'm trying to do my homework first and if really I can't find anything I'll ask for your help 😄 What I've found so far: the problem comes from a sass file that has a huge list of dependencies that don't make any sense. Here's a small extract of
I'm trying to figure out where this dependency comes from, so far I haven't found anything intersting. What happens is that if I modify "/en/legal/warranty/index.html", then nanoc think the sass file needs to be rebuilt. And it's kinda big, so it takes a while. Eventually nanoc figures out it built it for nothing because it's identical to the previous one, so it doesn't log an "identical" line, which causes a discrepancy between the "total" line and the actual sum of logged times. |
Ok, I think I found the bug. It's a big hairy one 😄 It happens when nanoc processes an
items.each do |item|
if item.raw_filename And, if I read def depend_on(items)
items.flat_map(&:reps).flat_map(&:raw_path)
items.each(&:raw_filename)
end Long story short, the sass filter creates tons of spurrious, random dependencies. This doesn't yield a bad compilation, but it definitely slows things down an awful lot! |
Thank you for the detective work and the quick fix! A release with this fix in it will be out soon. |
This is now released in Nanoc 4.11.9. |
Steps to reproduce
bundle exec nanoc compile
bundle exec nanoc compile
againExpected behavior
Actual behavior
The text was updated successfully, but these errors were encountered: