there was another untested place where the cask methods were being
re-implemented. these were preventing casks with caveats from working
properly.
refs #9494
It seems like in 10.10.3 apple, in its infinite wisdom, decided that the
bsexec option for launchctl would suddenly require root privileges.
Since we were proactively using bsexec for all DMG mounts, this was
breaking dmg-based Casks for all early adopters of 10.10.3.
We can regroup to try and address #7132 another way, but for now, just
pulling all the bsexec stuff out.
The `Hbc.outdated` boolean was in the way of my implementation of an
`outdated` scope for `brew cask outdated`, so I took the opportunity to:
* rename the flag internally to `cleanup_outdated`
* move the cleanup tests over to rspec and rework them to test in a
stubbed cleanroom environment
* refactor the implementation of cleanup to make it a bit more
testable - most importantly: inject the cache location and outdated
config dependencies instead of looking them up from constants
Note that there's no change to the user-facing interface, it's still
```
brew cask cleanup --outdated
```
Hbc is the namespace, Hbc::Cask is the object representing a Cask
One step on the path to reducing the surface area of the God-object
we've grown over the years. :)
Let the terminal decide how to display bold. Fixes#9349.
The issue arose when integrating Homebrew's `Tty` class.
Homebrew's `Tty.white` actually emits escapes for bold.
Fixing `Tty.white` to do what the method name says caused
loss of visibility on light backgrounds.
With the expectation that:
- we will add gpg checks;
- we may add a `verify` verb;
- we may introduce new means of verification, e.g. OS X's `codesign`
* contain logic within module Hbc::MacOS
* add release_with_patchlevel method
* allow MACOS_RELEASE and MACOS_RELEASE_WITH_PATCHLEVEL
environment variables to override the determined release
values regardless of whether under the test harness
and corresponding testing_env.rb.
* recast HOMEBREW_BREW_FILE as Hbc.homebrew_executable,
defined in Hbc::Locations
* recast HOMEBREW_REPOSITORY as Hbc.homebrew_repository
* recast HOMEBREW_PREFIX as Hbc.homebrew_prefix
* remove HOMEBREW_LIBRARY
* recast existing Hbc.tapspath as Hbc.homebrew_tapspath
to match new methods
fixes#8705
Adobe AIR Installer forbids the silent reinstallation of existing AIR
apps; any attempt fails with exit code 9.
In the absence of known workarounds, we merely wrap the failure in a
clearer error message.
* convert existing Cask:: namespace to Hbc::
* move Homebrew-fork code under Hbc::
* move freestanding classes such as Tty and TopologicalHash under Hbc::
* recast HOMEBREW_CASK_ constants as HBC_
* modify our Homebrew Formula for backward compatibility
* devscripts and dev docs