./devel/py-versioningit, Use version control tags to discover version numbers

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 3.1.0, Package name: py311-versioningit-3.1.0, Maintainer: pkgsrc-users

versioningit is yet another setuptools plugin for automatically determining
your package's version based on your version control repository's tags.
Unlike others, it allows easy customization of the version format and even
lets you easily override the separate functions used for version
extraction & calculation.


Master sites:

Filesize: 210.075 KB

Version history: (Expand)


CVS history: (Expand)


   2024-04-12 14:14:47 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-versioningit: updated to 3.1.0

v3.1.0 (2024-03-16)
-------------------
- When `git describe` fails to retrieve a tag, the resulting log/error message
  now includes all options passed to the command (based on contribution by
  [@jenshnielsen](https://github.com/jenshnielsen))
- When `hg log` fails to retrieve a tag, the resulting log/error message now
  includes the tag pattern passed to `latesttag()`, if any
   2024-01-16 10:03:12 by Adam Ciarcinski | Files touched by this commit (4) | Package updated
Log message:
py-versioningit: updated to 3.0.0

v3.0.0 (2023-12-13)
-------------------
- Migrated from setuptools to hatch
- Support using the `onbuild` step with Hatch
- **Breaking**: The `build_dir` argument passed to `Versioningit.do_onbuild()`
  and `onbuild` method callables has been changed to an `OnbuildFileProvider`
  ABC

v2.3.0 (2023-11-19)
-------------------
- Always read `.hg_archival.txt` files using UTF-8 encoding
- Added support for using versioningit with [Hatch](https://hatch.pypa.io)

v2.2.1 (2023-09-22)
-------------------
- Raise a `ConfigError` if the selected `tool.versioningit.format` field is not
  a string
- Update tests for pydantic 2.0
- Update tests for Python 3.12
- Support Python 3.12

v2.2.0 (2023-02-11)
-------------------
- The custom setuptools command classes can now be imported directly from the
  `versioningit.cmdclass` module as an alternative to calling
  `get_cmdclasses()`

v2.1.0 (2022-10-25)
-------------------
- Drop support for Python 3.6
- Support Python 3.11
- Use `tomllib` on Python 3.11

v2.0.1 (2022-08-01)
-------------------
- Don't run the `onbuild` step under setuptools' upcoming PEP 660 editable mode
  (contributed by [@abravalheri](https://github.com/abravalheri))

v2.0.0 (2022-06-12)
-------------------
- The `{version}` placeholder in the "basic" `format` step has been \ 
renamed to
  `{base_version}`.  The old name remains usable, but is deprecated.
    - **Breaking**: The `version` argument passed to `Versioningit.do_format()`
      and `format` method callables has been renamed to `base_version`.
- A `{version_tuple}` field, along with the fields available in the `format`
  step, is now available for use in templates in the `write` and `onbuild`
  steps.
    - New step and subtable: "template-fields"
    - **Breaking**: The `version` arguments passed to
      `Versioningit.do_write()`, `Versioningit.do_onbuild()`, `run_onbuild()`,
      and `write` & `onbuild` method callables have been replaced with
      `template_fields` arguments
    - Added a `get_template_fields_from_distribution()` function for use by
      callers of `run_onbuild()`
- `Versioningit.get_version()` now takes optional `write` and `fallback`
  arguments
- The `onbuild` step is no longer run when building from an sdist; the
  configuration therefore no longer needs to be idempotent
- Drop setuptools runtime dependency
    - setuptools is only needed for `get_cmdclasses()`, which should only be
      called in an environment where setuptools is already installed.
- Prevent log messages from being printed twice under recent versions of
  setuptools
- Values supplied for the `require-match` parameters of the `tag2version` and
  `onbuild` steps must now actually be booleans; previously, values of any type
  were accepted and were converted to booleans.
- Added a `Versioningit.run()` method that returns a structure containing all
  intermediate & final values
- "git" method: `{author_date}` and `{committer_date}` are no longer \ 
"clamped"
  to less than or equal to `{build_date}`.  This undocumented behavior was
  based on a misinterpretation of the `SOURCE_DATE_EPOCH` spec, and was even
  applied when `SOURCE_DATE_EPOCH` was not set.
- When resolving entry points, if multiple entry points with the given group &
  name are found, error instead of using the first one returned
   2023-10-28 21:57:26 by Thomas Klausner | Files touched by this commit (516) | Package updated
Log message:
python/wheel.mk: simplify a lot, and switch to 'installer' for installation

This follows the recommended bootstrap method (flit_core, build, installer).

However, installer installs different files than pip, so update PLISTs
for all packages using wheel.mk and bump their PKGREVISIONs.
   2023-03-29 11:34:15 by Thomas Klausner | Files touched by this commit (96)
Log message:
*: use PYTHON_VERSION instead of _PYTHON_VERSION
   2022-05-12 08:07:03 by Thomas Klausner | Files touched by this commit (3)
Log message:
py-versioningit: convert to wheel.mk

Add missing dependencies, add test target and test dependencies.
Mark as not-for-python-2.
   2022-05-11 19:51:43 by Manuel Bouyer | Files touched by this commit (5)
Log message:
Add py-versioningit version 1.1.1

versioningit is yet another setuptools plugin for automatically determining
your package's version based on your version control repository's tags.
Unlike others, it allows easy customization of the version format and even
lets you easily override the separate functions used for version
extraction & calculation.