-
Notifications
You must be signed in to change notification settings - Fork 847
Fix a case of unnecessary dependency rebuilding #3035 #3039
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
Conversation
The change makes sense to me but it doesn't appear to fix the original issue. Even when I delete |
Including in rc/v1.4.0 makes sense to me, so feel free to merge when ready. |
@sjakobi Ah, good catch! Issue was that this computed info gets stored in a cache. Normally, we'd just bump the version tags. However, when investigating this I noticed that the errors for peeking when both the version tag and format of the contents have changed are rather poor. Decode errors in the contents took priority over tag matching. I've released store-0.4.1, which handles this more gracefully, and encodes the tags at the beginning rather than the end. There was also an encoding change with Map for this store release. If we delayed on updating store version, then this would cause further cache invalidation down the road. Best to avoid this when feasible! |
OOM while building store with GHC-7.10.3: https://travis-ci.org/commercialhaskell/stack/jobs/207616671#L327 Not sure if this needs further investigation in Here, we should probably switch to using the sudo-enabled Travis environment that has 7.5 GB memory instead of 4. (Yes, that environment has caching too now.) |
Looks like the other build failures were caused because they weren't aware of store-0.4.1 yet. |
Works on my machine though! Nice work, @mgsloan! 👍 |
We should make sure the CI works before merging. |
@mgsloan: is the |
@borsboom Not strictly necessary. But if we don't do it now, then the cache for MiniBuildPlan will be invalidated for both this release and next release. It's straightforward to do it that way instead. |
00b1a75
to
32c128a
Compare
I've gone with the more conservative change. Will merge once the tests pass. |
Tests passed, so I merged it. |
See #3035
I think it makes sense to include this in the release candidate, since it's the first version with custom-setup.