Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
==2.13.0
->==3.0.2
Release Notes
python-semver/python-semver (semver)
v3.0.2
Compare Source
=============
:Released: 2023-10-09
:Maintainer:
Bug Fixes
:pr:
418
: Replace :class:~collection.OrderedDict
with :class:dict
.The dict datatype is ordered since Python 3.7. As we do not support
Python 3.6 anymore, it can be considered safe to avoid :class:
~collection.OrderedDict
.Related to :gh:
419
.:pr:
426
: Fix :meth:~semver.version.Version.replace
method to use the derived classof an instance instead of :class:
~semver.version.Version
class.Improved Documentation
:pr:
431
: Clarify version policy for the different semver versions (v2, v3, >v3)and the supported Python versions.
:gh:
432
: Improve external doc links to Python and Pydantic.Features
417
: Amend GitHub Actions to check against MacOS.Trivial/Internal Changes
:pr:
420
: Introduce :py:class:~typing.ClassVar
for some :class:~semver.version.Version
class variables, mainly :data:
~semver.version.Version.NAMES
and some private.:pr:
421
: Insert mypy configuration into :file:pyproject.toml
and removeconfig options from :file:
tox.ini
.v3.0.1
Compare Source
=============
:Released: 2023-06-14
:Maintainer: Tom Schraitle
Bug Fixes
410
: Export functions properly using__all__
in__init__.py
.v3.0.0
Compare Source
=============
:Released: 2023-04-02
:Maintainer: Tom Schraitle
Bug Fixes
:gh:
291
: Disallow negative numbers in VersionInfo argumentsfor
major
,minor
, andpatch
.:gh:
310
: Rework API documentation.Follow a more "semi-manual" attempt and add auto directives
into :file:
docs/api.rst
.:gh:
344
: Allow empty string, a string with a prefix, orNone
as token in
:meth:
~semver.version.Version.bump_build
and:meth:
~semver.version.Version.bump_prerelease
.:gh:
374
: Correct Towncrier's config entries in the :file:pyproject.toml
file.The old entries
[[tool.towncrier.type]]
are deprecated and needto be replaced by
[tool.towncrier.fragment.<TYPE>]
.:pr:
384
: General cleanup, reformat files:did accidentely exclude the semver source code.
Mostly remove some includes/excludes in the black config.
extend-exclude
for flake in :file:`setup.cfg`` and adapt list.skip_install=True
in :file:tox.ini
for black:pr:
393
: Fix command :command:python -m semver
to avoid the error "invalid choice":pr:
396
: Calling :meth:~semver.version.Version.parse
on a derived class will show correct type of derived class.Deprecations
:gh:
169
: Deprecate CLI functions not imported fromsemver.cli
.:gh:
234
: In :file:setup.py
simplified file and removeTox
andClean
classes:gh:
284
: Deprecate the use of :meth:~Version.isvalid
.Rename :meth:
~semver.version.Version.isvalid
to :meth:
~semver.version.Version.is_valid
for consistency reasons with :meth:
~semver.version.Version.is_compatible
.:pr:
290
: For semver 3.0.0-alpha0 deprecated:tox.ini
and :file:.travis.yml
Remove targets py27, py34, py35, and pypy.
Add py38, py39, and nightly (allow to fail)
setup.py
simplified file and removeTox
andClean
classesfrom Travis
:gh:
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 <https://github.com/python-semver/python-semver/discussions/371>
_didn't cast many votes, the majority agreed to remove support for
Python 3.6.
:pr:
402
: Keep :func:semver.compare <semver._deprecated.compare>
.Although it breaks consistency with module level functions, it seems it's
a much needed/used function. It's still unclear if we should deprecate
this function or not (that's why we use :py:exc:
PendingDeprecationWarning
).As we don't have a uniform initializer yet, this function stays in the
:file:
_deprecated.py
file for the time being until we find a better solution. See :gh:258
for details.Features
:gh:
169
: Create semver package and split code among different modules in the packages:semver.py
src/semver/__init__.py
src/semver/cli.py
for all CLI methodssrc/semver/_deprecated.py
for thedeprecated
decorator and other deprecated functionssrc/semver/__main__.py
to allow calling the CLI using :command:python -m semver
src/semver/_types.py
to hold type aliasessrc/semver/version.py
to hold the :class:Version
class (old name :class:VersionInfo
) and its utility functionssrc/semver/__about__.py
for all the metadata variables:gh:
213
: Add typing information:gh:
284
: Implement :meth:~semver.version.Version.is_compatible
to make "is self compatible with X".:gh:
305
: Rename :class:~semver.version.VersionInfo
to :class:~semver.version.Version
but keep an alias for compatibility:pr:
359
: Add optional parameteroptional_minor_and_patch
in :meth:~semver.version.Version.parse
to allow optionalminor and patch parts.
:pr:
362
: Make :meth:~semver.version.Version.match
accept a bare version string as match expression, defaulting to equality testing.:gh:
364
: Enhance :file:pyproject.toml
to make it possible to use the:command:
pyproject-build
command from the build module.For more information, see :ref:
build-semver
.:gh:
365
: Improve :file:pyproject.toml
.A Practical Guide to Setuptools and Pyproject.toml <https://godatadriven.com/blog/a-practical-guide-to-setuptools-and-pyproject-toml/>
_..travis.yml
in :file:MANIFEST.in
(not needed anymore)
tox.ini
tox.ini
against 3.11.0-rc.2
Improved Documentation
:gh:
276
: Document how to create a sublass from :class:~semver.version.VersionInfo
class:gh:
284
: Document deprecation of :meth:~semver.version.Version.isvalid
.:pr:
290
: Several improvements in the documentation::gh:
304
: Several improvements in documentation::gh:
305
: Add note about :class:~semver.version.Version
rename.:gh:
312
: Rework "Usage" section.~semver.version.VersionInfo
to:class:
~semver.version.Version
class:func:
~semver.version.Version.__getitem__
,:func:
~semver.version.Version.__gt__
etc.deprecated and discouraged from using
super
call in :file:semverwithvprefix.py
example:gh:
315
: Improve release procedure text:gh:
335
: Add new section "Converting versions between PyPI and semver" the limitationsand possible use cases to convert from one into the other versioning scheme.
:gh:
340
: Describe how to get version from a file:gh:
343
: Describe combining Pydantic with semver in the "Advanced topic"section.
:gh:
350
: Restructure usage section. Create subdirectory "usage/" and splittedall section into different files.
:gh:
351
: Introduce new topics for::pr:
392
: Fix the example in the documentation for combining semver and pydantic.Trivial/Internal Changes
:gh:
169
: Adapted infrastructure code to the new project layout.setup.py
with :file:setup.cfg
because the :file:setup.cfg
is easier to usedeprecated
to hardcode thesemver
package name in the warning.Increase coverage to 100% for all non-deprecated APIs
:pr:
290
: Add supported Python versions to :command:black
.:gh:
304
: Support PEP-561 :file:py.typed
.According to the mentioned PEP:
"Package maintainers who wish to support type checking
of their code MUST add a marker file named :file:
py.typed
to their package supporting typing."
Add package_data to :file:
setup.cfg
to include this marker in distand whl file.
:gh:
309
: Some (private) functions from the :mod:semver.version
module has been changed.
The following functions got renamed:
semver.version.comparator
got renamed to:func:
semver.version._comparator
as it is only usefulinside the :class:
~semver.version.Version
class.semver.version.cmp
got renamed to:func:
semver.version._cmp
as it is only usefulinside the :class:
~semver.version.Version
class.The following functions got integrated into the
:class:
~semver.version.Version
class:semver.version._nat_cmd
as a classmethodsemver.version.ensure_str
:gh:
313
: Correct :file:tox.ini
forchangelog
entry to skipinstallation for semver. This should speed up the execution
of towncrier.
:gh:
316
: Comparisons of :class:~semver.version.Version
class and othertypes return now a :py:const:
NotImplemented
constant insteadof a :py:exc:
TypeError
exception.The
NotImplemented
_ section of the Python documentation recommendsreturning 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".
.. _NotImplemented: https://docs.python.org/3/library/constants.html#NotImplemented
:gh:
319
: Introduce stages in :file:.travis.yml
The config file contains now two stages: check and test. If
check fails, the test stage won't be executed. This could
speed up things when some checks fails.
:gh:
322
: Switch from Travis CI to GitHub Actions.:gh:
347
: Support Python 3.10 in GitHub Action and other config files.:gh:
378
: Fix some typos in Towncrier configuration:gh:
388
: For pytest, switch to the more modern :mod:importlib
approachas it doesn't require to modify :data:
sys.path
:https://docs.pytest.org/en/7.2.x/explanation/pythonpath.html
:pr:
389
: Add public class variable :data:Version.NAMES <semver.version.Version.NAMES>
.This class variable contains a tuple of strings that contains the names of
all attributes of a Version (like
"major"
,"minor"
etc).In cases we need to have dynamical values, this makes it easier to iterate.
..
Local variables:
coding: utf-8
mode: text
mode: rst
End:
vim: fileencoding=utf-8 filetype=rst :
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Renovate Bot.