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
feat: warn on pypi conda clobbering #1353
feat: warn on pypi conda clobbering #1353
Conversation
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.
Nice, LGTM
it's missing a warning for the usecase when we first install pypi and later conda which don't remove the pypi one and we end up with two .dist-info in site-packages |
Conflict it seems! |
Co-authored-by: Tim de Jager <tdejager89@gmail.com>
Nice that you've included benchmarks! Just wondering what the cost is of doing the check as opposed to not doing it :), for these large environments? |
added benchmark in the description! |
} | ||
} | ||
|
||
pub fn clobber_on_instalation( |
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.
Could you describe what it returns? And why this is important.
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.
done
Co-authored-by: Ruben Arts <ruben.arts@hotmail.com> Co-authored-by: Tim de Jager <tdejager89@gmail.com>
pixi will print a warning, if for some reason a conda package was mapped wrong
and we reinstall it again but as a pypi package.
Example:
using this custom mapping https://gist.githubusercontent.com/nichmor/6e0b8965e948536ed278f03aac31feb0/raw/635b0b849b88530a70889c4ef2f861bcb2ecc88e/wrong_mapping.json
and having both mdurl in dependencies and pypi-dependencies
user will see following warning
benchmarks:
with pixi.lock already present and warm cache
for ahash:
for std::HashMap
for std::HashMap with pre-allocated map:
for ahash with pre-allocated map:
so by using ahash and preallocating the map we have a win of 5% performance increase! ⬆️
without clobbering check:
with clobbering check:
we add overhead of 0.100s