-
Notifications
You must be signed in to change notification settings - Fork 314
feat: new subcommand to split lockfile #4066
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
base: main
Are you sure you want to change the base?
Conversation
@baszalmstra any suggestion about this pr? |
@baszalmstra there's an unrelated slow IT case timing out. |
Let's also add a test for this feature |
OK |
I don't get the selling point for this feature. The lockfiles cannot be used stand alone and no other tool then pixi can install them due to the Could you explain why this feature will be useful to the users? |
@ruben-arts The rattler lockfiles format is powerful and could be standard lock file in conda ecosystem. It also evolves (conda/rattler#1214) with many new improvements. Stand alone lockfiles can integrate with other conda tools easily and explicitly. pixi and rattler can introduce many fancy features for lockfiles to build packages or run tasks, whereas the exported lean rattler lockfiles can also be loaded by other tools to describe a conda prefix precisely. Some tools are under incubation to utilize the lockfiles, e.g. conda-lockfiles and existing pixi extensions. The source dependencies may less supported by other integrating tools, but all-binary environment can be used first. |
@nichmor the test is added. |
If you are thinking about a common lock file standard, then we are definitely interested. But I don't think we should implement anything before we have a good agreement with other parties how that should look like. |
pr follows the current lock file spec by loading/building/writing lockfiles via functions from rattler, and have no change on the output format. so the output files can be read by the previous listed tools and pixi self. |
Close #4015
This pr implements a new subcommand
pixi workspace export split-lockfile
, which splits thepixi.lock
into a specified base folder. The packages of each environment and platform are written into /{platform}/{environment}.lock. The channels, solve options and pypi indexes of each environment are kept in the output files.