* Avoid parallel assignment.
* Use Pathname#size instead of File#size
* Use Pathname#directory? instead of File#directory?
* Use basename to check `.DS_Store`. Original regex has poor
performance, and may match with incorrect file.
This commit modifies the whitelisting of the Kibama formula from the
npm audit check to allow the versioned Kibana formulae to receive the
same whitelisting.
ClosesHomebrew/homebrew#47500.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
CMake has -DNDEBUG and -O3 as its default flags for Release builds.
Homebrew clears out the default CMake flags, which is fine for
optimization because Homebrew passes its own optimization flag(s).
-DNDEBUG wasn't added back in, though.
This ensures -DNDEBUG is passed to CMake release builds by default,
instead of individual formulas having to add it explicitly.
This also removes explicit additions of -DNDEBUG from the formulae that
had them -- gflags, llvm, and taglib.
ClosesHomebrew/homebrew#47378.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
Added mention to Cocktail app cleanup/repair/optimizations, that has
some features that when run they restore the /usr/local directory to
the original 'not writable' state in OS X 10.11 .
ClosesHomebrew/homebrew#47379.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
* Use `ARGV.include?` instead of `ARGV.first ==`, so users can pass
`-v`/`-d` before the function flags(i.e. `--list-pinned` etc)
* Restore the ability to call `brew tap --flags tap/name`.
Removes the need to call setup_ghc_compilers in every Haskell language
formula, by automatically calling fails_with.
Adds a :home option to the cabal_sandbox method. This option allows a
specific temporary HOME to be used instead of the current working
directory, and in turn allows a single Cabal package database to be reused
between multiple calls to this method.
Avoids updating the Cabal package database more than once if cabal_sandbox
is called multiple times.
Removes the need to call cabal_clean_lib whenever cabal_sandbox is called,
by automatically cleaning the lib directory.
Adds a :keep_lib option to the cabal_sandbox method. This option allows
opting out of the automatic cleaning.
Ensures build products are always removed from the current working
directory.
Removes a workaround for versions of cabal-install older than 1.20.0.0.
Adds a cabal_sandbox_add_source method.
Adds a :using option to the install_cabal_package method. This option
allows specifying the Haskell language tools that are required to install
a particular formula, and in turn allows formulae to be simplified by
replacing calls to multiple methods with a single call to this method.
Allows customizing the call to install_cabal_package by giving a block.
Removes empty method shells.
ClosesHomebrew/homebrew#47293.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
Also reuse this improved implementation in the GitHub rate limit errors.
ClosesHomebrew/homebrew#44721.
Signed-off-by: Baptiste Fontaine <batifon@yahoo.fr>
Also, print as a warning to STDERR and print a backtrace in debug mode.
ClosesHomebrew/homebrew#47099.
ClosesHomebrew/homebrew#47154.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
If the source contains a broken symlink, `brew bottle` would fail for no
good reason when trying to determine the most recently modified
file. To avoid this, we ignore any files for which stat(2) fails.
ClosesHomebrew/homebrew#47111.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
For users whose local brew is at around 2015-06-11 to 2015-08-06,
running `brew update` will emit following error:
Error: uninitialized constant Formulary::CoreFormulaRepository
This is caused by the same bug described in Homebrew/homebrew#42553.
This commit workarounds this issue and restores `brew update` compatibility
for users mentioned above.
Also cleanup legacy `require "cmd/tap"`.
Let's hide implementation detail on where to find alias directory.
This will benefit future core code and formulae separation.
Also let `brew readall` check aliases for all taps.
To use origin/master as start commit
brew update-test
To use <sha1> as start commit
brew update-test --commit=<sha1>
To use commit at <date> as start commit
brew update-test --before=<date>
Also print start/end commit for debug purpose