Skip to content
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

Compilation regression in nanoc v4.6.2 #1106

Closed
grobie opened this Issue Mar 5, 2017 · 11 comments

Comments

Projects
None yet
4 participants
@grobie
Copy link

grobie commented Mar 5, 2017

Compilation won't finish (in minutes) with v4.6.2. Reverting to v4.6.1 results in the expected fast compilation (Site compiled in 0.34s.).

Steps to reproduce

  1. bundle exec nanoc

Expected behavior

Compile the site in a reasonable time.

Actual behavior

Nothing happens for minutes and I have to manually abort. nanoc uses a 100% of one of my CPU cores.

@ddfreyne

This comment has been minimized.

Copy link
Member

ddfreyne commented Mar 5, 2017

Ah, the room-heating feature!

Do you have reproduction that I can use for debugging this issue? I’m not able to reproduce it locally.

@ddfreyne ddfreyne added this to the 4.6.3 milestone Mar 5, 2017

@elomatreb

This comment has been minimized.

Copy link

elomatreb commented Mar 5, 2017

@Fjan

This comment has been minimized.

Copy link
Contributor

Fjan commented Mar 5, 2017

I see the same issue on two different nanoc sites, but not on a third (although the third one got a bit slower too). The compilation does eventually complete after a long time on the smallest of the two sites, so it's probably not an endless loop.

Putting puts "#{Time.now}\t#{item.identifier}" inside the compile block in the Rules files show all files getting compiled twice in a row, and take several seconds per compile. Not a repo I can share easily, sorry.

@grobie

This comment has been minimized.

Copy link
Author

grobie commented Mar 5, 2017

@ddfreyne

This comment has been minimized.

Copy link
Member

ddfreyne commented Mar 5, 2017

The compile block being called twice for every item rep is expected; this is part of the initial process of recording the compilation rules and paths. Once that process is complete, the actual compilation will start.

What strikes me as odd is that this is supposed to be quite fast (on the nanoc.ws site, the entire process takes about 1s).

@ddfreyne

This comment has been minimized.

Copy link
Member

ddfreyne commented Mar 5, 2017

It seems like I already fixed this on master earlier, because I cannot reproduce this any more for the Promcon web site:

Site compiled in 0.55s.
@ddfreyne

This comment has been minimized.

Copy link
Member

ddfreyne commented Mar 5, 2017

Yeah, looks like this was the culprit: b83ac18.

@ddfreyne

This comment has been minimized.

Copy link
Member

ddfreyne commented Mar 5, 2017

I’ll close this for now, but LMK if this is still a problem!

@ddfreyne ddfreyne closed this Mar 5, 2017

@ddfreyne

This comment has been minimized.

Copy link
Member

ddfreyne commented Mar 5, 2017

This is released in Nanoc 4.6.3.

@grobie

This comment has been minimized.

Copy link
Author

grobie commented Mar 5, 2017

@Fjan

This comment has been minimized.

Copy link
Contributor

Fjan commented Mar 5, 2017

Yep, 4.6.3 fixes this 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.