Upgrade Guide¶
Upgrading Arvel should feel like upgrading any well-behaved SemVer library: read the release notes, bump the version, run the test suite, and fix what breaks. Because the framework touches routing, the container, providers, and the ORM, give yourself a clean branch and a full pytest run whenever you cross a minor or major boundary — not just a patch.
General steps¶
- Pin the new version in
pyproject.toml(or let your lockfile tool resolve it) and refresh your lockfile if you use one. - Read Release Notes and the CHANGELOG for your target version and everything between your current pin and the new one.
- Sync dependencies (for example with
uv sync --all-extrasin this repo) so optional integrations match the core version. - Run tests — project tests first, then a quick smoke of HTTP, CLI, and any database migrations you maintain.
- Search the codebase for deprecations mentioned in the changelog; replace APIs before they disappear in the next major.
Confirm the resolved package version in your environment:
from importlib import metadata
assert metadata.version("arvel").startswith("0.1.")
Adjust the expected prefix when you target a different release line.
v0.1.0¶
This is the first release — there's nothing to upgrade from. Install Arvel and start building.
If you run into issues, check the CHANGELOG and open a discussion or issue on the repository so we can turn the answer into documentation for the next person.