-
Notifications
You must be signed in to change notification settings - Fork 1
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
Export requirements.txt #4
Comments
I was playing around with this a little, using the project in https://github.com/prefix-dev/pixi/tree/main/examples/pypi-source-deps since that seems to cover a lot of ways of specifying pypi dependencies. In that case, the urls that are in pixi lock are not all compatible with
The changes to generate the file are in #5. I've done some testing on that one example project and everything seems to work including
|
Ooh, this is really awesome!!! One desirable property of such a list is for it to be "topologically sorted" meaning that if you install from top to bottom then at each point the dependencies are satisfied. (If your lockfile contains the dependency information then you can store things in alphabetical order and topologically sort them yourself before install.) In contrast, your list looks alphabetically sorted. I guess probably doesn't matter much since most modern tools will sort automatically, but toposort would theoretically allow for a fast offline install. |
Currently I'm just writing them in the order that they are specified in the lockfile packages struct. I poked around the pixi source code a bit, but haven't found if they are doing a topological sort at any point, although it's possible I just didn't stumble across it. I'm not inclined to write a topo sort from scratch, but if there is functionality in rattler or pixi that could be used, I'd be happy to add it. |
@maresb -- Just a heads up that I've submitted a PR to upstream all of the functionality in |
Wonderful!!! |
New issue to track the follow-up discussion from #3
Highlights:
The text was updated successfully, but these errors were encountered: