Skip to content

v0.8.0

Choose a tag to compare

@simonvanlierde simonvanlierde released this 13 Oct 00:37

No more personal defaults, citation files for libraries, and libraries tested on every supported Python. Two changes are breaking.

What changes in your project

  • No personal defaults. The GitHub user, author name, email and ORCID iD no longer default to the template author's. Copier asks for them, or reads them from the defaults: in your Copier settings file (see the README).
  • Citation files. library, research and data-pipeline projects get CITATION.cff, .zenodo.json for Zenodo, and a CodeMeta 4.0 codemeta.json.
  • Libraries are tested on every supported Python. A new python_min answer, two minors below python_version by default (after SPEC 0), sets requires-python. CI tests every version from there up.
  • Breaking: data-pipeline drops the vintage_basis column and the per-source encoding key. A source can pin a sha256, and fetch refuses a download that doesn't match it.
  • Security: the Python workflow checks every package against OSV's malware advisories before it runs. The generated README installs golangci-lint with go install, checked against the Go checksum database. Release workflows lose workflow_dispatch.
  • The web service's API docs are off unless API_DOCS is set, CI skips draft pull requests, and VS Code formats TOML with Tombi.

Upgrading from v0.7.1

  1. Run copier update. Your saved answers carry over. A library is asked for python_min.
  2. In a library that added a dependency, pyproject.toml conflicts once at requires-python: take the new floor and keep your dependencies.
  3. In a data-pipeline project, re-run just pipeline.
  4. Scripts that run copier copy --defaults must now pass --data github_user=… --data author_name=… --data author_email=…, or set them in Copier's settings file.

The full list is in CHANGELOG.md.