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
cf213245
Commit
cf213245
authored
Aug 20, 2022
by
Randy Döring
Committed by
Bjorn Neergaard
Aug 31, 2022
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
refactor(solver/provider): move progress() from Provider to Solver
parent
90c34887
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
20 additions
and
22 deletions
+20
-22
src/poetry/puzzle/provider.py
+0
-19
src/poetry/puzzle/solver.py
+20
-3
No files found.
src/poetry/puzzle/provider.py
View file @
cf213245
...
@@ -134,7 +134,6 @@ class Provider:
...
@@ -134,7 +134,6 @@ class Provider:
self
.
_env
:
Env
|
None
=
None
self
.
_env
:
Env
|
None
=
None
self
.
_python_constraint
=
package
.
python_constraint
self
.
_python_constraint
=
package
.
python_constraint
self
.
_is_debugging
:
bool
=
self
.
_io
.
is_debug
()
or
self
.
_io
.
is_very_verbose
()
self
.
_is_debugging
:
bool
=
self
.
_io
.
is_debug
()
or
self
.
_io
.
is_very_verbose
()
self
.
_in_progress
=
False
self
.
_overrides
:
dict
[
DependencyPackage
,
dict
[
str
,
Dependency
]]
=
{}
self
.
_overrides
:
dict
[
DependencyPackage
,
dict
[
str
,
Dependency
]]
=
{}
self
.
_deferred_cache
:
dict
[
Dependency
,
Package
]
=
{}
self
.
_deferred_cache
:
dict
[
Dependency
,
Package
]
=
{}
self
.
_load_deferred
=
True
self
.
_load_deferred
=
True
...
@@ -888,24 +887,6 @@ class Provider:
...
@@ -888,24 +887,6 @@ class Provider:
self
.
_io
.
write
(
debug_info
)
self
.
_io
.
write
(
debug_info
)
@contextmanager
def
progress
(
self
)
->
Iterator
[
None
]:
if
not
self
.
_io
.
output
.
is_decorated
()
or
self
.
is_debugging
():
self
.
_io
.
write_line
(
"Resolving dependencies..."
)
yield
else
:
indicator
=
Indicator
(
self
.
_io
,
"{message}{context}<debug>({elapsed:2s})</debug>"
)
with
indicator
.
auto
(
"<info>Resolving dependencies...</info>"
,
"<info>Resolving dependencies...</info>"
,
):
yield
self
.
_in_progress
=
False
def
_merge_dependencies_by_constraint
(
def
_merge_dependencies_by_constraint
(
self
,
dependencies
:
Iterable
[
Dependency
]
self
,
dependencies
:
Iterable
[
Dependency
]
)
->
list
[
Dependency
]:
)
->
list
[
Dependency
]:
...
...
src/poetry/puzzle/solver.py
View file @
cf213245
...
@@ -16,6 +16,7 @@ from poetry.mixology.failure import SolveFailure
...
@@ -16,6 +16,7 @@ from poetry.mixology.failure import SolveFailure
from
poetry.packages
import
DependencyPackage
from
poetry.packages
import
DependencyPackage
from
poetry.puzzle.exceptions
import
OverrideNeeded
from
poetry.puzzle.exceptions
import
OverrideNeeded
from
poetry.puzzle.exceptions
import
SolverProblemError
from
poetry.puzzle.exceptions
import
SolverProblemError
from
poetry.puzzle.provider
import
Indicator
from
poetry.puzzle.provider
import
Provider
from
poetry.puzzle.provider
import
Provider
...
@@ -64,7 +65,7 @@ class Solver:
...
@@ -64,7 +65,7 @@ class Solver:
def
solve
(
self
,
use_latest
:
list
[
str
]
|
None
=
None
)
->
Transaction
:
def
solve
(
self
,
use_latest
:
list
[
str
]
|
None
=
None
)
->
Transaction
:
from
poetry.puzzle.transaction
import
Transaction
from
poetry.puzzle.transaction
import
Transaction
with
self
.
_pro
vider
.
pro
gress
():
with
self
.
_progress
():
start
=
time
.
time
()
start
=
time
.
time
()
packages
,
depths
=
self
.
_solve
(
use_latest
=
use_latest
)
packages
,
depths
=
self
.
_solve
(
use_latest
=
use_latest
)
end
=
time
.
time
()
end
=
time
.
time
()
...
@@ -96,7 +97,23 @@ class Solver:
...
@@ -96,7 +97,23 @@ class Solver:
root_package
=
self
.
_package
,
root_package
=
self
.
_package
,
)
)
def
solve_in_compatibility_mode
(
@contextmanager
def
_progress
(
self
)
->
Iterator
[
None
]:
if
not
self
.
_io
.
output
.
is_decorated
()
or
self
.
_provider
.
is_debugging
():
self
.
_io
.
write_line
(
"Resolving dependencies..."
)
yield
else
:
indicator
=
Indicator
(
self
.
_io
,
"{message}{context}<debug>({elapsed:2s})</debug>"
)
with
indicator
.
auto
(
"<info>Resolving dependencies...</info>"
,
"<info>Resolving dependencies...</info>"
,
):
yield
def
_solve_in_compatibility_mode
(
self
,
self
,
overrides
:
tuple
[
dict
[
DependencyPackage
,
dict
[
str
,
Dependency
]],
...
],
overrides
:
tuple
[
dict
[
DependencyPackage
,
dict
[
str
,
Dependency
]],
...
],
use_latest
:
list
[
str
]
|
None
=
None
,
use_latest
:
list
[
str
]
|
None
=
None
,
...
@@ -150,7 +167,7 @@ class Solver:
...
@@ -150,7 +167,7 @@ class Solver:
packages
=
result
.
packages
packages
=
result
.
packages
except
OverrideNeeded
as
e
:
except
OverrideNeeded
as
e
:
return
self
.
solve_in_compatibility_mode
(
e
.
overrides
,
use_latest
=
use_latest
)
return
self
.
_
solve_in_compatibility_mode
(
e
.
overrides
,
use_latest
=
use_latest
)
except
SolveFailure
as
e
:
except
SolveFailure
as
e
:
raise
SolverProblemError
(
e
)
raise
SolverProblemError
(
e
)
...
...
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