One version package to rule them all, One version package to find them, One version package to bring them all, and in the darkness bind them.

Overview

AwesomeVersion

codecov python version dependencies PyPI Actions

One version package to rule them all, One version package to find them, One version package to bring them all, and in the darkness bind them.

Make anything a version object, and compare against a vast section of other version formats.

Installation

python3 -m pip install awesomeversion

Example usage

These are some examples of what you can do, more examples can be found in the tests directory.

from awesomeversion import AwesomeVersion

current = AwesomeVersion("1.2.2")
upstream = AwesomeVersion("1.2.3")

print(upstream > current)
> True
from awesomeversion import AwesomeVersion

version = AwesomeVersion("1.2.3b0")

print(version.beta)
> True
from awesomeversion import AwesomeVersion

current = AwesomeVersion("2021.1.0")
upstream = AwesomeVersion("2021.1.0b2")

print(upstream > current)
> False
from awesomeversion import AwesomeVersion

current = AwesomeVersion("latest")
upstream = AwesomeVersion("2021.1.0")

print(upstream > current)
> False
from awesomeversion import AwesomeVersion

current = AwesomeVersion("latest")
upstream = AwesomeVersion("dev")

print(upstream > current)
> True
from awesomeversion import AwesomeVersion

with AwesomeVersion("20.12.0") as current:
    with AwesomeVersion("20.12.1") as upstream:
        print(upstream > current)
> True
from awesomeversion import AwesomeVersion

with AwesomeVersion("20.12.0") as current:
    print("2020.12.1" > current)
> True

Contribute

All contributions are welcome!

  1. Fork the repository
  2. Clone the repository locally and open the devcontainer or use GitHub codespaces
  3. Do your changes
  4. Lint the files with make black
  5. Ensure all tests passes with make test
  6. Ensure 100% coverage with make coverage
  7. Commit your work, and push it to GitHub
  8. Create a PR against the main branch
Comments
  • Bump black from 21.12b0 to 22.1.0

    Bump black from 21.12b0 to 22.1.0

    Bumps black from 21.12b0 to 22.1.0.

    Release notes

    Sourced from black's releases.

    22.1.0

    At long last, Black is no longer a beta product! This is the first non-beta release and the first release covered by our new stability policy.

    Highlights

    • Remove Python 2 support (#2740)
    • Introduce the --preview flag (#2752)

    Style

    • Deprecate --experimental-string-processing and move the functionality under --preview (#2789)
    • For stubs, one blank line between class attributes and methods is now kept if there's at least one pre-existing blank line (#2736)
    • Black now normalizes string prefix order (#2297)
    • Remove spaces around power operators if both operands are simple (#2726)
    • Work around bug that causes unstable formatting in some cases in the presence of the magic trailing comma (#2807)
    • Use parentheses for attribute access on decimal float and int literals (#2799)
    • Don't add whitespace for attribute access on hexadecimal, binary, octal, and complex literals (#2799)
    • Treat blank lines in stubs the same inside top-level if statements (#2820)
    • Fix unstable formatting with semicolons and arithmetic expressions (#2817)
    • Fix unstable formatting around magic trailing comma (#2572)

    Parser

    • Fix mapping cases that contain as-expressions, like case {"key": 1 | 2 as password} (#2686)
    • Fix cases that contain multiple top-level as-expressions, like case 1 as a, 2 as b (#2716)
    • Fix call patterns that contain as-expressions with keyword arguments, like case Foo(bar=baz as quux) (#2749)
    • Tuple unpacking on return and yield constructs now implies 3.8+ (#2700)
    • Unparenthesized tuples on annotated assignments (e.g values: Tuple[int, ...] = 1, 2, 3) now implies 3.8+ (#2708)
    • Fix handling of standalone match() or case() when there is a trailing newline or a comment inside of the parentheses. (#2760)
    • from __future__ import annotations statement now implies Python 3.7+ (#2690)

    Performance

    • Speed-up the new backtracking parser about 4X in general (enabled when --target-version is set to 3.10 and higher). (#2728)
    • Black is now compiled with mypyc for an overall 2x speed-up. 64-bit Windows, MacOS, and Linux (not including musl) are supported. (#1009, #2431)

    Configuration

    • Do not accept bare carriage return line endings in pyproject.toml (#2408)
    • Add configuration option (python-cell-magics) to format cells with custom magics in Jupyter Notebooks (#2744)
    • Allow setting custom cache directory on all platforms with environment variable BLACK_CACHE_DIR (#2739).
    • Enable Python 3.10+ by default, without any extra need to specify --target-version=py310. (#2758)
    • Make passing SRC or --code mandatory and mutually exclusive (#2804)

    Output

    • Improve error message for invalid regular expression (#2678)
    • Improve error message when parsing fails during AST safety check by embedding the underlying SyntaxError (#2693)
    • No longer color diff headers white as it's unreadable in light themed terminals (#2691)
    • Text coloring added in the final statistics (#2712)
    • Verbose mode also now describes how a project root was discovered and which paths will be formatted. (#2526)

    Packaging

    • All upper version bounds on dependencies have been removed (#2718)
    • typing-extensions is no longer a required dependency in Python 3.10+ (#2772)
    • Set click lower bound to 8.0.0 as Black crashes on 7.1.2 (#2791)

    ... (truncated)

    Changelog

    Sourced from black's changelog.

    22.1.0

    At long last, Black is no longer a beta product! This is the first non-beta release and the first release covered by our new stability policy.

    Highlights

    • Remove Python 2 support (#2740)
    • Introduce the --preview flag (#2752)

    Style

    • Deprecate --experimental-string-processing and move the functionality under --preview (#2789)
    • For stubs, one blank line between class attributes and methods is now kept if there's at least one pre-existing blank line (#2736)
    • Black now normalizes string prefix order (#2297)
    • Remove spaces around power operators if both operands are simple (#2726)
    • Work around bug that causes unstable formatting in some cases in the presence of the magic trailing comma (#2807)
    • Use parentheses for attribute access on decimal float and int literals (#2799)
    • Don't add whitespace for attribute access on hexadecimal, binary, octal, and complex literals (#2799)
    • Treat blank lines in stubs the same inside top-level if statements (#2820)
    • Fix unstable formatting with semicolons and arithmetic expressions (#2817)
    • Fix unstable formatting around magic trailing comma (#2572)

    Parser

    • Fix mapping cases that contain as-expressions, like case {"key": 1 | 2 as password} (#2686)
    • Fix cases that contain multiple top-level as-expressions, like case 1 as a, 2 as b (#2716)
    • Fix call patterns that contain as-expressions with keyword arguments, like case Foo(bar=baz as quux) (#2749)
    • Tuple unpacking on return and yield constructs now implies 3.8+ (#2700)
    • Unparenthesized tuples on annotated assignments (e.g values: Tuple[int, ...] = 1, 2, 3) now implies 3.8+ (#2708)
    • Fix handling of standalone match() or case() when there is a trailing newline or a comment inside of the parentheses. (#2760)
    • from __future__ import annotations statement now implies Python 3.7+ (#2690)

    Performance

    • Speed-up the new backtracking parser about 4X in general (enabled when --target-version is set to 3.10 and higher). (#2728)
    • Black is now compiled with mypyc for an overall 2x speed-up. 64-bit Windows, MacOS, and Linux (not including musl) are supported. (#1009, #2431)

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 4
  • Bump pytest from 6.2.5 to 7.0.1

    Bump pytest from 6.2.5 to 7.0.1

    Bumps pytest from 6.2.5 to 7.0.1.

    Release notes

    Sourced from pytest's releases.

    7.0.1

    pytest 7.0.1 (2022-02-11)

    Bug Fixes

    • #9608: Fix invalid importing of importlib.readers in Python 3.9.
    • #9610: Restore [UnitTestFunction.obj]{.title-ref} to return unbound rather than bound method. Fixes a crash during a failed teardown in unittest TestCases with non-default [__init__]{.title-ref}. Regressed in pytest 7.0.0.
    • #9636: The pythonpath plugin was renamed to python_path. This avoids a conflict with the pytest-pythonpath plugin.
    • #9642: Fix running tests by id with :: in the parametrize portion.
    • #9643: Delay issuing a ~pytest.PytestWarning{.interpreted-text role="class"} about diamond inheritance involving ~pytest.Item{.interpreted-text role="class"} and ~pytest.Collector{.interpreted-text role="class"} so it can be filtered using standard warning filters <warnings>{.interpreted-text role="ref"}.

    7.0.0

    pytest 7.0.0 (2022-02-03)

    (Please see the full set of changes for this release also in the 7.0.0rc1 notes below)

    Deprecations

    • #9488: If custom subclasses of nodes like pytest.Item{.interpreted-text role="class"} override the __init__ method, they should take **kwargs. See uncooperative-constructors-deprecated{.interpreted-text role="ref"} for details.

      Note that a deprection warning is only emitted when there is a conflict in the arguments pytest expected to pass. This deprecation was already part of pytest 7.0.0rc1 but wasn't documented.

    Bug Fixes

    • #9355: Fixed error message prints function decorators when using assert in Python 3.8 and above.
    • #9396: Ensure pytest.Config.inifile{.interpreted-text role="attr"} is available during the pytest_cmdline_main <_pytest.hookspec.pytest_cmdline_main>{.interpreted-text role="func"} hook (regression during 7.0.0rc1).

    Improved Documentation

    • #9404: Added extra documentation on alternatives to common misuses of [pytest.warns(None)]{.title-ref} ahead of its deprecation.
    • #9505: Clarify where the configuration files are located. To avoid confusions documentation mentions that configuration file is located in the root of the repository.

    Trivial/Internal Changes

    • #9521: Add test coverage to assertion rewrite path.

    ... (truncated)

    Commits
    • 3f12087 [pre-commit.ci] auto fixes from pre-commit.com hooks
    • bc3021c Prepare release version 7.0.1
    • 591d476 Merge pull request #9673 from nicoddemus/backport-9511
    • 6ca733e Enable testing with Python 3.11 (#9511)
    • ac37b1b Merge pull request #9671 from nicoddemus/backport-9668
    • c891e40 Merge pull request #9672 from nicoddemus/backport-9669
    • e2753a2 Merge pull request #9669 from hugovk/ci-only-update-plugin-list-for-upstream
    • b5a154c Merge pull request #9668 from hugovk/test-me-latest-3.10
    • 0fae45b Merge pull request #9660 from pytest-dev/backport-9646-to-7.0.x
    • 37d434f [7.0.x] Delay warning about collector/item diamond inheritance
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 3
  • Bump actions/setup-python from 2.3.1 to 2.3.2

    Bump actions/setup-python from 2.3.1 to 2.3.2

    Bumps actions/setup-python from 2.3.1 to 2.3.2.

    Release notes

    Sourced from actions/setup-python's releases.

    Update primary and restore keys for pip

    In scope of this release we include a version of python in restore and primary cache keys for pip. Besides, we add temporary fix for Windows caching issue, that the pip cache dir command returns non zero exit code or writes to stderr. Moreover we updated node-fetch dependency.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies github_actions 
    opened by dependabot[bot] 3
  • Enable strict mypy checks

    Enable strict mypy checks

    Proposed change

    Enable strict mypy checks replaces #53

    Type of change

    • [ ] Dependency upgrade
    • [ ] Bugfix (non-breaking change which fixes an issue)
    • [ ] New feature (which adds functionalit)
    • [ ] Breaking change (fix/feature causing existing functionality to break)
    • [x] Code quality improvements to existing code or addition of tests

    Additional information

    • This PR fixes or closes issue: fixes #
    • This PR is related to issue:
    • Link to documentation pull request:

    Checklist

    • [x] The code change is tested and works locally.
    • [x] Local tests pass.
    • [x] There is no commented out code in this PR.
    • [x] The code has been formatted using Black (make black)
    • [x] Tests have been added to verify that the new code works.
    opened by ludeeus 3
  • Fix some mypy warnings

    Fix some mypy warnings

    Proposed change

    Even though there are type hints, mypy is not run to check them. I fixed some issue but there are many more, please help me to fix them.

    Also isort wasn't run in CI and it was missing configuration, added that.

    Type of change

    • [ ] Dependency upgrade
    • [ ] Bugfix (non-breaking change which fixes an issue)
    • [ ] New feature (which adds functionalit)
    • [ ] Breaking change (fix/feature causing existing functionality to break)
    • [x] Code quality improvements to existing code or addition of tests

    Additional information

    • This PR fixes or closes issue: fixes #
    • This PR is related to issue:
    • Link to documentation pull request:

    Checklist

    • [x] The code change is tested and works locally.
    • [x] Local tests pass.
    • [ ] There is no commented out code in this PR.
    • [x] The code has been formatted using Black (make black)
    • [x] Tests have been added to verify that the new code works.
    opened by KapJI 3
  • Version is not set in pyproject.toml

    Version is not set in pyproject.toml

    The problem

    Hi! The pyproject.toml of this project declares the version of this project as 0, which is wrong. The correct version of the python project needs to be declared there (see relevant poetry documentation)

    Operating system

    Arch Linux

    Python version

    3.10

    Problem-relevant code

    https://github.com/ludeeus/awesomeversion/blob/736f1fce7a80042124c71100fc4bcdaff6d5543d/pyproject.toml#L21

    Traceback/Error logs

    No response

    Additional information

    If the project's version is not set, sdist tarballs and wheels built from it will have wrong metadata set. This means that other projects will not be able to rely on it without the built package being patched beforehand (they will not be able to use the version information).

    This is problematic in general version resolution as well as in system's packaging.

    bug 
    opened by dvzrv 2
  • Use explicit reexport

    Use explicit reexport

    Proposed change

    This fixes mypy error about implicit reexport:

    Module 'awesomeversion' does not explicitly export attribute 'AwesomeVersion'; implicit reexport disabled
    

    Type of change

    • [ ] Dependency upgrade
    • [ ] Bugfix (non-breaking change which fixes an issue)
    • [ ] New feature (which adds functionalit)
    • [ ] Breaking change (fix/feature causing existing functionality to break)
    • [x] Code quality improvements to existing code or addition of tests

    Additional information

    • This PR fixes or closes issue: fixes #
    • This PR is related to issue:
    • Link to documentation pull request:

    Checklist

    • [x] The code change is tested and works locally.
    • [x] Local tests pass.
    • [x] There is no commented out code in this PR.
    • [x] The code has been formatted using Black (make black)
    • [ ] Tests have been added to verify that the new code works.
    opened by KapJI 2
  • "YYYY.MM.PP.dev20201230" is not marked as dev, and is of type unknown

    The problem

    2021.1.0.dev20201230 should be marked as dev, and should be of type CalVer / SemVer

    Environment

    • Operating system:
    • Python version:

    Problem-relevant code

    from awesomeversion.strategy import AwesomeVersionStrategy
    from awesomeversion import AwesomeVersion
    
    version = AwesomeVersion("2021.1.0.dev20201230")
    assert version.dev
    assert version.strategy != AwesomeVersionStrategy.UNKNOWN
    

    Traceback/Error logs

    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    AssertionError
    

    Additional information

    reproduced 
    opened by ludeeus 2
  • Bump isort from 5.10.1 to 5.11.1

    Bump isort from 5.10.1 to 5.11.1

    Bumps isort from 5.10.1 to 5.11.1.

    Release notes

    Sourced from isort's releases.

    5.11.1

    Changes December 12 2022

    :beetle: Fixes

    5.11.0

    Changes December 12 2022

    :construction_worker: Continuous Integration

    :package: Dependencies

    Changelog

    Sourced from isort's changelog.

    5.11.1 December 12 2022

    5.11.0 December 12 2022

    Commits
    • f8146c5 Merge pull request #2033 from PyCQA/hotfix/5.11.1
    • dd01cfe Hotfix 5.11.1
    • 68f0a25 Merge pull request #2032 from tomaarsen/hotfix/colorama_nameerror
    • c752a6c Only call colorama.init if colorama is available
    • 6525008 Merge pull request #2030 from PyCQA/example/update-formatting-pluging-isort-5...
    • 6c5a36c Bump formatting plugin to 0.1.1
    • 657ed81 Merge pull request #2029 from PyCQA/example/update-formatting-pluging-isort-5...
    • 84e3687 Update isort on formatting pluging to 5.11.0
    • 3e99c22 Merge pull request #2028 from PyCQA/prepare-release-5.11.0
    • 8af078c Upgrade poetry to 1.3.1
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 1
  • Bump setuptools from 65.6.0 to 65.6.3

    Bump setuptools from 65.6.0 to 65.6.3

    Bumps setuptools from 65.6.0 to 65.6.3.

    Changelog

    Sourced from setuptools's changelog.

    v65.6.3

    Misc ^^^^

    • #3709: Fix condition to patch distutils.dist.log to only apply when using distutils from the stdlib.

    v65.6.2

    No significant changes.

    v65.6.1

    Documentation changes ^^^^^^^^^^^^^^^^^^^^^

    • #3689: Documented that distutils.cfg might be ignored unless SETUPTOOLS_USE_DISTUTILS=stdlib.

    Misc ^^^^

    • #3678: Improve clib builds reproducibility by sorting sources -- by :user:danigm
    • #3684: Improved exception/traceback when invalid entry-points are specified.
    • #3690: Fixed logging errors: 'underlying buffer has been detached' (issue #1631).
    • #3693: Merge pypa/[email protected] with compatibility fix for distutils.log.Log.
    • #3695, #3697, #3698, #3699: Changed minor text details (spelling, spaces ...)
    • #3696: Removed unnecessary coding: utf-8 annotations
    • #3704: Fixed temporary build directories interference with auto-discovery.
    Commits
    • 6f7dd7c Bump version: 65.6.2 → 65.6.3
    • 0f513c1 Merge pull request #3709 from abravalheri/issue-3707
    • a4db65f Remove wrong comment
    • 5801753 Add news fragment
    • 4c267c7 Replace condition to patch distutils.dist.log
    • 7049c73 Add simple regression test for logging patches
    • e515641 Bump version: 65.6.1 → 65.6.2
    • bd60014 Minor adjustments in changelog
    • 00f59ef Bump version: 65.6.0 → 65.6.1
    • b0f42b9 Adequate news fragment file names
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 1
  • Bump setuptools from 65.6.0 to 65.6.2

    Bump setuptools from 65.6.0 to 65.6.2

    Bumps setuptools from 65.6.0 to 65.6.2.

    Changelog

    Sourced from setuptools's changelog.

    v65.6.2

    No significant changes.

    v65.6.1

    Documentation changes ^^^^^^^^^^^^^^^^^^^^^

    • #3689: Documented that distutils.cfg might be ignored unless SETUPTOOLS_USE_DISTUTILS=stdlib.

    Misc ^^^^

    • #3678: Improve clib builds reproducibility by sorting sources -- by :user:danigm
    • #3684: Improved exception/traceback when invalid entry-points are specified.
    • #3690: Fixed logging errors: 'underlying buffer has been detached' (issue #1631).
    • #3693: Merge pypa/[email protected] with compatibility fix for distutils.log.Log.
    • #3695, #3697, #3698, #3699: Changed minor text details (spelling, spaces ...)
    • #3696: Removed unnecessary coding: utf-8 annotations
    • #3704: Fixed temporary build directories interference with auto-discovery.
    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 1
  • Bump isort from 5.11.3 to 5.11.4

    Bump isort from 5.11.3 to 5.11.4

    Bumps isort from 5.11.3 to 5.11.4.

    Release notes

    Sourced from isort's releases.

    5.11.4

    Changes

    :package: Dependencies

    Changelog

    Sourced from isort's changelog.

    5.11.4 December 21 2022

    Commits
    • 98390f5 Merge pull request #2059 from PyCQA/version/5.11.4
    • df69a05 Bump version 5.11.4
    • f9add58 Merge pull request #2058 from PyCQA/deps/poetry-1.3.1
    • 36caa91 Bump Poetry 1.3.1
    • 3c2e2d0 Merge pull request #1978 from mgorny/toml-test
    • 45d6abd Remove obsolete toml import from the test suite
    • 3020e0b Merge pull request #2057 from mgorny/poetry-install
    • a6fdbfd Stop installing documentation files to top-level site-packages
    • ff306f8 Fix tag template to match old standard
    • 227c4ae Merge pull request #2052 from hugovk/main
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 0
Releases(22.9.0)
  • 22.9.0(Sep 15, 2022)

    What's Changed

    • Allow and add named sections for CalVer by @ludeeus in https://github.com/ludeeus/awesomeversion/pull/184
    • Add diff method to AwesomeVersion to list out changes between 2 objects by @ludeeus in https://github.com/ludeeus/awesomeversion/pull/185

    Full Changelog: https://github.com/ludeeus/awesomeversion/compare/22.8.0...22.9.0

    Source code(tar.gz)
    Source code(zip)
  • 22.8.0(Aug 18, 2022)

    What's Changed

    • ⚠️ Deprecate positional arguments by @ludeeus in https://github.com/ludeeus/awesomeversion/pull/170
    • Change devcontainer by @ludeeus in https://github.com/ludeeus/awesomeversion/pull/172
    • Do not allow find_first_match without ensure_strategy by @ludeeus in https://github.com/ludeeus/awesomeversion/pull/173
    • Warn instead of raise for missing ensure_strategy by @ludeeus in https://github.com/ludeeus/awesomeversion/pull/174
    • Correct spelling mistakes by @EdwardBetts in https://github.com/ludeeus/awesomeversion/pull/175
    • Handle KeyError by @ludeeus in https://github.com/ludeeus/awesomeversion/pull/178
    • _compare_versions takes AwesomeVersion not str by @ludeeus in https://github.com/ludeeus/awesomeversion/pull/179

    New Contributors

    • @EdwardBetts made their first contribution in https://github.com/ludeeus/awesomeversion/pull/175

    Full Changelog: https://github.com/ludeeus/awesomeversion/compare/22.6.0...22.8.0 Discussion: https://github.com/ludeeus/awesomeversion/discussions/181

    Source code(tar.gz)
    Source code(zip)
  • 22.6.0(Jun 27, 2022)

    What's Changed

    • Handle ValueError for possible blank values when casting to int by @ludeeus in https://github.com/ludeeus/awesomeversion/pull/168
    • Remove deprecated method AwesomeVersion.ensure_strategy by @ludeeus in https://github.com/ludeeus/awesomeversion/pull/169

    Full Changelog: https://github.com/ludeeus/awesomeversion/compare/22.5.2...22.6.0

    Source code(tar.gz)
    Source code(zip)
  • 22.5.2(May 27, 2022)

    What's Changed

    • Add better semver support by @ludeeus in https://github.com/ludeeus/awesomeversion/pull/165

    Full Changelog: https://github.com/ludeeus/awesomeversion/compare/22.5.1...22.5.2

    Source code(tar.gz)
    Source code(zip)
  • 22.5.1(May 11, 2022)

    What's Changed

    • Allow more strategies for major,minor,patch by @ludeeus in https://github.com/ludeeus/awesomeversion/pull/162

    Full Changelog: https://github.com/ludeeus/awesomeversion/compare/22.4.2...22.5.1

    Source code(tar.gz)
    Source code(zip)
  • 22.4.2(Apr 28, 2022)

    What's Changed

    • Removes the special rc_dev handler in favor of the more structured modifier handler by @ludeeus in https://github.com/ludeeus/awesomeversion/pull/159

    Full Changelog: https://github.com/ludeeus/awesomeversion/compare/22.4.1...22.4.2

    Source code(tar.gz)
    Source code(zip)
  • 22.4.1(Apr 27, 2022)

    What's Changed

    • Return early for string match by @ludeeus in https://github.com/ludeeus/awesomeversion/pull/150
    • Do section compare before modifier by @ludeeus in https://github.com/ludeeus/awesomeversion/pull/156
    • Replace release-drafter with native config by @ludeeus in https://github.com/ludeeus/awesomeversion/pull/157

    Full Changelog: https://github.com/ludeeus/awesomeversion/compare/22.4.0...22.4.1

    Source code(tar.gz)
    Source code(zip)
  • 22.4.0(Apr 3, 2022)

    What’s Changed

    • #149 Handle comparing known modifiers @ludeeus
    Development/test dependency updates
    • #137 Bump actions/setup-python from 2.3.2 to 3 @dependabot
    • #138 Bump actions/checkout from 2 to 3 @dependabot
    • #146 Bump black from 22.1.0 to 22.3.0 @dependabot
    • #142 Bump pytest from 7.0.1 to 7.1.1 @dependabot
    • #143 Bump mypy from 0.931 to 0.942 @dependabot
    • #145 Bump pylint from 2.12.2 to 2.13.2 @dependabot
    • #147 Bump pylint from 2.13.2 to 2.13.3 @dependabot
    • #148 Bump pylint from 2.13.3 to 2.13.4 @dependabot

    Full Changelog: https://github.com/ludeeus/awesomeversion/compare/22.2.0...22.4.0

    Source code(tar.gz)
    Source code(zip)
  • 22.2.0(Feb 19, 2022)

    What’s Changed

    Special Note!: Python 3.6 is no longer supported.

    • #125 Remove python 3.6 support @ludeeus
    • #132 Remove python 3.11-dev testing @ludeeus
    • #126 Move to poetry and pyproject @ludeeus
    • #133 Import and use annotations @ludeeus
    • #135 Add .mypy_cache to .gitignore @ludeeus
    Development/test dependency updates
    • #124 Bump mypy from 0.930 to 0.931 @dependabot
    • #127 Bump pre-commit from 2.16.0 to 2.17.0 @dependabot
    • #129 Bump actions/setup-python from 2.3.1 to 2.3.2 @dependabot
    • #131 Bump pytest from 6.2.5 to 7.0.1 @dependabot
    • #134 Bump black from 21.12b0 to 22.1.0 @ludeeus

    Full Changelog: https://github.com/ludeeus/awesomeversion/compare/22.1.0...22.2.0

    Source code(tar.gz)
    Source code(zip)
  • 22.1.0(Jan 8, 2022)

    What’s Changed

    • #122 Add valid property to indicate that the version is not unknown @ludeeus
    • #123 Show the version tried when raising AwesomeVersionCompareException @ludeeus

    Full Changelog: https://github.com/ludeeus/awesomeversion/compare/21.12.0...22.1.0

    Source code(tar.gz)
    Source code(zip)
  • 21.12.0(Dec 24, 2021)

    What’s Changed

    • #118 Create codeql-analysis.yml @ludeeus
    • #119 Add more examples to README @ludeeus
    • #117 General speedup @ludeeus
    Development/test dependency updates
    • #112 Bump actions/setup-python from 2.2.2 to 2.3.1 @dependabot
    • #110 Bump black from 21.10b0 to 21.11b1 @dependabot
    • #111 Bump pylint from 2.11.1 to 2.12.1 @dependabot
    • #113 Bump pre-commit from 2.15.0 to 2.16.0 @dependabot
    • #115 Bump pylint from 2.12.1 to 2.12.2 @dependabot
    • #114 Bump black from 21.11b1 to 21.12b0 @dependabot
    • #116 Bump mypy from 0.910 to 0.920 @dependabot
    • #120 Bump mypy from 0.920 to 0.921 @dependabot
    • #121 Bump mypy from 0.921 to 0.930 @dependabot

    Full Changelog: https://github.com/ludeeus/awesomeversion/compare/21.11.0...21.12.0

    Source code(tar.gz)
    Source code(zip)
  • 21.11.0(Nov 16, 2021)

    What’s Changed

    • #101 Use parametrize in compare hendler tests @ludeeus
    • #102 Bump black from 21.9b0 to 21.10b0 @dependabot
    • #103 Bump isort from 5.9.3 to 5.10.0 @dependabot
    • #104 Bump isort from 5.10.0 to 5.10.1 @dependabot
    • #105 Improve performance by avoiding gt/lt check when versions are equal @bdraco
    • #107 Use Enum values in f strings @ludeeus
    • #106 Add testing for Python 3.11-dev @ludeeus

    Full Changelog: https://github.com/ludeeus/awesomeversion/compare/21.10.1...21.11.0

    Source code(tar.gz)
    Source code(zip)
  • 21.10.1(Oct 22, 2021)

    What’s Changed

    • #100 Fix mix between build and simple strategies @ludeeus

    Full Changelog: https://github.com/ludeeus/awesomeversion/compare/21.10.0...21.10.1

    Source code(tar.gz)
    Source code(zip)
  • 21.10.0(Oct 22, 2021)

    What’s Changed

    • #84 Bump black from 21.7b0 to 21.8b0 @dependabot
    • #83 Bump pre-commit from 2.14.0 to 2.14.1 @dependabot
    • #85 Bump pytest from 6.2.4 to 6.2.5 @dependabot
    • #86 Bump pre-commit from 2.14.1 to 2.15.0 @dependabot
    • #87 Bump black from 21.8b0 to 21.9b0 @dependabot
    • #89 Adjustments for pylint R1714 @ludeeus
    • #88 Bump pylint from 2.10.2 to 2.11.1 @dependabot
    • #90 Bump pytest-cov from 2.12.1 to 3.0.0 @dependabot
    • #91 Use explicit reexport @KapJI
    • #92 Lint test files @ludeeus
    • #93 Rename AwesomeVersionCompare to AwesomeVersionCompareException @ludeeus
    • #95 Fix TypeError when passing "ensure_strategy" @ludeeus
    • #97 Prefer strategies passed with ensure_strategy @ludeeus
    • #98 Add find_first_match argument @ludeeus
    • #99 Add COMPARABLE_STRATEGIES @ludeeus

    Full Changelog: https://github.com/ludeeus/awesomeversion/compare/21.8.1...21.10.0

    Source code(tar.gz)
    Source code(zip)
  • 21.8.1(Aug 24, 2021)

  • 21.8.0(Aug 11, 2021)

    What’s Changed

    • #72 Enable 3.10.0-beta @ludeeus
    • #64 Bump actions/setup-python from 2 to 2.2.2 @dependabot
    • #66 Bump pre-commit from 2.12.1 to 2.13.0 @dependabot
    • #70 Bump black from 21.5b0 to 21.6b0 @dependabot
    • #68 Bump pytest-cov from 2.11.1 to 2.12.1 @dependabot
    • #74 Bump black from 21.6b0 to 21.7b0 @dependabot
    • #77 Fix codecov uploads @ludeeus
    • #76 Enable strict mypy checks @ludeeus
    • #78 Add pylint checks @ludeeus
    • #79 Move regex to utils and match to strategies @ludeeus
    Source code(tar.gz)
    Source code(zip)
  • 21.6.0(Jun 9, 2021)

  • 21.5.0(May 7, 2021)

    What’s Changed

    • #60 Add support for X.X.rcX @ludeeus
    • #59 Bump black from 20.8b1 to 21.5b0 @dependabot
    • #58 Bump pytest from 6.2.2 to 6.2.4 @dependabot
    • #61 Remove Python 3.10 @ludeeus
    • #54 Bump pre-commit from 2.11.1 to 2.12.1 @dependabot
    Source code(tar.gz)
    Source code(zip)
  • 21.4.0(Apr 4, 2021)

    What’s Changed

    • #49 Bump pre-commit from 2.10.1 to 2.11.1 @dependabot
    • #50 Deprecate staticmethod ensure_strategy @ludeeus

    Migration path if you used AwesomeVersion.ensure_strategy before this version:

    Change your code from:

    AwesomeVersion.ensure_strategy("1.0.0", AwesomeVersionStrategy.SEMVER)
    

    To:

    AwesomeVersion("1.0.0", AwesomeVersionStrategy.SEMVER)
    
    Source code(tar.gz)
    Source code(zip)
  • 21.2.3(Feb 24, 2021)

    What’s Changed

    • #45 Bump pre-commit from 2.10.0 to 2.10.1 @dependabot
    • #46 Fix issue with compare SemVer modifier with 10 @ludeeus
    • #47 Fix SemVer modifier compare logic @ludeeus
    Source code(tar.gz)
    Source code(zip)
  • 21.2.2(Feb 4, 2021)

  • 21.2.1(Feb 4, 2021)

  • 21.2.0(Feb 1, 2021)

  • 21.1.8(Jan 30, 2021)

  • 21.1.7(Jan 30, 2021)

  • 21.1.6(Jan 30, 2021)

  • 21.1.5(Jan 29, 2021)

  • 21.1.4(Jan 28, 2021)

    What’s Changed

    • #31 Bump pytest-cov from 2.10.1 to 2.11.1 @dependabot
    • #32 Bump pytest from 6.2.1 to 6.2.2 @dependabot
    • #34 Bump pre-commit from 2.9.3 to 2.10.0 @dependabot
    • #33 Fix issue with comparing with .devXXX modifier @ludeeus
    Source code(tar.gz)
    Source code(zip)
  • 21.1.3(Jan 17, 2021)

  • 21.1.2(Jan 17, 2021)

    What’s Changed

    • #28 Adjust AwesomeVersion to represent the value @pvizeli
      • This changes the string representation of the object, look ad the PR for more details.
    Source code(tar.gz)
    Source code(zip)
Owner
Joakim Sørensen
Trying my best to make things easier for others.
Joakim Sørensen
Fetch Flipkart product details including name, price, MRP and Stock details in general as well as specific to a pincode

Fetch Flipkart product details including name, price, MRP and Stock details in general as well as specific to a pincode

Vishal Das 6 Jul 11, 2022
A zero-dependency Python library for getting the Kubernetes token of a AWS EKS cluster

tokeks A zero-dependency Python library for getting the Kubernetes token of a AWS EKS cluster. No AWS CLI, third-party client or library (boto3, botoc

Chris Karageorgiou Kaneen 6 Nov 04, 2022
An almost dependency-less, synchronous Discord gateway library meant for my personal use

An almost dependency-less, synchronous Discord gateway library meant for my personal use.

h0nda 4 Feb 05, 2022
Aqui está disponível GRATUITAMENTE, um bot de discord feito em python, saiba que, terá que criar seu bot como aplicação, e utilizar seu próprio token, e lembrando, é um bot básico, não se utiliza Cogs nem slash commands nele!

BotDiscordPython Aqui está disponível GRATUITAMENTE, um bot de discord feito em python, saiba que, terá que criar seu bot como aplicação, e utilizar s

Matheus Muguet 4 Feb 05, 2022
Morpheus is a telegram bot that helps to simplify the process of making custom telegram stickers.

😎 Morpheus is a telegram bot that helps to simplify the process of making custom telegram stickers. As you may know, Telegram's official Sti

Abhijith K S 1 Dec 14, 2022
Telegram hack bot [ For Dev ]

Telegram hack bot [ For Dev ]

Alison Parker 1 Jul 04, 2022
Bot for automated buying boxes on Binance

V 1.0 Bot for automated buying boxes on Binance В settings.py выставляем свои COOKIE и свой CSRFTOKEN В settings.py для headers выставляем свои параме

Matvey 3 Jan 18, 2022
Total servers you're in!

Discord-Servercount With this script you can check the amount of servers you are in, along with statistics of how many servers you are owner in and in

Nickyux 1 Feb 12, 2022
A simple and stupid Miinto API wrapper

miinto-api-wrapper Miinto API Wrapper is a simple python wrapper for Miinto API. Miinto is a fashion luxury marketplace. For more information see the

Giuseppe Checchia 3 Jan 09, 2022
SongBot2.0 With Python

SongBot2.0 Host 👨‍💻 Heroku 🚀 Manditary Vars BOT_TOKEN : Get It from @Botfather Special Feature Downloads Songs fastly and less errors as well as 0

Mr.Tanaji 5 Nov 19, 2021
This is a TG Video Compress BoT. Product by BINARY Tech

🌀 Video Compressor Bot Product by BINARY Tech Deploy to Heroku The Hard Way virtualenv -p python3 VENV . ./VENV/bin/activate pip install -r requireme

1 Jan 04, 2022
Converts a text file of songs to a playlist on your Spotify account.

Playlist Converter Convert a text file of songs to a playlist on your Spotify account. Create your playlists faster instead of manually searching for

Priya Aggarwal 18 Dec 21, 2022
Read API docs offline, CLI, supports DevDocs.io compatible JSON files

Read API docs offline, CLI, supports DevDocs.io compatible JSON files

Tero Karvinen 3 Oct 18, 2022
A file-based quote bot written in Python

Let's Write a Python Quote Bot! This repository will get you started with building a quote bot in Python. It's meant to be used along with the Learnin

1 Jan 15, 2022
The Best Multipurpose Discord Bot!

Polsu The Best Multipurpose Discord Bot! • Introduction • Screenshots • Setup • License Introduction Polsu is a Multipurpose Discord Bot. Polsu has a

Polsulpicien 1 Nov 09, 2021
A userbot made for telegram

𝚃𝙷𝙴 𝙼𝙰𝙵𝙸𝙰𝙱𝙾𝚃 This is a userbot made for telegram. I made this userbot with help of all other userbots available in telegram. All credits go

MafiaBotOP 8 Apr 08, 2022
A simple bot that looks for names and cpfs in the vaccination list made available by the government Fortaleza - CE

A simple bot that looks for names and cpfs in the vaccination list made available by the government Fortaleza - CE

Breno Aquino 1 Dec 21, 2021
Info & tools for reverse engineering the M6 smart fitness band

m6-reveng This repo contains information and tools for reverse engineering the $7 M6 smart fitness band. Hardware The SoC (system-on-a-chip) is a Teli

41 Dec 26, 2022
Sends notifications when Pokemon Center products are in stock

Sends notifications when Pokemon Center products are in stock! If you use this for scalping, I will break your kneecaps

2 Jan 20, 2022
A Code that can make your Discord Account 24/7!

Online-Forever Make your Discord Account Online 24/7! A Code written in Python that helps you to keep your account 24/7. The main.py is the main file.

Phantom 556 Dec 29, 2022