Python package to work with Semantic Versioning (https://semver.org/)
Documentation: https://python-semver.rtfd.io/en/3.0.2/ PyPI: https://pypi.org/project/semver/3.0.2/ Full Changelog: https://github.com/python-semver/python-semver/compare/3.0.1...3.0.2 Full Changelog between last 2 release and 3: https://github.com/python-semver/python-semver/compare/3.0.1...3.0.2
Full Changelog: https://github.com/python-semver/python-semver/compare/3.0.1...3.0.2
Related pr: #413
Documentation: https://python-semver.rtfd.io/en/3.0.1/ PyPI: https://pypi.org/project/semver/3.0.1/ Full Changelog: https://github.com/python-semver/python-semver/compare/3.0.0...3.0.1 Full Changelog between last 2 release and 3: https://github.com/python-semver/python-semver/compare/2.13.0...3.0.1
next_version
by @treee111 in https://github.com/python-semver/python-semver/pull/406
__all__
export. Fix #410 by @Soneji in https://github.com/python-semver/python-semver/pull/411
Full Changelog: https://github.com/python-semver/python-semver/compare/3.0.0...3.0.1
Related pr: #403
Documentation: https://python-semver.rtfd.io/en/3.0.0/ PyPI: https://pypi.org/project/semver/3.0.0/ Full Changelog: https://github.com/python-semver/python-semver/compare/3.0.0-rc.1...3.0.0 Full Changelog between last 2 release and 3: https://github.com/python-semver/python-semver/compare/2.13.0...3.0.0
Related pr: #399
Documentation: https://python-semver.rtfd.io/en/3.0.0-rc.1/ PyPI: https://pypi.org/project/semver/3.0.0rc1/ Full Changelog: https://github.com/python-semver/python-semver/compare/3.0.0-dev.4...3.0.0-rc.1
python -m semver
commands fail with 'error: invalid choice:' by @zanecodes in https://github.com/python-semver/python-semver/pull/393
Apart from the above issues/pull request, for this release there were made some additional changes:
changelog.d
entries and integrate it into CHANGELOGchangelog-semver3-devel.rst
:meth:
consistently for semver.Version
methodsThanks to all! :heart:
Related pr: https://github.com/python-semver/python-semver/issues/385
Released 2022-12-20
Maintainer Tom Schraitle
Documentation: https://python-semver.rtfd.io/en/3.0.0-dev.4/ Full Changelog: https://github.com/python-semver/python-semver/compare/3.0.0-dev.3...3.0.0-dev.4 PyPI: https://pypi.org/project/semver/3.0.0dev4/
[[tool.towncrier.type]]
are deprecated and need to be replaced by [tool.towncrier.fragment.<TYPE>]
.#372: Deprecate support for Python 3.6 Python 3.6 reached its end of life and isn’t supported anymore. At the time of writing (Dec 2022), the lowest version is 3.7.
Although the poll didn’t cast many votes, the majority agree to remove support for Python 3.6.
optional_minor_and_patch
in Version.parse()
to allow optional minor and patch parts.Version.match()
accept a bare version string as match expression, defaulting to equality testing..travis.yml
in MANIFEST.in
(not needed anymore)(in alphabetical order)
Thanks to all! :heart:
Related pr: #315
Released 2022-01-20
Maintainer Tom Schraitle
Documentation: https://python-semver.rtfd.io/en/3.0.0-dev.3/ Full Changelog: https://github.com/python-semver/python-semver/compare/3.0.0-dev.2...3.0.0-dev.3
docs/api.rst
.#312: Rework “Usage” section.
VersionInfo
to Version
class, but keep the old name as aliassemver.
prefix in doctests to make examples shorter__getitem__()
, __gt__()
etc.super()
call in semverwithvprefix.py
example#315: Improve release procedure text
#337: Improve documentation for semver max/min
#309: Some (private) functions from the semver.version
module has been changed.
The following functions got renamed as it is only useful inside the Version class:
semver.version.comparator
got renamed to semver.version._comparator()
semver.version.cmp
got renamed to semver.version._cmp()
The following functions got integrated into the Version
class:
semver.version._nat_cmd
as a class methodsemver.version.ensure_str
#313: Correct tox.ini
for changelog entry to skip installation for semver. This should speed up the execution of towncrier.
#316: Comparisons of Version class and other types return now a NotImplemented
constant instead of a TypeError
exception.
The NotImplemented
section of the Python documentation recommends returning this constant when comparing with __gt__
, __lt__
, and other comparison operators to “to indicate that the operation is not implemented with respect to the other type”.
#319: Introduce stages in .travis.yml
.
#322: Switch from Travis CI to GitHub Actions.
#347: Support Python 3.10 in GitHub Action and other config files.
Start supporting Python 3.10
(in alphabetical order)
Thanks to all! :heart:
Related pr: #307
Released 2020-11-01
Maintainer Tom Schraitle
Documentation: https://python-semver.rtfd.io/en/3.0.0-dev.2/ Full Changelog: https://github.com/python-semver/python-semver/compare/3.0.0-dev.1...3.0.0-dev.2
semver.cli
.semver.py
src/semver/__init__.py
src/semver/cli.py
for all CLI methodssrc/semver/_deprecated.py
for the deprecated
decorator and other deprecated functionssrc/semver/__main__.py
to allow calling the CLI using python -m semver
src/semver/_types.py
to hold type aliasessrc/semver/version.py
to hold the Version
class (old name VersionInfo
) and its utility functionssrc/semver/__about__.py
for all the metadata variablesVersionInfo
to Version
but keep an alias for compatibilityVersion
rename.#169: Adapted infrastructure code to the new project layout.
setup.py
with setup.cfg
because the
setup.cfg
is easier to usedeprecated
to hardcode the semver
package name in the warning.Increase coverage to 100% for all non-deprecated APIs
#304: Support PEP-561 py.typed
.
According to the mentioned PEP:
"Package maintainers who wish to support type checking of their code MUST add a marker file named
py.typed
to their package supporting typing."
Add package_data to setup.cfg
to include this marker in dist and whl file.
(in alphabetical order)
Thanks to all! :heart:
Related pr: #295
Released 2020-10-26
Maintainer Tom Schraitle
Documentation https://python-semver.rtfd.io/en/3.0.0-dev.1/
tox.ini
and .travis.yml
Remove targets py27, py34, py35, and pypy. Add py38, py39, and nightly (allow to fail)setup.py
simplified file and remove Tox and Clean classessetup.py
simplified file and remove Tox
and Clean
classesREADME.rst
, mention maintenance branch maint/v2
.setup.py
. Requires Python >=3.6.* Extract metadata directly from source (affects all the __version__
, __author__
etc. variables)changelog.d/.gitignore
to keep this directorychangelog.d/README.rst
with some descriptionschangelog.d/_template.rst
as Towncrier template[tool.towncrier]
section in pyproject.toml
tox.ini
. Use it like tox -e changelog -- CMD
whereas CMD
is a Towncrier command. The default tox -e changelog
calls Towncrier to create a draft of the changelog file and output it to stdout.changelog.d/README.rst
.VersionInfo
arguments for major
, minor
, and patch
.black
.(in alphabetical order)
Thanks to all! :heart:
Related pr: #295
Released 2020-10-20
Maintainer Tom Schraitle
Documentation https://python-semver.rtfd.io/en/2.13.0
(in alphabetical order)
Thanks to all! :heart:
Related pr: #294
Released 2020-10-19
Maintainer Tom Schraitle
Documentation https://python-semver.rtfd.io/en/2.12.0
n/a
n/a
n/a