-
-
Notifications
You must be signed in to change notification settings - Fork 103
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
Fix snapshots within a nested crate #531
Conversation
I've now pushed a slightly broader change, because I was concerned that not passing any packages would fail to include interior packages.
|
On top of mitsuhiko#531; that needs to merge first. This simplifies that code
@max-sixty It looks like this introduces a regression, which I unfortunately haven't yet been able to reproduce with the MCVE: The regression is that while running This is the console output when running with
And this is with
Running the latter command (i.e. Looks like it now under-counts in certain circumstances, instead of double-counting. 😅 |
Thanks! If there's any way of getting a repo that would be really helpful. I'll try to have a think about what might be going on but I suspect it'll be difficult to manage without a repro. Do you know whether the failure happens when the selected package is the root vs the interior package?
|
I was wrong, it can be reproduced with the MCVE! I had commented out the root package. Once I reset the shared repo to commit
|
Great! Can repro, looking now... |
Fixed! Let me know if that works for you. (separately I'm thinking about how we can have reasonable integration tests — atm I don't think we're compounding that well, given someone could break this and we wouldn't immediately find out, which then makes changes more difficult. I very much appreciate your patience and help fixing this one...) |
if let Some(manifest_path) = manifest_path { | ||
cmd.manifest_path(manifest_path); | ||
} | ||
|
||
// TODO: why do we have this? When do we ever want dependencies here? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For anyone reviewing — all this code is replaced in #536
Very draft — but shows a reasonably scalable way to add integration tests. There are some TODOs at the top. This would help with issues such as mitsuhiko#531
Very draft — but shows a reasonably scalable way to add integration tests. There are some TODOs at the top. This would help with issues such as mitsuhiko#531
This now has a nice integration test with a new integration test approach, in #537 |
It does! 🥳 |
I would like to merge #537 first and add a test, as I'm not sure I've got the logic right here (even though it seems to pass our hand-tests). So removing the review request for the moment |
I merged #537. |
So looking through this I think we need real integration tests here. I find it hard to follow both existing code and the changes here with confidence that nothing regressed. |
Yes agree (re my request to merge #537 first!) I ended up just integrating everything into #532, because it made the code simpler and easier to debug. So going to close this in favor of that. |
Fixes #396