| Age | Commit message (Collapse) | Author |
|
Tapped formulae that dupe those in core now display the correct URL when
invoked like `brew info homebrew/dupes/openssl`.
This also fixes the broken `brew info` test.
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
|
|
|
|
Closes #11418.
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
|
|
The download strategy will print the cached location if we've already
fetched it, so avoid printing redundant information.
Also just "puts" it instead of using a second `ohai` line.
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
|
|
|
|
We mark the linked keg with an asterisk when multiple kegs exist, but
not when there is only a single keg. Start marking even in this case,
giving consistent behavior and a reliable indicate of the link status.
Fixes #11300.
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
|
|
|
|
|
|
|
|
Closes #11183.
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
|
|
Using each_cons() "works", but to report all changes correctly we need
to look at the last elements even after we've looked at the last 3
consecutive elements.
Instead, let's parse each line of the raw diff output using a regexp.
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
|
|
Callers of FormulaInstaller now usually unlink the existing keg prior to
running the installer. However, Tab.for_formula uses the LinkedKeg
record to obtain the tab.
Since we need the tab to persist install options across upgrades, we
must start creating the Tab object before unlinking the old keg and
passing it to the FormulaInstaller.
Fixes #11086.
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
|
|
Renamed formulae will cease to display as an add/delete pair and instead
end up the in the "Renamed" section. In the future we should be able to
take this information and use it to rename existing kegs during updates,
allowing us to rename formulae without breaking upgrades.
Renaming a formula requires renaming the class, so there will be at
least one add/delete pair in the file. Thus, the similarity threshold
for detecting renames is set at 85% to allow a little bit of content
turnover without losing track of the rename.
Closes #11158.
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
|
|
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
|
|
If the tap-formula wasn't symlinked for some reason, don't throw an exception—the job is already done.
|
|
Having path directories with trailing slashes can cause other false
warnings.
Closes #9986.
|
|
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
|
|
|
|
Closes #11044.
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
|
|
The print wrapper which has its own `puts` broke this line; though with
the changes to `link` it isn't necessary any longer, so just remove it.
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
|
|
|
|
|
|
In this case the user will simply have to delete all but one keg in order to use the command that uses ARGV.kegs.
Refs #11050.
|
|
If the link already exists exactly (well almost exactly) as we are about to correct it, then it's okay. Otherwise we error out. This is a safe choice, and really, the correct choice too.
This will prevent the tickets like #11050 from occurring.
|
|
Refs http://stackoverflow.com/questions/9762943
The system ln no longer outputs anything. Though the user can force its output with a --verbose of course. So in cases where it's not the usual of: not writable or existing file, we can ask the user to run with --verbose. I don't particularly like hiding its output, but it just confused the error IMO since it is creating a relative symlink the output was weird every time I've seen it in tickets.
I made a print wrapper so that the brew-link output doesn't get mucked up if an exception is thrown.
|
|
|
|
|
|
Fixes #10958.
|
|
|
|
Again, "Homebrew" is changed to "homebrew" before rendering to the user.
|
|
We allow homebrew/dupes for instance, rather than Homebrew/dupes. Because nobody likes shifting in the terminal.
In the process of doing this I discovered some case-insensitive filesystem bugs we have avoided before because I had the foresight to mandate lowercase in formula names. GitHub considers Homebrew and homebrew to be different (even though you can't create both). So we had to allow case insensitivity in tap input. I have made it now so the resulting directory however is lowercased, neatly avoiding the issue. And so we also downcase tap arguments when applying them to tap directories or formula.
|
|
|
|
The symlinks in Formula must be updated.
|
|
brew-update needs to be able to unsymlink removed stuff from taps too.
|
|
For when the symlink for a tap already exists and points to the thing we are about to symlink. This can happen, mostly because my code has sucked, but since the filesystem can be edited by the user at whim, it's possible then too.
|
|
Fixes #11018.
|
|
We warn if you are not running the latest Leopard or Snow Leopard.
(We do not currently check Lion or Mountain Lion versions.)
|
|
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
|
|
|
|
Closes #8870.
|
|
Fixes:
$ brew tap adamv/alt
...blah blah blah..
$ brew tap josegonzalez/php
...blah blah blah...
Warning: Could not tap josegonzalez/php/php over mxcl/master/php
Where it should be "over adamv/alt/php".
|
|
Fixes #10994.
|
|
This means `brew search` always does some network operations. Which is a shame, but I think (for brew) fine. Probably the no-connectivity handling needs to be improved.
|
|
|
|
This shouldn't happen but is possible and we should handle it.
Also added some puts when tapping/untapping.
|
|
I got fed up writing HOMEBREW_REPOSITORY/"Library" and also correcting mistakes when I did HOMEBREW_PREFIX instead.
|
|
|
|
|
|
Since these cause trouble.
|
|
Required me to spoil tap's code. All in the name of DRY! Alas!
|