@@ -366,7 +366,7 @@ def _search_for_url(self, dependency: URLDependency) -> Package:
366
366
367
367
self .validate_package_for_dependency (dependency = dependency , package = package )
368
368
369
- for extra in dependency .extras :
369
+ for extra in sorted ( dependency .extras ) :
370
370
if extra in package .extras :
371
371
for dep in package .extras [extra ]:
372
372
dep .activate ()
@@ -487,7 +487,7 @@ def complete_package(
487
487
if dependency .extras :
488
488
# Find all the optional dependencies that are wanted - taking care to allow
489
489
# for self-referential extras.
490
- stack = list (dependency .extras )
490
+ stack = sorted (dependency .extras )
491
491
while stack :
492
492
extra = stack .pop ()
493
493
if extra in found_extras :
@@ -497,16 +497,14 @@ def complete_package(
497
497
extra_dependencies = package .extras .get (extra , [])
498
498
for extra_dependency in extra_dependencies :
499
499
if extra_dependency .name == dependency .name :
500
- stack += list (extra_dependency .extras )
500
+ stack += sorted (extra_dependency .extras )
501
501
else :
502
502
optional_dependencies .add (extra_dependency .name )
503
503
504
504
# If some extras/features were required, we need to add a special dependency
505
505
# representing the base package to the current package.
506
506
507
- dependency_package = dependency_package .with_features (
508
- list (dependency .extras )
509
- )
507
+ dependency_package = dependency_package .with_features (dependency .extras )
510
508
package = dependency_package .package
511
509
dependency = dependency_package .dependency
512
510
new_dependency = package .without_features ().to_dependency ()
0 commit comments