7 ms·
Uv 0.12.0
- woodruffw 2mo agoThis is our first breaking release since March. We’re happy to answer any questions folks have about it.
- Lucasoato 2mo agoHas anything changed in your day by day work since OpenAI acquisition?
- woodruffw 2mo agoFor me, honestly not much.
- deleted 2mo ago[deleted]
- brcmthrowaway 2mo agoCan you stop the --break-system-packages madness?
- woodruffw 2mo agoWDYM by madness? I know what the flag is (and what it does), but people have strong opinions in opposite directions about what Python packaging should do around system environments.
- zanie 2mo agoI think we're doing what we should making isolated environments easy to use. I don't think we should take options away from people that need them.
- hallvard 2mo agoWhy (keep) the `uv pip` interface?
- woodruffw 2mo agoIt’s widely used, and there are still a lot of workflows that we hear about from users where they want/need to manually twiddle environments rather than having the “declarative” layer do it for them.
- zanie 2mo agoWe have the interface because we care a lot about meeting people where they are. We keep the interface because we care a lot about long-term support and compatibility. I cannot imagine removing it. We generally want to add features to the top-level interface such that people don't need or want to use the pip-interface because the top-level interface does everything you need, but better.
- hallvard 2mo agoFair points; the reason for asking is that it seems counterintuitive from the outside perspective for you to maintain/extend the pip interface as well? And of course that some colleagues of mine insist on using `uv pip` for anything and everything, which feels wrong… Granted it’s a great feature which made the transition to uv smooth in the first place.
- zanie 2mo agoSo far the maintenance burden has been quite bearable and extending pip provides us with an opportunity to explore and encourage improvements upstream which are still beneficial to a lot of people.
- nvme0n1p1 2mo agoLaudable goals. Have you considered gating imperative commands behind a setting, maybe `tool.uv.pip.unreproducible = true` or somesuch? This would gently guide people towards better workflows, and also be a starting point for documenting the drawbacks of `uv pip` since it's a setting they'd be forced to add and presumably they'll read the docs for it first. uv already does something similar with `tool.uv.pip.break-system-packages`.
- _diyar 2mo agoMaybe a naive question, but any goal / progress towards an ”it just works” cuda installation? Currently, the only times i feel like i‘m stumbling over an install with uv is when pytorch / cuda is involved.
- zanie 2mo agoYes! We've been working on this for quite some time as it's one of the worst experiences in Python packaging today. There are two PEPs that we're involved with that will provide the components for the ecosystem to properly declare metadata in this domain [1] [2]. We're also working on some features in uv, such as the torch backend option [3], to improve the situation in the interim. We'll be announcing more in this area in the near future! [1] https://peps.python.org/pep-0817/ https://peps.python.org/pep-0817/ [2] https://peps.python.org/pep-0825/ https://peps.python.org/pep-0825/ [3] https://docs.astral.sh/uv/guides/integration/pytorch/#automatic-backend-selection https://docs.astral.sh/uv/guides/integration/pytorch/#automa...
- carsmain 2mo ago[dead]
- helltone 2mo agoHow do you think of uv vs pixi? Follow up: has anyone suggested the projects collaborate or eventually converge?
- zanie 2mo agoPixi is very focused on the Conda ecosystem and implements a sort of bridge across the Conda and PyPI ecosystems. I am very interested in solving the problems that motivated creation of the Conda ecosystem, but I want to do so by driving forward the PyPI ecosystem so those use-cases can be addressed in _many_ tools instead of just one. This is the main reason you don't see us pursuing Conda package support in uv directly (in the style of Pixi). There have been several threads about us collaborating or converging, but there are no concrete plans to do so at this time. We share some Rust crates, e.g., Pixi uses our internals to solve the PyPI-side of their dependencies, and we occasionally fix or change things for each other.
- fishgoesblub 2mo agoBit surprised, and disappointed to not see dynamic field support for the uv build backend in this update. Need it for dynamically getting the version from Git. Is there anything blocking it, or is it just not important enough?
- zanie 2mo agoUnfortunately dynamic metadata is not efficient for package resolution, so we don't want to encourage it. Instead, we want to design a better workflow for using source control for versioning, but haven't had the time to do so.
- fishgoesblub 2mo agoInteresting, a better way of doing versioning would be nice. The tool I use requires a git repo setup with at least 1 commit, annoying for brand new projects. I'll be eagerly waiting to see it eventually.
- Induane 2mo agoAt what point is that the case? When a package is built, it's version is determined at that moment from whatever dynamic source, and is then written into the metadata in a static way (or surely could be if for some weird reason it isn't).
- simonw 2mo agoWhat's blocking a 1.0 release at this point?
- notatallshaw 2mo agoOr an obscure CalVer that no one realizes - /pip-maintainer
- simonw 2mo agoThe thing where "uv init" now adds this to pyproject.toml is a bit surprising: [project.scripts] demo-latest = "demo_latest:main" What's the rationale for that? My expectation is that few projects would need it. (I have a GitHub repo that captures differences between uv versions, here's today's upgrade: https://github.com/simonw/uv-init-demos/commit/9111a2bb85741f034eee2fd63efe13ef98b37a14#diff-e036881d034aedd813010ffa96464995ae5b0339213d6f4ab492f97442c5bdd4 https://github.com/simonw/uv-init-demos/commit/9111a2bb85741...)
- uvvuajd 2mo ago[flagged]
- pytorch_app4 2mo ago[flagged]
- carsmain 2mo agoDo you have any plans to support pip download?
- deleted 2mo ago[deleted]
- nomel 2mo agoRelated, offline/air-gapped support, which is what prevents me from using it.
- zanie 2mo agoWe want to support that workflow / experience but we want to design it differently because there are a lot of nuances to pip's interface and the pip maintainers have encouraged us to rethink it. It's also non-trivial to implement because of how our cache design differs from pip's.
- yablak 2mo agothoughts on worm safety w.r.t. `exclude-newer`, and the right way to handle unpinned git repo deps?
- analognoise 2mo ago[flagged]
- drzhouq 2mo agoWhen can uv install gdal?
- deleted 2mo ago[deleted]
- XorNot 2mo agoAre we likely to get an "uv upgrade" command that makes sense sometime? It's still very obtuse how to get uv to just try and make all my dependencies the highest version possible.
- peterdsharpe 2mo ago`uv sync --upgrade`? It's in the docs
- zanie 2mo agoYes! It's in progress — it's already there, just hidden as we iterate on it. (but as a note, the initial `uv lock` will already attempt to choose the highest possible versions and `uv lock --upgrade` will do so again, requests for `uv upgrade` are generally centered around changing the constraints in the `pyproject.toml`)
- XorNot 2mo agoYeah the constraints in pyproject is exactly the issue I'm thinking of.
- drcongo 2mo agoStill no `uv show` and still no homepage link in `uv pip show`. I love uv, but man the ux needs some work.