aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/test/test_x11_deps.rb
AgeCommit message (Collapse)Author
2013-04-02Fix requires in test_x11_dependency.rbJack Nagel
2013-04-01Test that X11 env is triggered correctlyJack Nagel
2013-01-31Proper recursive expansion of requirements with filteringJack Nagel
Expand requirements recursively while applying the same optional? and recommended? filters that dependencies are run through. Options generated by requirements are now checked against the correct list of requirements, eliminating the temporary "best guess" logic in the installer.
2013-01-31Create proxy classes for "partial" X11 dependenciesJack Nagel
When a formula's dependency tree contains more than one X11 dependency, they are de-duplicated by comparing the min_version attribute. However, this can result in broken dependency trees if one of the X11Dependency objects was actually specified as e.g. `:libpng`. In practice, this only matters when one or more of the dependencies has additional metadata that makes it distinct from the rest, i.e. an :optional or :recommended tag. To combat this, make these special, "partial" X11 dependencies instances of different classes so that they are not de-duped. It will still be necessary, at the time when requirements are expanded by the installer, to de-duplicate any remaining X11 dependencies after applying the optional/recommended filters in order to avoid duplicated modifications to the environment (as ENV.x11 is not idempotent). c.f. Homebrew/homebrew#17369.