Skip to content

v0.5.0

Latest

Choose a tag to compare

@jlevy jlevy released this 15 Aug 00:33
019733b

simple-modern-uv v0.5.0 refreshes the reviewed uv toolchain, makes lock validation
portable across machines, and turns new-project, selective-adoption, migration, and
template-update work into explicit coding-agent workflows.

What’s Changed

Features

  • Generated projects now keep project-owned uv policy in uv.toml, require the reviewed
    uv 0.12 minor line, and apply the 14-day dependency cool-off to standard workflows.
  • The portable simple-modern-uv skill now routes agents through four distinct workflows:
    start a project, adopt selected practices, migrate fully, or update a template-managed
    project.
  • Generated README and AGENTS guidance explain how to appoint a coding agent and choose
    selective, core-toolchain, or full template conformance without inventing Copier
    lineage.
  • Template CI now tests the update path from the preceding release, answer overrides,
    three render variants, rendered-document formatting, generated-project behavior, and
    skill integrity.

Fixes

  • CI and publishing use uv sync --locked so stale project metadata fails instead of
    being silently installed from an outdated lock.
  • Make and GitHub Actions select uv.toml explicitly, preventing user- or system-level
    uv settings from leaking into uv.lock.
  • Ruff 0.16 remains scoped to Python with extend-exclude = ["*.md"]; Flowmark retains
    ownership of Markdown formatting and byte-sensitive Markdown fixtures.
  • The uv guard now requires >=0.12.0,<0.13, matching the reviewed and pinned CI
    toolchain.
  • Eligible pins and floors advance to uv 0.12.0, Copier 9.17.0, Flowmark 0.3.2, Ruff
    0.16.1, codespell 2.4.3, Hatchling 1.31.0, setup-uv v9.0.0, and checkout v7.0.1.

Guidelines and Content

  • A frozen v0.5.0 supply-chain manifest records the cutoff, hashes, attestations,
    advisory results, action SHAs, deferrals, and validation gates.
  • The uv research explains relevant changes through 0.12, including the decision to
    retain Hatchling and uv-dynamic-versioning.
  • Changed durable documentation follows the Common Documentation Guidelines, with a
    maintainer index and clearer ownership between current guidance, research, and
    historical records.

Documentation

  • The maintainer runbook now defines the full release sequence: exact source-main CI,
    downstream validation, GitHub Release/tag creation, tag verification, and downstream
    public-tag recording.
  • Agent references document conflict reconciliation, project-specific adaptations,
    legacy UV_NO_CONFIG cleanup, and common failures.
  • Release checks state the GitHub CLI capability they need and the one-release update
    path guaranteed by CI.

Upgrading

  • Install an official uv release in the supported >=0.12.0,<0.13 range before running
    generated-project commands.
    Standalone Astral installations can use uv self update; package-manager
    installations should use their package manager.
  • Run the documented Copier update from a clean branch and review the complete diff.
    Remove obsolete UV_NO_CONFIG workarounds after adopting uv.toml and explicit
    UV_CONFIG_FILE settings.
  • Ruff 0.16 includes Markdown by default.
    The template now excludes *.md; remove that exclusion only when Ruff should
    intentionally format Python fences in Markdown.
  • uv versions older than 0.9.17 may fail while parsing the relative duration "14 days"
    before they can display the required-version message.
    Upgrade uv first.

The final source commit passed all six template-repository CI jobs, including three
rendered variants, rendered-document formatting, and the v0.4.0 update path.
Flowmark PR #69 validated the public
v0.5.0 tag in a customized template-managed project: 463 pytest cases, 133 golden
cases, build and uv audit, and GitHub CI across Python 3.10–3.14 all passed.
The release was additionally gated on the downstream simple-modern-uv-template project,
whose exact main build passed across Python 3.11–3.14 before publication.

Full commit history:
https://github.com/jlevy/simple-modern-uv/compare/v0.4.0 … v0.5.0