You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Last I tried this, uv didn't support solving for python versions other
than the running interpreter; now they do (except that dependencies that
don't have wheels need to get built with an actual Python interpreter).
I previously had a GitHub action to build requirements for all Python
versions; it was super fast (<1m) and kinda convenient, it'd just make a
PR. I think I like just having the requirements test do it now though,
now that it's possible to do that way.
Topic: sf-uv
Copy file name to clipboardExpand all lines: README.md
+5-3Lines changed: 5 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -567,7 +567,7 @@ pip install -e .
567
567
568
568
You should then [verify your installation](#verify-your-installation).
569
569
570
-
___Note:___`pip install .` will not install pinned versions of SymForce's dependencies, it'll install any compatible versions. It also won't install all packages required to run all of the SymForce tests and build all of the targets (e.g. building the docs or running the linters). If you want all packages required for that, you should `pip install .[dev]` instead (or one of the other groups of extra requirements in our `setup.py`). If you additionally want pinned versions of our dependencies, which are the exact versions guaranteed by CI to pass all of our tests, you can install them from `pip install -r dev_requirements.txt`.
570
+
___Note:___`pip install .` will not install pinned versions of SymForce's dependencies, it'll install any compatible versions. It also won't install all packages required to run all of the SymForce tests and build all of the targets (e.g. building the docs or running the linters). If you want all packages required for that, you should `pip install .[dev]` instead (or one of the other groups of extra requirements in our `setup.py`). If you additionally want pinned versions of our dependencies, which are the exact versions guaranteed by CI to pass all of our tests, you can install them from `pip install -r requirements_dev_py3<version>.txt`.
571
571
572
572
_Note: Editable installs as root with the system python on Ubuntu (and other Debian derivatives) are broken on `setuptools<64.0.0`. This is a [bug in Debian](https://ffy00.github.io/blog/02-python-debian-and-the-install-locations/), not something in SymForce that we can fix. If this is your situation, either use a virtual environment, upgrade setuptools to a version `>=64.0.0`, or use a different installation method._
573
573
@@ -576,11 +576,13 @@ _Note: Editable installs as root with the system python on Ubuntu (and other Deb
576
576
If you'll be modifying the C++ parts of SymForce, you should build with CMake directly instead - this method will not install
577
577
SymForce into your Python environment, so you'll need to add it to your PYTHONPATH separately.
578
578
579
-
Install python requirements:
579
+
Install dependencies required to build and run SymForce:
580
580
```bash
581
-
pip install -r dev_requirements.txt
581
+
pip install -r requirements_build.txt
582
582
```
583
583
584
+
___Note:___`requirements_build` contains only packages required to build and run symforce, but not everything recommended to develop symforce, like to run the SymForce tests and linters. For that, install the full pinned requirements using `pip install -r requirements_dev_py3<version>.txt` for your Python version.
0 commit comments