@@ -366,7 +366,7 @@ def _search_for_url(self, dependency: URLDependency) -> Package:
366366
367367 self .validate_package_for_dependency (dependency = dependency , package = package )
368368
369- for extra in dependency .extras :
369+ for extra in sorted ( dependency .extras ) :
370370 if extra in package .extras :
371371 for dep in package .extras [extra ]:
372372 dep .activate ()
@@ -487,7 +487,7 @@ def complete_package(
487487 if dependency .extras :
488488 # Find all the optional dependencies that are wanted - taking care to allow
489489 # for self-referential extras.
490- stack = list (dependency .extras )
490+ stack = sorted (dependency .extras )
491491 while stack :
492492 extra = stack .pop ()
493493 if extra in found_extras :
@@ -497,16 +497,14 @@ def complete_package(
497497 extra_dependencies = package .extras .get (extra , [])
498498 for extra_dependency in extra_dependencies :
499499 if extra_dependency .name == dependency .name :
500- stack += list (extra_dependency .extras )
500+ stack += sorted (extra_dependency .extras )
501501 else :
502502 optional_dependencies .add (extra_dependency .name )
503503
504504 # If some extras/features were required, we need to add a special dependency
505505 # representing the base package to the current package.
506506
507- dependency_package = dependency_package .with_features (
508- list (dependency .extras )
509- )
507+ dependency_package = dependency_package .with_features (dependency .extras )
510508 package = dependency_package .package
511509 dependency = dependency_package .dependency
512510 new_dependency = package .without_features ().to_dependency ()
0 commit comments