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
69f2f6db
Unverified
Commit
69f2f6db
authored
Oct 23, 2018
by
Sébastien Eustace
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix potential errors when resolving dependencies for specific packages
parent
e82ec7dd
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
20 additions
and
20 deletions
+20
-20
CHANGELOG.md
+1
-0
poetry/packages/package.py
+1
-13
poetry/repositories/exceptions.py
+8
-0
poetry/repositories/legacy_repository.py
+3
-2
poetry/repositories/pool.py
+2
-2
poetry/repositories/pypi_repository.py
+3
-2
tests/repositories/test_legacy_repository.py
+2
-1
No files found.
CHANGELOG.md
View file @
69f2f6db
...
...
@@ -5,6 +5,7 @@
### Fixed
-
Fixed installation of Poetry git dependencies with a build system.
-
Fixed possible errors when resolving dependencies for specific packages.
## [0.12.4] - 2018-10-21
...
...
poetry/packages/package.py
View file @
69f2f6db
...
...
@@ -73,6 +73,7 @@ class Package(object):
self
.
_python_constraint
=
parse_constraint
(
"*"
)
self
.
_python_marker
=
AnyMarker
()
self
.
platform
=
None
self
.
marker
=
AnyMarker
()
self
.
root_dir
=
None
...
...
@@ -168,19 +169,6 @@ class Package(object):
return
self
.
_python_marker
@property
def
platform
(
self
):
# type: () -> str
return
self
.
_platform
@platform.setter
def
platform
(
self
,
value
):
# type: (str) -> None
self
.
_platform
=
value
self
.
_platform_constraint
=
parse_generic_constraint
(
value
)
@property
def
platform_constraint
(
self
):
return
self
.
_platform_constraint
@property
def
license
(
self
):
return
self
.
_license
...
...
poetry/repositories/exceptions.py
0 → 100644
View file @
69f2f6db
class
RepositoryError
(
Exception
):
pass
class
PackageNotFound
(
Exception
):
pass
poetry/repositories/legacy_repository.py
View file @
69f2f6db
...
...
@@ -41,6 +41,7 @@ from poetry.utils._compat import Path
from
poetry.utils.helpers
import
canonicalize_name
,
get_http_basic_auth
from
poetry.version.markers
import
InvalidMarker
from
.exceptions
import
PackageNotFound
from
.pypi_repository
import
PyPiRepository
...
...
@@ -297,7 +298,7 @@ class LegacyRepository(PyPiRepository):
def
_get_release_info
(
self
,
name
,
version
):
# type: (str, str) -> dict
page
=
self
.
_get
(
"/{}/"
.
format
(
canonicalize_name
(
name
)
.
replace
(
"."
,
"-"
)))
if
page
is
None
:
raise
ValueError
(
'No package named "{}"'
.
format
(
name
))
raise
PackageNotFound
(
'No package named "{}"'
.
format
(
name
))
data
=
{
"name"
:
name
,
...
...
@@ -310,7 +311,7 @@ class LegacyRepository(PyPiRepository):
links
=
list
(
page
.
links_for_version
(
Version
.
parse
(
version
)))
if
not
links
:
raise
ValueError
(
raise
PackageNotFound
(
'No valid distribution links found for package: "{}" version: "{}"'
.
format
(
name
,
version
)
...
...
poetry/repositories/pool.py
View file @
69f2f6db
from
typing
import
List
from
typing
import
Union
import
poetry.packages
from
.base_repository
import
BaseRepository
from
.exceptions
import
PackageNotFound
from
.repository
import
Repository
...
...
@@ -65,7 +65,7 @@ class Pool(BaseRepository):
for
repository
in
self
.
_repositories
:
try
:
package
=
repository
.
package
(
name
,
version
,
extras
=
extras
)
except
ValueError
:
except
PackageNotFound
:
continue
if
package
:
...
...
poetry/repositories/pypi_repository.py
View file @
69f2f6db
...
...
@@ -41,6 +41,7 @@ from poetry.utils.helpers import temporary_directory
from
poetry.utils.env
import
Env
from
poetry.version.markers
import
InvalidMarker
from
.exceptions
import
PackageNotFound
from
.repository
import
Repository
...
...
@@ -225,7 +226,7 @@ class PyPiRepository(Repository):
def
_get_package_info
(
self
,
name
):
# type: (str) -> dict
data
=
self
.
_get
(
"pypi/{}/json"
.
format
(
name
))
if
data
is
None
:
raise
ValueError
(
"Package [{}] not found."
.
format
(
name
))
raise
PackageNotFound
(
"Package [{}] not found."
.
format
(
name
))
return
data
...
...
@@ -261,7 +262,7 @@ class PyPiRepository(Repository):
json_data
=
self
.
_get
(
"pypi/{}/{}/json"
.
format
(
name
,
version
))
if
json_data
is
None
:
raise
ValueError
(
"Package [{}] not found."
.
format
(
name
))
raise
PackageNotFound
(
"Package [{}] not found."
.
format
(
name
))
info
=
json_data
[
"info"
]
data
=
{
...
...
tests/repositories/test_legacy_repository.py
View file @
69f2f6db
import
pytest
from
poetry.repositories.exceptions
import
PackageNotFound
from
poetry.repositories.legacy_repository
import
LegacyRepository
from
poetry.repositories.legacy_repository
import
Page
from
poetry.utils._compat
import
Path
...
...
@@ -55,5 +56,5 @@ def test_sdist_format_support():
def
test_missing_version
(
mocker
):
repo
=
MockRepository
()
with
pytest
.
raises
(
ValueError
):
with
pytest
.
raises
(
PackageNotFound
):
repo
.
_get_release_info
(
"missing_version"
,
"1.1.0"
)
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