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. :)
* 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
* 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
into our codebase.
* recast in terms of existing Cask::Utils.stringify_columns
* fix stringify columns to use backticks so that stty can detect the tty
* recover desired behavior of not columnizing in stringify_columns if not
on a tty
* update comments re: various Homebrew imports
* this is already a much-simplified version
* recast to avoid using popen_read method
* popen.rb is now unused and is removed
* new file is cask/hardware/cpu.rb
* toplevel ::Hardware namespace is temporarily aliased to Cask::Hardware
and vendor/okjson.rb in our own codebase, recently adopted
from homebrew-fork. JSON reads are used within Homebrew
to support download mirrors and GitHub interface: two things
we might wish to support in the future, but do not at this
time.