Skip to content

prepare pypi metadata, credit hydra, link docs - #11

Merged
vgreg merged 4 commits into
mainfrom
prepare-pypi-metadata
Aug 22, 2026
Merged

prepare pypi metadata, credit hydra, link docs#11
vgreg merged 4 commits into
mainfrom
prepare-pypi-metadata

Conversation

@vgreg

@vgreg vgreg commented Aug 22, 2026

Copy link
Copy Markdown
Owner

Prepares the package for its first PyPI release and adds attribution to Hydra.

Packaging metadata

  • Add authors, [project.urls] (Homepage, Documentation, Repository, Issues, Changelog), keywords, and classifiers. The PyPI page previously had no author and no sidebar links.
  • Switch license = { text = "MIT" } to the PEP 639 SPDX form license = "MIT" plus license-files = ["LICENSE"]. The metadata now carries License-Expression: MIT, so the deprecated License :: OSI Approved :: MIT License classifier is deliberately omitted (PyPI rejects packages that declare both).
  • Development Status :: 3 - Alpha, matching the not-yet-stable warning in the README.

Version drift fix

bump-my-version only rewrote pyproject.toml, so iolaus.__version__ would have stayed at 0.1.0 forever. Added a second [[tool.bumpversion.files]] entry for src/iolaus/__init__.py.

Housekeeping

  • .DS_Store added to .gitignore and removed from the working tree.
  • CHANGELOG.md gets a real 0.1.0 section (contents checked against the actual implementation) with Keep a Changelog formatting and compare links.

Documentation

  • README links to https://www.vincentgregoire.com/iolaus/, and mkdocs.yml gains the matching site_url.
  • New "Relationship to Hydra" section in both the README and the docs home page, crediting Hydra for the inspiration and stating plainly that Iolaus implements only the subset of its features in day-to-day use. The docs version includes a feature comparison table pointing readers to Hydra when they need config groups, multirun sweeps, structured configs, object instantiation, or launcher plugins.

Verification

  • uv build + twine check pass on both sdist and wheel
  • 15 tests pass, ruff check and mypy --strict clean
  • mkdocs build --strict clean, comparison table renders
  • bump-my-version bump --dry-run patch confirmed to touch both version locations

Trusted Publishing on PyPI is still to be configured, and is not part of this PR.

🤖 Generated with Claude Code

vgreg and others added 4 commits August 22, 2026 11:48
also bump __version__ in src/iolaus/__init__.py alongside pyproject so the
two cannot drift.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
trusted publishing is configured against the release environment, so the job
must declare it. also pin contents: read for checkout now that the permissions
block is job-scoped, and fail early when the pushed tag does not match the
version in pyproject.toml.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@vgreg
vgreg merged commit b996e38 into main Aug 22, 2026
4 checks passed
@vgreg
vgreg deleted the prepare-pypi-metadata branch August 22, 2026 16:12
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