Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
python-poetry
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
open
python-poetry
Commits
16673925
Commit
16673925
authored
Oct 23, 2022
by
David Hotham
Committed by
Randy Döring
Dec 18, 2022
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
more precise exception handling
parent
c0b1e379
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
15 additions
and
19 deletions
+15
-19
src/poetry/console/commands/init.py
+1
-1
src/poetry/console/commands/version.py
+2
-1
src/poetry/inspection/info.py
+10
-3
src/poetry/repositories/link_sources/base.py
+2
-1
src/poetry/version/version_selector.py
+0
-13
No files found.
src/poetry/console/commands/init.py
View file @
16673925
...
...
@@ -413,7 +413,7 @@ You can specify a package in the following forms:
# TODO: find similar
raise
ValueError
(
f
"Could not find a matching version of package {name}"
)
return
package
.
pretty_name
,
selector
.
find_recommended_require_version
(
package
)
return
package
.
pretty_name
,
f
"^{package.version.to_string()}"
def
_parse_requirements
(
self
,
requirements
:
list
[
str
])
->
list
[
dict
[
str
,
Any
]]:
from
poetry.core.pyproject.exceptions
import
PyProjectException
...
...
src/poetry/console/commands/version.py
View file @
16673925
...
...
@@ -5,6 +5,7 @@ from typing import Any
from
cleo.helpers
import
argument
from
cleo.helpers
import
option
from
poetry.core.version.exceptions
import
InvalidVersion
from
tomlkit.toml_document
import
TOMLDocument
from
poetry.console.commands.command
import
Command
...
...
@@ -95,7 +96,7 @@ patch, minor, major, prepatch, preminor, premajor, prerelease.
try
:
parsed
=
Version
.
parse
(
version
)
except
ValueError
:
except
InvalidVersion
:
raise
ValueError
(
"The project's version doesn't seem to follow semver"
)
if
rule
in
{
"major"
,
"premajor"
}:
...
...
src/poetry/inspection/info.py
View file @
16673925
...
...
@@ -21,6 +21,7 @@ from poetry.core.pyproject.toml import PyProjectTOML
from
poetry.core.utils.helpers
import
parse_requires
from
poetry.core.utils.helpers
import
temporary_directory
from
poetry.core.version.markers
import
InvalidMarker
from
poetry.core.version.requirements
import
InvalidRequirement
from
poetry.utils.env
import
EnvCommandError
from
poetry.utils.env
import
ephemeral_environment
...
...
@@ -201,12 +202,18 @@ class PackageInfo:
dependency
=
Dependency
.
create_from_pep_508
(
req
,
relative_to
=
root_dir
)
except
InvalidMarker
:
# Invalid marker, We strip the markers hoping for the best
logger
.
warning
(
"Stripping invalid marker (
%
s) found in
%
s-
%
s dependencies"
,
req
,
package
.
name
,
package
.
version
,
)
req
=
req
.
split
(
";"
)[
0
]
dependency
=
Dependency
.
create_from_pep_508
(
req
,
relative_to
=
root_dir
)
except
ValueError
:
#
Likely unable to parse constrai
nt so we skip it
except
InvalidRequirement
:
#
Unable to parse requireme
nt so we skip it
logger
.
warning
(
"Invalid
constrai
nt (
%
s) found in
%
s-
%
s dependencies, skipping"
,
"Invalid
requireme
nt (
%
s) found in
%
s-
%
s dependencies, skipping"
,
req
,
package
.
name
,
package
.
version
,
...
...
src/poetry/repositories/link_sources/base.py
View file @
16673925
...
...
@@ -9,6 +9,7 @@ from typing import List
from
poetry.core.constraints.version
import
Version
from
poetry.core.packages.package
import
Package
from
poetry.core.version.exceptions
import
InvalidVersion
from
poetry.utils._compat
import
cached_property
from
poetry.utils.patterns
import
sdist_file_re
...
...
@@ -84,7 +85,7 @@ class LinkSource:
if
version_string
:
try
:
version
=
Version
.
parse
(
version_string
)
except
ValueError
:
except
InvalidVersion
:
logger
.
debug
(
"Skipping url (
%
s) due to invalid version (
%
s)"
,
link
.
url
,
version
)
...
...
src/poetry/version/version_selector.py
View file @
16673925
...
...
@@ -2,8 +2,6 @@ from __future__ import annotations
from
typing
import
TYPE_CHECKING
from
poetry.core.constraints.version
import
Version
if
TYPE_CHECKING
:
from
poetry.core.packages.package
import
Package
...
...
@@ -56,14 +54,3 @@ class VersionSelector:
package
=
candidate
return
package
def
find_recommended_require_version
(
self
,
package
:
Package
)
->
str
:
version
=
package
.
version
return
self
.
_transform_version
(
version
.
text
,
package
.
pretty_version
)
def
_transform_version
(
self
,
version
:
str
,
pretty_version
:
str
)
->
str
:
try
:
return
f
"^{Version.parse(version).to_string()}"
except
ValueError
:
return
pretty_version
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment