aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/cmd/install.rb
AgeCommit message (Collapse)Author
2011-12-18--HEAD checksAdam Vandenberg
* Force --HEAD for head-only installs * Don't allow --HEAD for stable-only formulae
2011-12-08IdiomsAdam Vandenberg
2011-12-02Restore --force behaviour in brew-installMisty De Meo
Fixes Homebrew/homebrew#8933. Closes Homebrew/homebrew#8936. Signed-off-by: Charlie Sharpsteen <source@sharpsteen.net>
2011-11-27Re-work ARGV filtering to properly handle --HEADCharlie Sharpsteen
Previously, stripping arguments like `--HEAD` for dependencies failed because that flag affects the installation prefix encoded into formula objects. The previous implementation of `ARGV` filtering tried to contain all changes to a single method call before the `FormulaInstaller` forks. This update spreads things out a bit: - The Homebrew `ARGV` extension adds a new method, `filter_for_dependencies` which strips flags like `--HEAD`, yields to a block, then restores the original contents of ARGV. - The `explicitly_requested?` test, which returns true or false depending on if a formula object is a member of `ARGV.formulae`, is now a method of `Formula` objects. - `FormulaInstaller` objects now execute the installation of dependencies inside an `ARGV.filter_for_dependencies` block if the dependency was `explicitly_requested?`. Fixes Homebrew/homebrew#8668. Closes Homebrew/homebrew#7724.
2011-09-15Check Cellar can be made before installing stuffMax Howell
Refs Homebrew/homebrew#5188.
2011-09-01Edit port/fink warningAdam Vandenberg
2011-09-01Edit port/fink warningAdam Vandenberg
2011-09-01Allow brew install --force againMax Howell
2011-08-24Record which keg is linkedMax Howell
Will be useful for a variety of reasons, but for now, I'm just using it to ensure install won't install again if something is already installed (use brew upgrade instead). But means that brew switch and that can work properly etc.
2011-08-24`brew upgrade`Max Howell
Consequence: you can no longer install when something is already installed, you must upgrade it. This doesn't apply if the formula in question was unlinked. You can still --force installs though. Rationale: the old way of installing over the top would leave symlinks to multiple versions in /usr/local if the old version had a file the newer version didn't. The new upgrade command handles everything properly.
2011-08-17Only error out for `sudo brew install`Max Howell
Note this only happens if Homebrew is *not* installed sudo. Which is most of the time true. Fixes Homebrew/homebrew#6899
2011-07-30Don't abort if /usr/local is not writableMax Howell
Since this is our new policy for /usr/local.
2011-06-06Reformat minimum Xcode checkAdam Vandenberg
2011-03-12Some CleanupMax Howell
2011-03-12Refactor the blacklistsMax Howell
Also don't abort searches if the query matches a blacklist. Eg. `brew search vim` should return macvim and the information that vim itself is not packaged.
2011-03-12More modular cmd/install and FormulaInstallerMax Howell
2011-03-12Refactor the brew command into one file per commandMax Howell
The code was sucking. To the extent that maintenance was hard. It's a lot easier to work with code that is sensibly split at sensible boundaries. So now it is more like that. But the refactor is minimal. Because we don't want you to have more merge hell than absolutely necessary. If you merge you will need to pay attention to brew.h.rb (as it is deleted) and bin/brew (as command logic is gone). It will be painful, but you will just have to help git out by moving any changes around manually. Note compatibility.rb. It ensures that any function renames or removals don't break anything. We're pretty serious about backwards compatibility. And that's because we encourage you to hack around with the innards. And we couldn't do that if we would then just make stuff disappear behind your back.