Skip to main content

Hatch plugin for CalVer versioning

Project description

hatch-calver

A plugin for hatch to support calendar versioning.

Setup

Add hatch-calver as a build dependency to your project.

[build-system]
requires = [
    "hatchling",
    "hatch-calver",
]
build-backend = "hatchling.build"

Then, set tool.hatch.version.scheme to "calver".

[tool.hatch.version]
scheme = "calver"

Configuring the CalVer scheme

You can optionally set calver-scheme to a dot-separated string of parts specified in the calver scheme specification. It defaults to YYYY.MM.DD.

[tool.hatch.version]
scheme = "calver"
calver-scheme = "YY.MM"

Note that your project's versions should conform to the scheme you specify; otherwise, determining where to put e.g. patch versions will be quite ambiguous.

Usage

You can use Hatch's standard versioning commands.

To update your project's version to the current date, run hatch version release (or hatch version date).

As with the regular versioning scheme, you can chain multiple segment updates. The date part of the version will not be updated unless you explicitly specify it.

The CalVer scheme specified for your project specifies which segment of the PEP 440 "release" segments are automatically determined; for instance, for a YYYY.MM.DD scheme, the 4th field of the release segment will be considered the patch field.

In other words, if you specify YYYY.MM.DD as your scheme, and it's the 16th of September 2024:

Original version Command New version
2024.07.22 hatch version release 2024.09.16
2024.07.22.1 hatch version release 2024.09.16
2024.07.22 hatch version date,a 2024.09.16a0
2021.01.01 hatch version rc 2021.01.01rc0
2024.7.22 hatch version patch 2024.07.22.1

Version history

2024.9.17

  • Initial release

2024.9.26

  • Changed the date/release bump instructions to reset any non-date segments. In other words, a release bump from 2024.07.22.1 no longer results in 2024.09.16.1.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hatch_calver-2024.9.26.tar.gz (6.3 kB view details)

Uploaded Source

Built Distribution

hatch_calver-2024.9.26-py3-none-any.whl (6.2 kB view details)

Uploaded Python 3

File details

Details for the file hatch_calver-2024.9.26.tar.gz.

File metadata

  • Download URL: hatch_calver-2024.9.26.tar.gz
  • Upload date:
  • Size: 6.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for hatch_calver-2024.9.26.tar.gz
Algorithm Hash digest
SHA256 5025e7573b3cb3cb0ded73bdcc15812ddd390c7de2887fc28d0fa0b5a72cd520
MD5 3cb6b4639eb6c3972533c8002f3a9968
BLAKE2b-256 80136072f590f04e26abfecf4eb0c6982a0fdc1e59c911b53aec996cd67ffbb5

See more details on using hashes here.

File details

Details for the file hatch_calver-2024.9.26-py3-none-any.whl.

File metadata

File hashes

Hashes for hatch_calver-2024.9.26-py3-none-any.whl
Algorithm Hash digest
SHA256 192f4f140b11ec3e766fb4950258ebd1d6651ff4ef867f521793ceb5dc882556
MD5 2ee60d41c8f22f36782de2949832b4e9
BLAKE2b-256 287928e5b3a3f0497927e0d5b7667a67f0d036b48097b205969ff003ec83be42

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page