Skip to content

Conversation

@philderbeast
Copy link
Collaborator

Fixes #11381. In draft, an experiment.


  • Patches conform to the coding conventions.
  • Is this a PR that fixes CI? If so, it will need to be backported to older cabal release branches (ask maintainers for directions).

@philderbeast philderbeast marked this pull request as draft January 3, 2026 16:06
@philderbeast philderbeast force-pushed the replace/pip-with-uv branch 8 times, most recently from 0a068fd to 0937ded Compare January 5, 2026 12:37
@ulysses4ever
Copy link
Collaborator

I will unsubsccribe from this for now but feel free to explicitly ping me when you need input. I encourage to first discuss the objective of this in ##11381 though.

@philderbeast philderbeast force-pushed the replace/pip-with-uv branch 5 times, most recently from 0b4fd70 to 667aa30 Compare January 5, 2026 18:20
@philderbeast
Copy link
Collaborator Author

philderbeast commented Jan 5, 2026

Build times

Comparing the times for ways of building the docs.

  • With uv
$ uv cache clean
Clearing cache at: /home/philderbeast/.cache/uv
Removed 3883 files (72.9MiB)
   
$ time make users-guide --always-make
...
________________________________________________________
Executed in    2.05 secs    fish           external
   usr time    1.99 secs  568.00 micros    1.99 secs
   sys time    0.07 secs   89.00 micros    0.07 secs
  • Currently without a fix for python-3.13
$ time make users-guide --always-make
make -C doc users-guide
make[1]: Entering directory '/home/philderbeast/dev/src/cabalism/cabal/doc'
python3 -m venv ../.python-sphinx-virtualenv
(. ../.python-sphinx-virtualenv/bin/activate)
mkdir -p ../dist-newstyle/doc/users-guide
(. ../.python-sphinx-virtualenv/bin/activate && pip install -r requirements.txt && sphinx-build -n -W --keep-going -E . ../dist-newstyle/doc/users-guide)
ERROR: Could not open requirements file: [Errno 2] No such file or directory: 'requirements.txt'
make[1]: *** [Makefile:40: ../dist-newstyle/doc/users-guide/index.html] Error 1
make[1]: Leaving directory '/home/philderbeast/dev/src/cabalism/cabal/doc'
make: *** [Makefile:287: users-guide] Error 2

________________________________________________________
Executed in    1.33 secs    fish           external
   usr time    1.25 secs   42.11 millis    1.21 secs
   sys time    0.12 secs   12.12 millis    0.11 secs
$ time make users-guide-requirements
...
________________________________________________________
Executed in    2.96 secs    fish           external
   usr time    1.94 secs  912.00 micros    1.94 secs
   sys time    0.23 secs    0.00 micros    0.23 secs

$ time make users-guide --always-make
...
________________________________________________________
Executed in    4.48 secs    fish           external
   usr time    3.91 secs  612.00 micros    3.91 secs
   sys time    0.24 secs   96.00 micros    0.24 secs

@ulysses4ever
Copy link
Collaborator

Rebasing on master should solve the ci issue

- Add packaging dependency
- Use uv with read the docs
- Use only uv sync & uv run
- Remove python|install|requirements
- Remove UV_PROJECT_ENVIRONMENT
- Custom rtd build for html
- uv sync --project doc
- Commit doc/requirements.txt
- Use uvx skjold
- Use uv export for requirements.txt
- Use uv run sphinx-build
- Install uv
- Remove virtual environment
- Add .venv to exclude_patterns
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Could we use uv for building the users guide?

2 participants