mirror of
https://github.com/lilydjwg/nvchecker.git
synced 2025-03-10 06:14:02 +00:00
parent
1d55664b31
commit
61ca3c95d0
3 changed files with 20 additions and 4 deletions
|
@ -1,4 +1,4 @@
|
|||
# MIT licensed
|
||||
# Copyright (c) 2013-2024 lilydjwg <lilydjwg@gmail.com>, et al.
|
||||
|
||||
__version__ = '2.15'
|
||||
__version__ = '2.15.1'
|
||||
|
|
|
@ -1,10 +1,13 @@
|
|||
# MIT licensed
|
||||
# Copyright (c) 2013-2021 lilydjwg <lilydjwg@gmail.com>, et al.
|
||||
# Copyright (c) 2013-2021,2023-2024 lilydjwg <lilydjwg@gmail.com>, et al.
|
||||
|
||||
from packaging.version import Version
|
||||
import structlog
|
||||
from packaging.version import Version, InvalidVersion
|
||||
|
||||
from nvchecker.api import RichResult
|
||||
|
||||
logger = structlog.get_logger(logger_name=__name__)
|
||||
|
||||
async def get_version(name, conf, *, cache, **kwargs):
|
||||
ret = []
|
||||
|
||||
|
@ -16,7 +19,14 @@ async def get_version(name, conf, *, cache, **kwargs):
|
|||
data = await cache.get_json(url)
|
||||
|
||||
for version in data['releases'].keys():
|
||||
parsed_version = Version(version)
|
||||
try:
|
||||
parsed_version = Version(version)
|
||||
except InvalidVersion:
|
||||
if data['releases'][version]:
|
||||
# emit a warning if there is something under the invalid version
|
||||
# sympy has an empty "0.5.13-hg" version
|
||||
logger.warning('ignoring invalid version', version=version)
|
||||
continue
|
||||
|
||||
if not use_pre_release and parsed_version.is_prerelease:
|
||||
continue
|
||||
|
|
|
@ -26,3 +26,9 @@ async def test_pypi_list(get_version):
|
|||
"source": "pypi",
|
||||
"include_regex": "^1\\..*",
|
||||
}) == "1.26.18"
|
||||
|
||||
async def test_pypi_invalid_version(get_version):
|
||||
await get_version("sympy", {
|
||||
"source": "pypi",
|
||||
})
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue