Skip to content
Snippets Groups Projects
This project is mirrored from https://github.com/Homebrew/brew.git. Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer or owner.
Last successful update .
  1. Dec 29, 2014
  2. Nov 22, 2014
  3. Aug 28, 2014
  4. Aug 24, 2014
  5. Aug 12, 2014
  6. Jul 31, 2014
    • Jack Nagel's avatar
      Remove confusing implicit options handling · fd86e6d6
      Jack Nagel authored
      This code is supposed to allow
      
        depends_on "foo" => "with-bar"
      
      to work when foo has only a "without-bar" option.
      
      The options system was not designed to support this. Unfortunately, it
      was bolted on anyway. The implementation is extremely difficult to
      understand, and it only works for certain types of options, which is
      confusing from a user's point of view. Luckily, no formulae in core or
      the official taps rely on the behavior in order to function.
      
      It is hindering progress in improving this code, so I am removing it.
      fd86e6d6
  7. Jul 02, 2014
  8. Jun 23, 2014
  9. Mar 01, 2014
  10. Feb 28, 2014
  11. Feb 14, 2014
  12. Jan 04, 2014
    • Mike McQuaid's avatar
      dependency: don't try and expand yourself. · d4db3d5d
      Mike McQuaid authored
      This can happen on e.g. fossil where the dependency HEAD requires having
      an install of fossil in order to check it out. Bit of a silly edge case
      but this handles it.
      
      Fixes Homebrew/homebrew#25605
      d4db3d5d
  13. Dec 10, 2013
  14. Nov 14, 2013
    • Jack Nagel's avatar
      Prevent deps of build-time deps from leaking into the build environment · 2fb5ead3
      Jack Nagel authored
      When decided what dependencies should be part of the build environment
      (and have appropriate entries added to variables like PKG_CONFIG_PATH),
      we select the entire dependency tree except for
      
       (1) inactive optional and recommended deps (2) indirect build-time deps
       (i.e., build-time deps of other deps)
      
      There is a third category that sould be excluded: dependencies of direct
      build-time deps. These are irrelevant to the build, and including them
      can cause unexpected linkages.
      2fb5ead3
  15. Nov 06, 2013
  16. Sep 28, 2013
    • Jack Nagel's avatar
      Allow Dependency objects to be marshaled · a2c949bf
      Jack Nagel authored
      When an exception is raised in the build process, it is marshaled and
      sent to the main process over a pipe. The marshaled exception has
      a reference to the formula, so the formula and all objects it references
      are marshaled as well.
      
      Previously this did not include dependencies, as they were stored only
      on the class and not referenced by an instance variable. However, now
      they are stored on SoftwareSpec instances, to which the formula *does*
      have a direct reference, so they must be marshalable.
      a2c949bf
  17. Aug 21, 2013
  18. Jul 23, 2013
  19. Jun 27, 2013
    • Jack Nagel's avatar
      Fix some #eql? correctness issues · 10949ad7
      Jack Nagel authored
      The implementation of #eql? and #hash should ensure that if a.eql?(b),
      then a.hash == b.hash, but #eql? itself should not *depend* on #hash.
      
      For example, given
      
        class Thingy
          def eql?
            instance_of?(other.class) && hash == other.hash
          end
      
          def hash
            [name, *tags].hash
          end
        end
      
      if #hash produces a collision for different values of [name, *tags], two
      Thingy objects will appear to be eql?, even though this is not the case.
      Instead, #eql? should depend on the equality of name and tags directly.
      10949ad7
  20. Jun 25, 2013
  21. Jun 24, 2013
  22. Jun 09, 2013
    • Jack Nagel's avatar
      Use actual class of dep when recreating merged deps · b0fe493c
      Jack Nagel authored
      Refs Homebrew/homebrew#19182.
      b0fe493c
    • Jack Nagel's avatar
      Merge repeated deps with differing options · 8cb861c6
      Jack Nagel authored
      When expanding dependencies, repeated deps are treated as equal and all
      but the first are discarded when #uniq is called on the resulting array.
      However, they may have different sets of options attached, so we cannot
      assume they are the same.
      
      After the initial expansion, we group them by name and then create a new
      Dependency object for each name, merging the options from each group.
      
      Fixes Homebrew/homebrew#20335.
      8cb861c6
  23. Jun 08, 2013
  24. Jun 04, 2013
  25. Jun 03, 2013
    • Samuel John's avatar
      Python 2.x and 3.x support · c5248956
      Samuel John authored
      New `depends_on :python` Dependency.
      New `depends_on :python3` Dependency.
      
      To avoid having multiple formulae with endings -py2 and -py3,
      we will handle support for different pythons (2.x vs. 3.x)
      in the same formula.
      Further brewed vs. external python will be transparently supported.
      
      The formula also gets a new object `python`, which is false if
      no Python is available or the user has disabled it. Otherwise
      it is defined and provides several support methods:
      
      python.site_packages # the site-packages in the formula's Cellar
      python.global_site_packages
      python.binary # the full path to the python binary
      python.prefix
      python.version
      python.version.major
      python.version.minor
      python.xy # => e.g. "python2.7"
      python.incdir # includes of python
      python.libdir # the python dylib library
      python.pkg_config_path # used internally by brew
      python.from_osx?
      python.framework?
      python.universal?
      python.pypy?
      python.standard_caveats # Text to set PYTHONPATH for python.from_osx?
      python.if3then3 # => "" for 2.x and to "3" for 3.x.
      
      Further, to avoid code duplication, `python` takes an optional
      block that is run twice if the formula defines depends_on
      :python AND :python3.
      
      python do
        system python, 'setup.py', "--prefix=#{prefix}"
      end
      
      Read more in the Homebrew wiki.
      c5248956
  26. May 26, 2013
  27. May 11, 2013
  28. May 07, 2013
    • Jack Nagel's avatar
      Reduce allocations in dependency construction · b3220203
      Jack Nagel authored
      By always passing around a single, unnested array rather than splatting
      and then defensively flattening and compacting things, we can avoid
      allocating a bunch of unnecessary arrays. This gives a performance boost
      of roughly 4% when enumerating 2500 formulae, and has the side effect of
      cleaning up the dependency API.
      b3220203
  29. Feb 01, 2013
  30. Jan 28, 2013
  31. Jan 27, 2013
Loading