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/distutils@3e9d47e 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/distutils@3e9d47e 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
SSH-Restricted deploys an SSH compliance rule (AWS Config) with auto-remediation via AWS Lambda if SSH access is public.

SSH-Restricted SSH-Restricted deploys an SSH compliance rule with auto-remediation via AWS Lambda if SSH access is public. SSH-Auto-Restricted checks

Adrian Hornsby 30 Nov 8, 2022
Elkeid HUB - A rule/event processing engine maintained by the Elkeid Team that supports streaming/offline data processing

Elkeid HUB - A rule/event processing engine maintained by the Elkeid Team that supports streaming/offline data processing

Bytedance Inc. 61 Dec 29, 2022
Rock API is an API that allows you to view rocks and find the ratings on them

Rock API The best Rock API What is Rock API? Rock API is an API that allows you to view rocks and find the ratings on them. However, this isn't a regu

Conos 21 Sep 21, 2022
Often discord bots just die, and we hardly find one that is durable

Muitas vezes bots do discord simplesmente morrem, e dificilmente achamos um que seja durável. Então porque não ter um próprio para emergências? Como c

Guilherme Almeida 3 Dec 6, 2022
A Python Script to scan through an Instagram account to find all the followers and followings.

Instagram Followers Scan A Python Script to scan through an Instagram account to find all the followers and followings. You can also get filtered list

Nityasmit Mallick 6 Oct 27, 2022
szrose is an all in one group management bot made for managing your group effectively with some advance security tools & Suit For All Your Needs ❤️

szrose is an all in one group management bot made for managing your group effectively with some advance security tools & Suit For All Your Needs ❤️

szsupunma 93 Jan 7, 2023
OSINT tool to get information from a Github and Gitlab profile and find user's email addresses leaked on commits.

gitrecon OSINT tool to get information from a Github or Gitlab profile and find user's email addresses leaked on commits. ?? How does this work? GitHu

GOΠZO 211 Dec 17, 2022
A quick and dirty script to scan the network, find default credentials on services and post a message to a Slack channel with the results.

A quick and dirty script to scan the network, find default credentials on services and post a message to a Slack channel with the results.

Security Weekly 11 Jun 3, 2022
❄️ Don't waste your money paying for new tokens, once you have used your tokens, clean them up and resell them!

TokenCleaner Don't waste your money paying for new tokens, once you have used your tokens, clean them up and resell them! If you have a very large qua

0xVichy 59 Nov 14, 2022
A pre-attack hacker tool which aims to find out sensitives comments in HTML comment tag and to help on reconnaissance process

Find Out in Comment Find sensetive comment out in HTML ⚈ About This is a pre-attack hacker tool that searches for sensitives words in HTML comments ta

Pablo Emídio S.S 8 Dec 31, 2022
Cloudkeeper is “housekeeping for clouds” - find leaky resources, manage quota limits, detect drift and clean up.

Cloudkeeper Housekeeping for Clouds! Table of contents Overview Docker based quick start Cloning this repository Component list Contact License Overvi

Some Engineering 1.2k Jan 3, 2023
This code is for a bot which will find a Twitter user's most tweeted word and tweet that word, tagging said user

max_tweeted_word This code is for a bot which will find a Twitter user's most tweeted word and tweet that word, tagging said user The program uses twe

Yasho Bapat 1 Nov 29, 2021
Track player's stats, find out when they're online and grinding!

Hypixel Stats Tracker Track player's stats, find out when they're online and playing games! INFO Showcase Server: https://discord.gg/yY5qQHPar6 Suppor

null 4 Dec 18, 2022
Melissa Songs is a telegram bot to easily find songs sending music snippets and search tracks 💃🏽🎵

Find songs on Telegram, like on Shazam... ?? Open on telegram · Report Bug · Request Feature ⬇️ Installation To get a local copy installed and working

Joaquim Roque 21 Nov 10, 2022
Find people to play tennis with.

40Love 40Love is a full-stack web application that helps tennis players find hits at public tennis courts. Players can select public courts on the map

Tanner Schmutte 27 Jun 8, 2022
A listener for RF >= 4.0 that prints a Stack Trace to console to faster find the code section where the failure appears.

robotframework-stacktrace A listener for RF >= 4.0 that prints a Stack Trace to console to faster find the code section where the failure appears. Ins

marketsquare 16 Nov 24, 2022
domhttpx is a google search engine dorker with HTTP toolkit built with python, can make it easier for you to find many URLs/IPs at once with fast time.

domhttpx is a google search engine dorker with HTTP toolkit built with python, can make it easier for you to find many URLs/IPs at once with fast time

Naufal Ardhani 59 Dec 4, 2022
A Bot To Find Telegram User ID Easily

Telegram ID Bot ?? A Bot To Find Telegram User ID Easily Made with Python3 (C) @BXBotz Copyright permission under MIT License License -> https://githu

MuFaz-TG 6 Nov 21, 2022
Find the best repos to contribute to, right from Discord!

repo-finder-bot Find the best repos to contribute to, right from Discord! Add to your server FAQs Hmm. What's this? This is the Repo Finder Bot, a bot

Skyascii 61 Dec 25, 2022