Until a point in time when the Cask/Homebrew codebases are harmonised a little
more it probably makes sense to refuse to `cat` Casks. Right now the Homebrew
codebase is only minimally aware of what a Cask is.
FixesHomebrew/homebrew#45300.
FixesHomebrew/homebrew#44630.
ClosesHomebrew/homebrew#45302.
Signed-off-by: Dominyk Tiller <dominyktiller@gmail.com>
* Checks for placement of the bottle modifier variable.
* Checks there isn't a bottle modifier and a bottle do block - The former makes
the latter redundant.
ClosesHomebrew/homebrew#45146.
Signed-off-by: Dominyk Tiller <dominyktiller@gmail.com>
Firm up some of the wording and remove stuff given that 10.10.1 didn't reset permissions back.
ClosesHomebrew/homebrew#45267.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
Provide `OS::Mac.prerelease?` for pre-release checks and use it where
appropriate. This should simplify updating the test once a new OS X
release lands.
This also fixes a bug in `BuildError#dump`, where an empty warning
message was printed on El Capitan after a failed from-source build,
because the check there and the one in `check_for_unsupported_osx` were
out of sync.
ClosesHomebrew/homebrew#45257.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
`Keg#app_installed?` only checks the formula prefix and `libexec/` for
.app bundles to determine if a formula provides any. This is used by
`Caveats#app_caveats` to generate an appropriate message. The same list
should be used by `brew linkapps` for consistency.
Reduce likelihood of future inconsistencies by creating `Keg#apps` and
using it in place of the duplicate code.
ClosesHomebrew/homebrew#45173.
Signed-off-by: Xu Cheng <xucheng@me.com>
Use `start_with?` to make sure the symlink actually points into one of
the Homebrew directories (depending on given arguments). Previously,
only a substring match was used, which would also remove a symlink to a
hypothetical `/opt/unrelated/usr/local/opt/Unrelated.app`. Even if
unlikely to occur, altering stuff unrelated to Homebrew is bad.
Furthermore, make sure to always use a trailing slash with directories.
Otherwise, e.g., `brew unlinkapps qt` will unlink .app bundles of both
`qt` and `qt5` if both are installed and `brew linkapps qt qt5` was
issued before. (Please ignore that `qt` and `qt5` offer a conflicting
set of .app bundles. This will have to be addressed elsewhere.)
ClosesHomebrew/homebrew#45174.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
`reinstall` can currently be executed under sudo and has every chunk of problems
running install under sudo does when `brew` isn't root owned.
Likewise with `postinstall` which we increasingly use to create directories and
move/install files elsewhere. Using sudo there both masks deeper issues and
makes uninstall troublesome.
ClosesHomebrew/homebrew#45112.
Signed-off-by: Dominyk Tiller <dominyktiller@gmail.com>
Add links to specific jenkins jobs described in
Brew-Test-Bot-For-Core-Contributors.md
ClosesHomebrew/homebrew#45052.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
dylib install_names are presently rewritten relative to HOMEBREW_PREFIX,
except for keg-only formulas, which are rewritten relative to
opt_prefix.
If we make a formula keg_only, all of its dependents need to be bumped,
since it will no longer exist in HOMEBREW_PREFIX and all of the links
will be written incorrectly.
If we always use opt_prefix, we avoid that dilemma, and make installed
packages more robust if a dependency is `brew unlink`ed.
ClosesHomebrew/homebrew#43518.
Signed-off-by: Dominyk Tiller <dominyktiller@gmail.com>
The yellow background made the text unreadable for light-on-dark color
schemes. Fix by making the highlighted text just bold.
FixesHomebrew/homebrew#45028.
ClosesHomebrew/homebrew#45030.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
Moves the "Checking out" output to where checkouts actually happen, to avoid spurious checkout announcements.
ClosesHomebrew/homebrew#45019.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>