-
Notifications
You must be signed in to change notification settings - Fork 118
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
More recompilations than expected with variable rules #524
Comments
Thanks! I've pushed a potential fix to HEAD. I'll describe it in detail later (just rushing out), but you might want to retry the original problem you were having. Should fix both tickets. |
Nope, extra recompilations I showed logs for in #519 are still there with this fix applied. |
So the issue that I fixed is that as part of #427 I moved checking whether the output was dirty from before rebuilding the dependencies to after. For normal file rules the two effects are roughly the same. For phony rules, the output is always dirty, so it has changed the order to something counter intuitive. I've fixed that by inserting a fake |
I expect the following program to print "updated" just once, but with shake HEAD (but not with shake-0.15.11) it prints "updated" twice. This problem looks similar to #523 and may be related, but it is about more recompilations than expected, not less.
One suspicious point in this program is the rule for "top", whose content changes depending on the value of the argument
wanted
. I had thought this would be ok because it is a phony target, and thus merely defines an abbreviation. But perhaps I'm not supposed to do this?The text was updated successfully, but these errors were encountered: