This makes `Tap` consistent with what the installer is doing.
Generally shallow clones get slower and slower (and more and more
pointless) the more they are fetched so don't make sense for our
use-case.
Keep the option around anyway because it's useful for integration tests.
- The `--local` option doesn't exist in early versions of git (~1.7),
but its behaviour is the default (saving in the current repo's .git
directory).
- As it's the default across versions, we don't need to specify it
everywhere.
- Reported in Linuxbrew/install issue 78.
This makes use of both the existing interfaces and could use the
existing cache file but we'll create a new one and cleanup the old one
to avoid issues and use a more consistent name.
Formula_files consists of every non-recursive child of formula_dir,
for which formula_file? evaluates to true. formula_file? checks if the file
is a child of formula_dir, which it is by definition. It turns out that by
removing the check, the time used for 'brew search' decreased from 800 ms to
700 ms, noticably faster during tab completion. The same happens with
cask_files and cask_file?
Adjust the rules based on the current codebase. Remove various enable,
disables and default values that are unnecessary. Add more comments
explaining why. Make minor changes needed to enable a few more rules.
This can't be tapped on vanilla Homebrew/brew because things like e.g.
`GlibcRequirement` are missing. We will put this back when the Linuxbrew
to Homebrew migration is complete.
Git is a transport and storage mechanism for us so we don't want to
allow arbitrary customisation of this due to user issues e.g. #3664
and #3561.
Fixes#3664.
Don’t rely on having external commands always present in the PATH in
order to find them. Instead, provide an accessory method to Tap so
they can be added and used when needed.
While we’re here, do some general refactoring and cleanup of the
command code in these places.