@@ -473,7 +473,7 @@ def check_install_sanity
473473 end
474474
475475 next unless dep . to_formula . pinned?
476- next if dep . satisfied? ( inherited_options_for ( dep ) )
476+ next if dep . satisfied?
477477
478478 pinned_unsatisfied_deps << dep
479479 end
@@ -499,7 +499,7 @@ def fresh_install?(_formula) = false
499499 def fetch_fetch_deps
500500 return if @compute_dependencies . blank?
501501
502- compute_dependencies ( use_cache : false ) if @compute_dependencies . any? do |dep , |
502+ compute_dependencies ( use_cache : false ) if @compute_dependencies . any? do |dep |
503503 next false unless dep . implicit?
504504
505505 fetch_dependencies
@@ -511,11 +511,11 @@ def fetch_fetch_deps
511511 def install_fetch_deps
512512 return if @compute_dependencies . blank?
513513
514- compute_dependencies ( use_cache : false ) if @compute_dependencies . any? do |dep , options |
514+ compute_dependencies ( use_cache : false ) if @compute_dependencies . any? do |dep |
515515 next false unless dep . implicit?
516516
517517 fetch_dependencies
518- install_dependency ( dep , options )
518+ install_dependency ( dep )
519519 true
520520 end
521521 end
@@ -666,9 +666,9 @@ def check_conflicts
666666
667667 # Compute and collect the dependencies needed by the formula currently
668668 # being installed.
669- sig { params ( use_cache : T ::Boolean ) . returns ( T ::Array [ [ Dependency , Options ] ] ) }
669+ sig { params ( use_cache : T ::Boolean ) . returns ( T ::Array [ Dependency ] ) }
670670 def compute_dependencies ( use_cache : true )
671- @compute_dependencies = T . let ( nil , T . nilable ( T ::Array [ [ Dependency , Options ] ] ) ) unless use_cache
671+ @compute_dependencies = T . let ( nil , T . nilable ( T ::Array [ Dependency ] ) ) unless use_cache
672672 @compute_dependencies ||= begin
673673 # Needs to be done before expand_dependencies
674674 fetch_bottle_tab if pour_bottle?
@@ -678,9 +678,9 @@ def compute_dependencies(use_cache: true)
678678 end
679679 end
680680
681- sig { params ( deps : T ::Array [ [ Dependency , Options ] ] ) . returns ( T ::Array [ Formula ] ) }
681+ sig { params ( deps : T ::Array [ Dependency ] ) . returns ( T ::Array [ Formula ] ) }
682682 def unbottled_dependencies ( deps )
683- deps . map { | ( dep , _options ) | dep . to_formula } . reject do |dep_f |
683+ deps . map ( & : to_formula) . reject do |dep_f |
684684 next false unless dep_f . pour_bottle?
685685
686686 dep_f . bottled?
@@ -755,16 +755,12 @@ def expand_requirements
755755 unsatisfied_reqs
756756 end
757757
758- sig { params ( formula : Formula , inherited_options : T :: Hash [ String , Options ] ) . returns ( T ::Array [ Dependency ] ) }
759- def expand_dependencies_for_formula ( formula , inherited_options )
758+ sig { params ( formula : Formula ) . returns ( T ::Array [ Dependency ] ) }
759+ def expand_dependencies_for_formula ( formula )
760760 # Cache for this expansion only. FormulaInstaller has a lot of inputs which can alter expansion.
761761 cache_key = "FormulaInstaller-#{ formula . full_name } -#{ Time . now . to_f } "
762762 Dependency . expand ( formula , cache_key :) do |dependent , dep |
763- inherited_options [ dep . name ] |= inherited_options_for ( dep )
764- build = effective_build_options_for (
765- dependent ,
766- inherited_options . fetch ( dependent . name , Options . new ) ,
767- )
763+ build = effective_build_options_for ( dependent )
768764
769765 keep_build_test = false
770766 keep_build_test ||= dep . test? && include_test? && @include_test_formulae . include? ( dependent . full_name )
@@ -778,25 +774,19 @@ def expand_dependencies_for_formula(formula, inherited_options)
778774
779775 if dep . prune_from_option? ( build ) || ( ( dep . build? || dep . test? ) && !keep_build_test )
780776 Dependency . prune
781- elsif dep . satisfied? ( inherited_options [ dep . name ] , minimum_version :, minimum_revision :, bottle_os_version :)
777+ elsif dep . satisfied? ( minimum_version :, minimum_revision :, bottle_os_version :)
782778 Dependency . skip
783779 end
784780 end
785781 end
786782
787- sig { returns ( T ::Array [ [ Dependency , Options ] ] ) }
788- def expand_dependencies
789- inherited_options = Hash . new { |hash , key | hash [ key ] = Options . new }
783+ sig { returns ( T ::Array [ Dependency ] ) }
784+ def expand_dependencies = expand_dependencies_for_formula ( formula )
790785
791- expanded_deps = expand_dependencies_for_formula ( formula , inherited_options )
792-
793- expanded_deps . map { |dep | [ dep , inherited_options [ dep . name ] ] }
794- end
795-
796- sig { params ( dependent : Formula , inherited_options : Options ) . returns ( BuildOptions ) }
797- def effective_build_options_for ( dependent , inherited_options = Options . new )
786+ sig { params ( dependent : Formula ) . returns ( BuildOptions ) }
787+ def effective_build_options_for ( dependent )
798788 args = dependent . build . used_options
799- args |= ( dependent == formula ) ? options : inherited_options
789+ args |= options if dependent == formula
800790 args |= Tab . for_formula ( dependent ) . used_options
801791 args &= dependent . options
802792 BuildOptions . new ( args , dependent . options )
@@ -813,27 +803,17 @@ def display_options(formula)
813803 options
814804 end
815805
816- sig { params ( dep : Dependency ) . returns ( Options ) }
817- def inherited_options_for ( dep )
818- inherited_options = Options . new
819- u = Option . new ( "universal" )
820- if ( options . include? ( u ) || formula . require_universal_deps? ) && !dep . build? && dep . to_formula . option_defined? ( u )
821- inherited_options << u
822- end
823- inherited_options
824- end
825-
826- sig { params ( deps : T ::Array [ [ Dependency , Options ] ] ) . void }
806+ sig { params ( deps : T ::Array [ Dependency ] ) . void }
827807 def install_dependencies ( deps )
828808 if deps . empty? && only_deps?
829809 puts "All dependencies for #{ formula . full_name } are satisfied."
830810 elsif !deps . empty?
831811 if deps . length > 1
832812 oh1 "Installing dependencies for #{ formula . full_name } : " \
833- "#{ deps . map ( & :first ) . map { Formatter . identifier ( _1 ) } . to_sentence } " ,
813+ "#{ deps . map { Formatter . identifier ( _1 ) } . to_sentence } " ,
834814 truncate : false
835815 end
836- deps . each { | dep , options | install_dependency ( dep , options ) }
816+ deps . each { install_dependency ( _1 ) }
837817 end
838818
839819 @show_header = true if deps . length > 1
@@ -865,8 +845,8 @@ def fetch_dependency(dep)
865845 fi . fetch
866846 end
867847
868- sig { params ( dep : Dependency , inherited_options : Options ) . void }
869- def install_dependency ( dep , inherited_options )
848+ sig { params ( dep : Dependency ) . void }
849+ def install_dependency ( dep )
870850 df = dep . to_formula
871851
872852 if df . linked_keg . directory?
@@ -897,7 +877,6 @@ def install_dependency(dep, inherited_options)
897877 options = Options . new
898878 options |= tab . used_options if tab . present?
899879 options |= Tab . remap_deprecated_options ( df . deprecated_options , dep . options )
900- options |= inherited_options
901880 options &= df . options
902881
903882 installed_on_request = df . any_version_installed? && tab . present? && tab . installed_on_request
@@ -1390,21 +1369,20 @@ def fetch_dependencies
13901369 return if ignore_deps?
13911370
13921371 # Don't output dependencies if we're explicitly installing them.
1393- deps = compute_dependencies . reject do |( dep , _options ) |
1372+ deps = compute_dependencies . reject do |dep |
13941373 self . class . fetched . include? ( dep . to_formula )
13951374 end
13961375
13971376 return if deps . empty?
13981377
13991378 unless download_queue
1400- dependencies_string = deps . map ( &:first )
1401- . map { |dep | Formatter . identifier ( dep ) }
1379+ dependencies_string = deps . map { |dep | Formatter . identifier ( dep ) }
14021380 . to_sentence
14031381 oh1 "Fetching dependencies for #{ formula . full_name } : #{ dependencies_string } " ,
14041382 truncate : false
14051383 end
14061384
1407- deps . each { | ( dep , _options ) | fetch_dependency ( dep ) }
1385+ deps . each { fetch_dependency ( _1 ) }
14081386 end
14091387
14101388 sig { returns ( T . nilable ( Formula ) ) }
@@ -1627,7 +1605,7 @@ def forbidden_license_check
16271605 end
16281606
16291607 unless ignore_deps?
1630- compute_dependencies . each do |( dep , _options ) |
1608+ compute_dependencies . each do |dep |
16311609 dep_f = dep . to_formula
16321610 next unless SPDX . licenses_forbid_installation? dep_f . license , forbidden_licenses
16331611
@@ -1659,7 +1637,7 @@ def forbidden_tap_check
16591637 end
16601638
16611639 unless ignore_deps?
1662- compute_dependencies . each do |( dep , _options ) |
1640+ compute_dependencies . each do |dep |
16631641 dep_tap = dep . tap
16641642 next if dep_tap . blank? || ( dep_tap . allowed_by_env? && !dep_tap . forbidden_by_env? )
16651643
@@ -1700,7 +1678,7 @@ def forbidden_formula_check
17001678 end
17011679
17021680 unless ignore_deps?
1703- compute_dependencies . each do |( dep , _options ) |
1681+ compute_dependencies . each do |dep |
17041682 dep_name = if forbidden_formulae . include? ( dep . name )
17051683 dep . name
17061684 elsif dep . tap . present? &&
0 commit comments