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
65ff74a9
Commit
65ff74a9
authored
Aug 14, 2022
by
Randy Döring
Committed by
Bjorn Neergaard
Aug 17, 2022
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
mypy: adapt type hints to change in poetry-core#442
parent
d1dbdefc
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
30 additions
and
14 deletions
+30
-14
poetry.lock
+0
-0
pyproject.toml
+1
-1
src/poetry/console/commands/init.py
+2
-1
src/poetry/console/commands/show.py
+2
-1
src/poetry/installation/installer.py
+1
-0
src/poetry/repositories/legacy_repository.py
+5
-2
src/poetry/repositories/pypi_repository.py
+6
-3
src/poetry/repositories/repository.py
+4
-1
src/poetry/utils/env.py
+3
-2
src/poetry/utils/extras.py
+5
-2
tests/utils/test_extras.py
+1
-1
No files found.
poetry.lock
View file @
65ff74a9
This diff is collapsed.
Click to expand it.
pyproject.toml
View file @
65ff74a9
...
@@ -44,7 +44,7 @@ generate-setup-file = false
...
@@ -44,7 +44,7 @@ generate-setup-file = false
[tool.poetry.dependencies]
[tool.poetry.dependencies]
python
=
"^3.7"
python
=
"^3.7"
poetry-core
=
"^1.1.0
b3
"
poetry-core
=
"^1.1.0
rc1
"
poetry-plugin-export
=
"^1.0.6"
poetry-plugin-export
=
"^1.0.6"
cachecontrol
=
{
version
=
"^0.12.9"
,
extras
=
["filecache"]
}
cachecontrol
=
{
version
=
"^0.12.9"
,
extras
=
["filecache"]
}
cachy
=
"^0.3.0"
cachy
=
"^0.3.0"
...
...
src/poetry/console/commands/init.py
View file @
65ff74a9
...
@@ -19,6 +19,7 @@ from poetry.utils.dependency_specification import parse_dependency_specification
...
@@ -19,6 +19,7 @@ from poetry.utils.dependency_specification import parse_dependency_specification
if
TYPE_CHECKING
:
if
TYPE_CHECKING
:
from
packaging.utils
import
NormalizedName
from
poetry.core.packages.package
import
Package
from
poetry.core.packages.package
import
Package
from
tomlkit.items
import
InlineTable
from
tomlkit.items
import
InlineTable
...
@@ -238,7 +239,7 @@ You can specify a package in the following forms:
...
@@ -238,7 +239,7 @@ You can specify a package in the following forms:
return
0
return
0
def
_generate_choice_list
(
def
_generate_choice_list
(
self
,
matches
:
list
[
Package
],
canonicalized_name
:
str
self
,
matches
:
list
[
Package
],
canonicalized_name
:
NormalizedName
)
->
list
[
str
]:
)
->
list
[
str
]:
choices
=
[]
choices
=
[]
matches_names
=
[
p
.
name
for
p
in
matches
]
matches_names
=
[
p
.
name
for
p
in
matches
]
...
...
src/poetry/console/commands/show.py
View file @
65ff74a9
...
@@ -11,6 +11,7 @@ from poetry.console.commands.group_command import GroupCommand
...
@@ -11,6 +11,7 @@ from poetry.console.commands.group_command import GroupCommand
if
TYPE_CHECKING
:
if
TYPE_CHECKING
:
from
cleo.io.io
import
IO
from
cleo.io.io
import
IO
from
packaging.utils
import
NormalizedName
from
poetry.core.packages.dependency
import
Dependency
from
poetry.core.packages.dependency
import
Dependency
from
poetry.core.packages.package
import
Package
from
poetry.core.packages.package
import
Package
from
poetry.core.packages.project_package
import
ProjectPackage
from
poetry.core.packages.project_package
import
ProjectPackage
...
@@ -423,7 +424,7 @@ lists all packages available."""
...
@@ -423,7 +424,7 @@ lists all packages available."""
io
:
IO
,
io
:
IO
,
dependency
:
Dependency
,
dependency
:
Dependency
,
installed_packages
:
list
[
Package
],
installed_packages
:
list
[
Package
],
packages_in_tree
:
list
[
str
],
packages_in_tree
:
list
[
NormalizedName
],
previous_tree_bar
:
str
=
"├"
,
previous_tree_bar
:
str
=
"├"
,
level
:
int
=
1
,
level
:
int
=
1
,
)
->
None
:
)
->
None
:
...
...
src/poetry/installation/installer.py
View file @
65ff74a9
...
@@ -544,6 +544,7 @@ class Installer:
...
@@ -544,6 +544,7 @@ class Installer:
Maybe we just let the solver handle it?
Maybe we just let the solver handle it?
"""
"""
extras
:
dict
[
str
,
list
[
str
]]
if
self
.
_update
:
if
self
.
_update
:
extras
=
{
k
:
[
d
.
name
for
d
in
v
]
for
k
,
v
in
self
.
_package
.
extras
.
items
()}
extras
=
{
k
:
[
d
.
name
for
d
in
v
]
for
k
,
v
in
self
.
_package
.
extras
.
items
()}
else
:
else
:
...
...
src/poetry/repositories/legacy_repository.py
View file @
65ff74a9
...
@@ -14,6 +14,7 @@ from poetry.repositories.link_sources.html import SimpleRepositoryPage
...
@@ -14,6 +14,7 @@ from poetry.repositories.link_sources.html import SimpleRepositoryPage
if
TYPE_CHECKING
:
if
TYPE_CHECKING
:
from
packaging.utils
import
NormalizedName
from
poetry.core.packages.utils.link
import
Link
from
poetry.core.packages.utils.link
import
Link
from
poetry.core.semver.version_constraint
import
VersionConstraint
from
poetry.core.semver.version_constraint
import
VersionConstraint
...
@@ -66,13 +67,15 @@ class LegacyRepository(HTTPRepository):
...
@@ -66,13 +67,15 @@ class LegacyRepository(HTTPRepository):
return
list
(
page
.
links_for_version
(
package
.
name
,
package
.
version
))
return
list
(
page
.
links_for_version
(
package
.
name
,
package
.
version
))
def
_find_packages
(
self
,
name
:
str
,
constraint
:
VersionConstraint
)
->
list
[
Package
]:
def
_find_packages
(
self
,
name
:
NormalizedName
,
constraint
:
VersionConstraint
)
->
list
[
Package
]:
"""
"""
Find packages on the remote server.
Find packages on the remote server.
"""
"""
versions
:
list
[
Version
]
versions
:
list
[
Version
]
key
=
name
key
:
str
=
name
if
not
constraint
.
is_any
():
if
not
constraint
.
is_any
():
key
=
f
"{key}:{constraint!s}"
key
=
f
"{key}:{constraint!s}"
...
...
src/poetry/repositories/pypi_repository.py
View file @
65ff74a9
...
@@ -27,6 +27,7 @@ logger = logging.getLogger(__name__)
...
@@ -27,6 +27,7 @@ logger = logging.getLogger(__name__)
if
TYPE_CHECKING
:
if
TYPE_CHECKING
:
from
packaging.utils
import
NormalizedName
from
poetry.core.semver.version_constraint
import
VersionConstraint
from
poetry.core.semver.version_constraint
import
VersionConstraint
...
@@ -90,7 +91,7 @@ class PyPiRepository(HTTPRepository):
...
@@ -90,7 +91,7 @@ class PyPiRepository(HTTPRepository):
return
results
return
results
def
get_package_info
(
self
,
name
:
str
)
->
dict
[
str
,
Any
]:
def
get_package_info
(
self
,
name
:
NormalizedName
)
->
dict
[
str
,
Any
]:
"""
"""
Return the package information given its name.
Return the package information given its name.
...
@@ -105,7 +106,9 @@ class PyPiRepository(HTTPRepository):
...
@@ -105,7 +106,9 @@ class PyPiRepository(HTTPRepository):
)
)
return
package_info
return
package_info
def
_find_packages
(
self
,
name
:
str
,
constraint
:
VersionConstraint
)
->
list
[
Package
]:
def
_find_packages
(
self
,
name
:
NormalizedName
,
constraint
:
VersionConstraint
)
->
list
[
Package
]:
"""
"""
Find packages on the remote server.
Find packages on the remote server.
"""
"""
...
@@ -145,7 +148,7 @@ class PyPiRepository(HTTPRepository):
...
@@ -145,7 +148,7 @@ class PyPiRepository(HTTPRepository):
return
packages
return
packages
def
_get_package_info
(
self
,
name
:
str
)
->
dict
[
str
,
Any
]:
def
_get_package_info
(
self
,
name
:
NormalizedName
)
->
dict
[
str
,
Any
]:
data
=
self
.
_get
(
f
"pypi/{name}/json"
)
data
=
self
.
_get
(
f
"pypi/{name}/json"
)
if
data
is
None
:
if
data
is
None
:
raise
PackageNotFound
(
f
"Package [{name}] not found."
)
raise
PackageNotFound
(
f
"Package [{name}] not found."
)
...
...
src/poetry/repositories/repository.py
View file @
65ff74a9
...
@@ -12,6 +12,7 @@ from poetry.repositories.exceptions import PackageNotFound
...
@@ -12,6 +12,7 @@ from poetry.repositories.exceptions import PackageNotFound
if
TYPE_CHECKING
:
if
TYPE_CHECKING
:
from
packaging.utils
import
NormalizedName
from
poetry.core.packages.dependency
import
Dependency
from
poetry.core.packages.dependency
import
Dependency
from
poetry.core.packages.package
import
Package
from
poetry.core.packages.package
import
Package
from
poetry.core.packages.utils.link
import
Link
from
poetry.core.packages.utils.link
import
Link
...
@@ -112,7 +113,9 @@ class Repository:
...
@@ -112,7 +113,9 @@ class Repository:
return
constraint
,
allow_prereleases
return
constraint
,
allow_prereleases
def
_find_packages
(
self
,
name
:
str
,
constraint
:
VersionConstraint
)
->
list
[
Package
]:
def
_find_packages
(
self
,
name
:
NormalizedName
,
constraint
:
VersionConstraint
)
->
list
[
Package
]:
return
[
return
[
package
package
for
package
in
self
.
_packages
for
package
in
self
.
_packages
...
...
src/poetry/utils/env.py
View file @
65ff74a9
...
@@ -641,8 +641,9 @@ class EnvManager:
...
@@ -641,8 +641,9 @@ class EnvManager:
def
deactivate
(
self
,
io
:
IO
)
->
None
:
def
deactivate
(
self
,
io
:
IO
)
->
None
:
venv_path
=
self
.
_poetry
.
config
.
virtualenvs_path
venv_path
=
self
.
_poetry
.
config
.
virtualenvs_path
name
=
self
.
_poetry
.
package
.
name
name
=
self
.
generate_env_name
(
name
=
self
.
generate_env_name
(
name
,
str
(
self
.
_poetry
.
file
.
parent
))
self
.
_poetry
.
package
.
name
,
str
(
self
.
_poetry
.
file
.
parent
)
)
envs_file
=
TOMLFile
(
venv_path
/
self
.
ENVS_FILE
)
envs_file
=
TOMLFile
(
venv_path
/
self
.
ENVS_FILE
)
if
envs_file
.
exists
():
if
envs_file
.
exists
():
...
...
src/poetry/utils/extras.py
View file @
65ff74a9
...
@@ -9,6 +9,7 @@ if TYPE_CHECKING:
...
@@ -9,6 +9,7 @@ if TYPE_CHECKING:
from
collections.abc
import
Sequence
from
collections.abc
import
Sequence
from
typing
import
Mapping
from
typing
import
Mapping
from
packaging.utils
import
NormalizedName
from
poetry.core.packages.package
import
Package
from
poetry.core.packages.package
import
Package
...
@@ -43,13 +44,15 @@ def get_extra_package_names(
...
@@ -43,13 +44,15 @@ def get_extra_package_names(
# keep record of packages seen during recursion in order to avoid recursion error
# keep record of packages seen during recursion in order to avoid recursion error
seen_package_names
=
set
()
seen_package_names
=
set
()
def
_extra_packages
(
package_names
:
Iterable
[
str
])
->
Iterator
[
str
]:
def
_extra_packages
(
package_names
:
Iterable
[
NormalizedName
],
)
->
Iterator
[
NormalizedName
]:
"""Recursively find dependencies for packages names"""
"""Recursively find dependencies for packages names"""
# for each extra package name
# for each extra package name
for
package_name
in
package_names
:
for
package_name
in
package_names
:
# Find the actual Package object. A missing key indicates an implicit
# Find the actual Package object. A missing key indicates an implicit
# dependency (like setuptools), which should be ignored
# dependency (like setuptools), which should be ignored
package
=
packages_by_name
.
get
(
canonicalize_name
(
package_name
)
)
package
=
packages_by_name
.
get
(
package_name
)
if
package
:
if
package
:
if
package
.
name
not
in
seen_package_names
:
if
package
.
name
not
in
seen_package_names
:
seen_package_names
.
add
(
package
.
name
)
seen_package_names
.
add
(
package
.
name
)
...
...
tests/utils/test_extras.py
View file @
65ff74a9
...
@@ -63,7 +63,7 @@ def test_get_extra_package_names(
...
@@ -63,7 +63,7 @@ def test_get_extra_package_names(
extras
:
dict
[
str
,
list
[
str
]],
extras
:
dict
[
str
,
list
[
str
]],
extra_names
:
list
[
str
],
extra_names
:
list
[
str
],
expected_extra_package_names
:
list
[
str
],
expected_extra_package_names
:
list
[
str
],
):
)
->
None
:
assert
(
assert
(
list
(
get_extra_package_names
(
packages
,
extras
,
extra_names
))
list
(
get_extra_package_names
(
packages
,
extras
,
extra_names
))
==
expected_extra_package_names
==
expected_extra_package_names
...
...
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