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. Jul 23, 2013
  2. 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
  3. Jun 25, 2013
  4. Jun 24, 2013
  5. 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
  6. Jun 08, 2013
  7. Jun 04, 2013
  8. 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
  9. May 26, 2013
  10. May 11, 2013
  11. 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
  12. Feb 01, 2013
  13. Jan 28, 2013
  14. Jan 27, 2013
Loading