Skip to content

Chore: Remove poetry from docs and package build - #367

Merged
iLLiCiTiT merged 2 commits into
developfrom
enhancement/docs-without-poetry
Oct 12, 2026
Merged

iLLiCiTiT merged 2 commits into
developfrom
enhancement/docs-without-poetry

Conversation

@iLLiCiTiT

@iLLiCiTiT iLLiCiTiT commented Oct 12, 2026 •

Copy link
Copy Markdown
Member

Changelog Description

Poetry is no longer used. Documentation is built with plain pip and docs/requirements.txt, and the package is built with setuptools using python -m build.

Additional info

Documentation

  • Added docs/requirements.txt with documentation dependencies (sphinx, revitron theme, pydocstyle and ayon_api runtime dependencies).
  • Sphinx is pinned to >=5.3.0,<7 because revitron_sphinx_theme fails on Sphinx 7+ (it uses the removed style template field). poetry.lock previously pinned Sphinx 5.3.0.
  • The revitron theme is pinned to the same commit that poetry.lock resolved.
  • docs-publish.yml workflow no longer uses abatilo/actions-poetry.
  • docs/*.bat scripts call the tools directly, so they use the currently active environment.

Package build

  • Build backend in pyproject.toml changed from poetry-core to setuptools; all [tool.poetry] sections removed.
  • Removed setup.py. Its metadata was already overridden by [project] in pyproject.toml during the build (setuptools warned install_requires overwritten), and it contained stale dependencies (appdirs).
  • Removed poetry.lock.
  • Dev dependencies (mock, pytest, pydocstyle) moved to a PEP 735 [dependency-groups] table (pip install --group dev, uv sync).
  • python-publish.yml builds with python -m build instead of python setup.py sdist bdist_wheel; README updated accordingly.

I compared a wheel built the old way (setup.py) with the new one: same 38 files and same Requires-Dist. Only the Home-page and Author metadata fields are gone (they came only from setup.py); Author-email and Project-URL: Repository stay.

Testing notes:

  1. Create a clean venv and run pip install -r docs/requirements.txt.
  2. Run sphinx-apidoc -f -e -M -o ./docs/source/ ./ayon_api/ and sphinx-build -M html ./docs/source ./docs/build; the build should succeed.
  3. Run pip install build and python -m build; wheel and sdist should be created in ./dist.
  4. Install the wheel to a clean venv and import ayon_api.
  5. python manage_version.py update --version 1.2.25 should still update pyproject.toml and ayon_api/version.py.

🤖 Generated with Claude Code

iLLiCiTiT and others added 2 commits October 12, 2026 16:56
Install documentation dependencies from docs/requirements.txt with pip
instead of using poetry. Sphinx is pinned below 7 because the revitron
theme does not support newer versions.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Removed poetry configuration, poetry.lock and setup.py. Package metadata
is defined only in pyproject.toml and the package is built with
'python -m build'. Dev dependencies are defined as PEP 735 dependency
group.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@iLLiCiTiT iLLiCiTiT changed the title Docs: Build documentation without poetry Chore: Remove poetry from docs and package build Oct 12, 2026
@iLLiCiTiT
iLLiCiTiT merged commit b990686 into develop Oct 12, 2026
3 checks passed
@iLLiCiTiT
iLLiCiTiT deleted the enhancement/docs-without-poetry branch October 12, 2026 15:18
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.

1 participant