| Age | Commit message (Collapse) | Author |
|
Fixes Homebrew/homebrew#19460.
Closes Homebrew/homebrew#22375.
|
|
A tapped formula is a ruby file present:
- in the root of the tap
- in directory of the tap called Formula
- in a directory of the tap called HomebrewFormula
And nowhere else. This corrects an overzealous definition of tapped
formula in the updater. (the correct definition has been in Pathname
since e613cbe5783cea2abb8100b56c22126a1ab6b9f2)
Refs Homebrew/homebrew#19743.
Closes Homebrew/homebrew#21087.
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
|
|
Closes Homebrew/homebrew#20364.
|
|
Under certain conditions, `brew update` will show doubles. It's a rare
edge-case, but if you have a tap where the name of the formula is identical
with the name of the insalled file, then you see output like this:
==> Updated Formulae
aalib ssh-copy-id
casperjs sshuttle
jack telemachus/anytap/brew-any-tap
mogenerator telemachus/anytap/brew-any-tap
I believe this should fix that.
Closes Homebrew/homebrew#18495.
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
|
|
|
|
Closes Homebrew/homebrew#17814.
|
|
Closes Homebrew/homebrew#11154.
|
|
|
|
Skip any entries returned by `Dir["Library/Taps/*"].each` that are not
directories.
|
|
Closes Homebrew/homebrew#15321.
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
|
|
Possibly would help diagnose: Homebrew/homebrew#13853.
|
|
'which' only returns a Pathname or nil, and doesn't care about anything
sent to stderr, so just silence it by default and combine the two
methods.
Closes Homebrew/homebrew#12115.
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>
|
|
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 Homebrew/homebrew#11158.
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
|
|
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
|
|
|
|
The symlinks in Formula must be updated.
|
|
Required me to spoil tap's code. All in the name of DRY! Alas!
|
|
|
|
If a user has set core.autocrlf = true (which shouldn't ever be used on
OS X, but alas...), a subsequent `brew update` will check out files with
CRLF line endings. Setting core.autocrlf = false in Homebrew's repo
config will override this global setting, and let us check out files
with their in-repository line endings.
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
|
|
|
|
Closes Homebrew/homebrew#7527.
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
|
|
`brew update` was treating all changes to internal commands as
deletions due to a typo, resulting in spurious notifications of removed
commands.
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
|
|
Specify the refspec 'refs/heads/master:refs/remotes/origin/master' so
that the remote-tracking branch origin/master gets update during `brew
update` (git-pull updates remote-tracking branches when invoked
like `git pull` or `git pull origin`, but not `git pull origin master`).
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
|
|
Removed updated external commands, like seriously, who cares? We could add it back as if --verbose is set I guess but in all honesty, if nobody complains then nobody cared.
# We removed many redundant comments
Removed many redundant comments.
Fixes Homebrew/homebrew#7191; though it could be fixed better.
|
|
Fixes Homebrew/homebrew#7220.
|
|
This is more flexible for forks and personal customisations, and also more useful for us collaborators since the origin HEAD will be kept up-to-date.
|
|
It just means nobody knows what is being done without scrolling up and down, up and down the file like a doofus on a pogo stick.
|
|
We don't know what revision the tarball was when homebrew was installed, so all we can do really is hard reset. In theory some set of git commands should suffice, but apparently --soft and --mixed resets ended up putting stuff in the index which would break subsequent `brew updates`.
Fixes Homebrew/homebrew#6851
|
|
Users were seeing local changes in their repository after updating, even
though they had made no local changes.
The repository setup sequence should use `git reset --soft` rather than
vanilla `git reset`, which defaults to '--mixed'. '--soft' updates
_only_ HEAD, leaving the index as-is, allowing future incantations of
`brew update` to proceed without errors.
Fixes Homebrew/homebrew#6732.
|
|
|
|
Because the new installer creates the .git directory when it installs.
|
|
This is how we do it in general in Homebrew.
|
|
|
|
Behaviour for git checkout was changed such that the update would fail because it refused to checkout files on to existing files in the working directory.
This was bad behaviour anyway, we should make efforts to keep any local modifications to the Homebrew checkout. Everything is neatly resolved if we just do a --soft reset.
Closes Homebrew/homebrew#6017.
|
|
This fixes reporting of which formulae changed in git versions where `pull`
output is not compatible.
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
|
|
When running `brew up`, if a mentioned formulae is also installed,
it will get a wildcard start at the end.
It makes it easier to see if any installed formulae is impacted.
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
|
|
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.
|