Versioning and PyPI Publishing

June 29, 2026 ยท View on GitHub

Version source of truth

The canonical version for the entire monorepo lives in flashdreams/flashdreams/_version.py:

__version__ = "0.1.0"

All other package pyproject.toml files are kept in sync automatically by .github/scripts/sync_version.py, which runs as a pre-commit hook.

How to bump the version

  1. Edit __version__ in flashdreams/flashdreams/_version.py.
  2. Commit. The pre-commit hook updates all integration pyproject.toml files to match.
  3. Push to main. CI builds the wheel and uploads it.

What gets published

Only flashdreams is published to PyPI (pure-Python wheel, py3-none-any). The publish-pypi job in .github/workflows/ci.yml uploads to production PyPI on pushes to main after the CPU and GPU jobs pass.

Integration packages (git-installable)

Integration packages are not published to PyPI. External consumers install them from the git repo:

pip install "flashdreams-wan21 @ git+https://github.com/NVIDIA/flashdreams.git#subdirectory=integrations/wan21"

Or with uv:

uv pip install "flashdreams-wan21 @ git+https://github.com/NVIDIA/flashdreams.git#subdirectory=integrations/wan21"

Package inventory

PackagePublishedVersion
flashdreamsPyPIcanonical (from _version.py)
flashdreams-causal-forcinggit onlysynced
flashdreams-cosmos-predict2git onlysynced
flashdreams-fastvideo-causal-wan22git onlysynced
flashdreams-flashvsrgit onlysynced
flashdreams-hy-worldplaygit onlysynced
flashdreams-lingbotgit onlysynced
flashdreams-omnidreamsgit onlysynced
flashdreams-self-forcinggit onlysynced
flashdreams-wan21git onlysynced
flashdreams-wan22git onlysynced
ludus-renderergit onlyindependent (0.9.0)

CI secrets required

Secret nameWhere to createPurpose
PYPI_API_TOKENhttps://pypi.org/manage/account/token/Upload flashdreams to PyPI

Add secrets in GitHub repo Settings -> Secrets and variables -> Actions.