Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
slapos.buildout
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Xavier Thompson
slapos.buildout
Commits
bac4f04e
Commit
bac4f04e
authored
May 14, 2021
by
Julien Muchembled
Committed by
Xavier Thompson
Apr 02, 2024
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[feat] Explain egg dependencies when an egg fails to install
parent
02ab7870
Changes
6
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
72 additions
and
0 deletions
+72
-0
src/zc/buildout/easy_install.py
src/zc/buildout/easy_install.py
+5
-0
src/zc/buildout/tests/allow-unknown-extras.txt
src/zc/buildout/tests/allow-unknown-extras.txt
+1
-0
src/zc/buildout/tests/allowhosts.txt
src/zc/buildout/tests/allowhosts.txt
+4
-0
src/zc/buildout/tests/dependencylinks.txt
src/zc/buildout/tests/dependencylinks.txt
+2
-0
src/zc/buildout/tests/repeatable.txt
src/zc/buildout/tests/repeatable.txt
+1
-0
src/zc/buildout/tests/test_all.py
src/zc/buildout/tests/test_all.py
+59
-0
No files found.
src/zc/buildout/easy_install.py
View file @
bac4f04e
...
...
@@ -240,6 +240,10 @@ def dist_needs_pkg_resources(dist):
)
_doing_list
=
type
(
''
,
(),
{
'__mod__'
:
staticmethod
(
lambda
x
:
'
\
n
'
.
join
(
*
x
))})()
class
Installer
(
object
):
_versions
=
{}
...
...
@@ -690,6 +694,7 @@ class Installer(object):
def
install
(
self
,
specs
,
working_set
=
None
):
logger
.
debug
(
'Installing %s.'
,
repr
(
specs
)[
1
:
-
1
])
__doing__
=
_doing_list
,
self
.
_requirements_and_constraints
self
.
_requirements_and_constraints
.
append
(
"Base installation request: %s"
%
repr
(
specs
)[
1
:
-
1
])
...
...
src/zc/buildout/tests/allow-unknown-extras.txt
View file @
bac4f04e
...
...
@@ -40,6 +40,7 @@ Now we can run the buildout and see that it fails:
...
While:
Installing eggs.
Base installation request: 'allowdemo[bad_extra]'
Error: Couldn't find the required extra...
If we flip the option on, the buildout succeeds
...
...
src/zc/buildout/tests/allowhosts.txt
View file @
bac4f04e
...
...
@@ -61,6 +61,8 @@ Now we can run the buildout and make sure all attempts to dist.plone.org fails::
...
While:
Installing eggs.
Base installation request: 'allowdemo'
Requirement of allowdemo: kss.core
Getting distribution for 'kss.core'.
Error: Couldn't find a distribution for 'kss.core'.
...
...
@@ -92,6 +94,8 @@ Now we can run the buildout and make sure all attempts to dist.plone.org fails::
...
While:
Installing eggs.
Base installation request: 'allowdemo'
Requirement of allowdemo: kss.core
Getting distribution for 'kss.core'.
Error: Couldn't find a distribution for 'kss.core'.
...
...
src/zc/buildout/tests/dependencylinks.txt
View file @
bac4f04e
...
...
@@ -87,6 +87,8 @@ buildout to see where the egg comes from this time.
...
While:
Updating eggs.
Base installation request: 'depdemo'
Requirement of depdemo: demoneeded
Getting distribution for 'demoneeded'.
Error: Couldn't find a distribution for 'demoneeded'.
...
...
src/zc/buildout/tests/repeatable.txt
View file @
bac4f04e
...
...
@@ -207,6 +207,7 @@ versions:
Getting section foo.
Initializing section foo.
Installing recipe spam.
Base installation request: 'spam'
Getting distribution for 'spam'.
Error: Picked: spam = 2
...
...
...
src/zc/buildout/tests/test_all.py
View file @
bac4f04e
...
...
@@ -433,6 +433,9 @@ Now, let's create a buildout that requires y and z:
Requirement of sampley: demoneeded==1.0
While:
Installing eggs.
Base installation request: 'sampley', 'samplez'
Requirement of samplez: demoneeded==1.1
Requirement of sampley: demoneeded==1.0
Error: There is a version conflict.
We already have: demoneeded 1.1
but sampley 1 requires 'demoneeded==1.0'.
...
...
@@ -483,6 +486,12 @@ If we use the verbose switch, we can see where requirements are coming from:
Requirement of sampley: demoneeded==1.0
While:
Installing eggs.
Base installation request: 'samplea', 'samplez'
Requirement of samplez: demoneeded==1.1
Requirement of samplea: sampleb
Requirement of sampleb: samplea
Requirement of sampleb: sampley
Requirement of sampley: demoneeded==1.0
Error: There is a version conflict.
We already have: demoneeded 1.1
but sampley 1 requires 'demoneeded==1.0'.
...
...
@@ -551,6 +560,11 @@ that we can't find. when run in verbose mode
...
While:
Installing eggs.
Base installation request: 'samplea'
Requirement of samplea: sampleb
Requirement of sampleb: samplea
Requirement of sampleb: sampley
Requirement of sampley: demoneeded
Getting distribution for 'demoneeded'.
Error: Couldn't find a distribution for 'demoneeded'.
"""
...
...
@@ -2216,6 +2230,28 @@ def dealing_with_extremely_insane_dependencies():
...
While:
Installing pack1.
Base installation request: 'pack0'
Requirement of pack0: pack4
Requirement of pack0: pack3
Requirement of pack0: pack2
Requirement of pack0: pack1
Requirement of pack4: pack5
Requirement of pack4: pack3
Requirement of pack4: pack2
Requirement of pack4: pack1
Requirement of pack4: pack0
Requirement of pack3: pack4
Requirement of pack3: pack2
Requirement of pack3: pack1
Requirement of pack3: pack0
Requirement of pack2: pack4
Requirement of pack2: pack3
Requirement of pack2: pack1
Requirement of pack2: pack0
Requirement of pack1: pack4
Requirement of pack1: pack3
Requirement of pack1: pack2
Requirement of pack1: pack0
Getting distribution for 'pack5'.
Error: Couldn't find a distribution for 'pack5'.
...
...
@@ -2257,6 +2293,28 @@ def dealing_with_extremely_insane_dependencies():
...
While:
Installing pack1.
Base installation request: 'pack0'
Requirement of pack0: pack4
Requirement of pack0: pack3
Requirement of pack0: pack2
Requirement of pack0: pack1
Requirement of pack4: pack5
Requirement of pack4: pack3
Requirement of pack4: pack2
Requirement of pack4: pack1
Requirement of pack4: pack0
Requirement of pack3: pack4
Requirement of pack3: pack2
Requirement of pack3: pack1
Requirement of pack3: pack0
Requirement of pack2: pack4
Requirement of pack2: pack3
Requirement of pack2: pack1
Requirement of pack2: pack0
Requirement of pack1: pack4
Requirement of pack1: pack3
Requirement of pack1: pack2
Requirement of pack1: pack0
Getting distribution for 'pack5'.
Error: Couldn't find a distribution for 'pack5'.
"""
...
...
@@ -3300,6 +3358,7 @@ def want_new_zcrecipeegg():
Getting section egg.
Initializing section egg.
Installing recipe zc.recipe.egg <2dev.
Base installation request: 'zc.recipe.egg <2dev'
Getting distribution for 'zc.recipe.egg<2dev,>=2.0.6'.
Error: Couldn't find a distribution for 'zc.recipe.egg<2dev,>=2.0.6'.
"""
...
...
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