| Age | Commit message (Collapse) | Author |
|
This shouldn't be possible to occur after #1013 but it makes sense to
add it anyway.
|
|
Otherwise if they are created and empty they may be removed again
before we try to create the `/usr/local/bin/brew` symlink.
|
|
Also migrate people without `HOMEBREW_DEVELOPER` set to the new
location.
|
|
Migrate a HOMEBREW_REPOSITORY and HOMEBREW_PREFIX of `/usr/local` so
that the HOMEBREW_REPOSITORY is now in `/usr/local/Homebrew`. This gives
us more flexibility on changing the repository layout in future and
avoids putting junk in `/usr/local` when not necessary (e.g. our
`README.md`).
|
|
|
|
Move the `LinkedKegs` migration into `utils.rb` so it can also be called
from `brew.rb` on startup.
|
|
Ensure that `brew update` always runs the LinkedKegs migration if needed
as it may not have been run by `brew update` if it was using `--preinstall` or
a `git pull` etc.
Also, if the old paths still exist: just use them instead.
Finally, always try to unlink/unpin before link/pin.
Fixes https://github.com/Homebrew/homebrew-core/issues/4918.
|
|
These don't make sense to be tied to the `HOMEBREW_REPOSITORY` but
instead should live in the `HOMEBREW_PREFIX` as they all relate to its
state.
|
|
|
|
Also, flag those that we never want to be in a manpage.
|
|
These are more files in the HOMEBREW_REPOSITORY that we want to link to
the HOMEBREW_PREFIX.
|
|
Fixes #858.
|
|
Otherwise if your `HOMEBREW_PREFIX` and `HOMEBREW_REPOSITORY` are not
equal then your tap manpages will be linked but your `brew*` ones will
not.
|
|
No longer output every cask under the list of changed formulae but
instead create a dedicated, unprinted report section for casks and then
iterate through that instead.
|
|
|
|
This reverts commit b33b1af073979c8a699ed9688dba37fb7e74f0b5.
|
|
|
|
|
|
`--force` isn't quite what we want here as it'll just allow keg-only
linkage whereas we want to ensure we overwrite anything the Cask
installed.
|
|
Closes #588.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
|
|
|
|
|
|
Do this to ensure that any symlinks in the Homebrew prefix and/or in
Applications are removed to stop issues with stale symlinks causing
Casks from being installed correctly.
|
|
|
|
|
|
|
|
If the deletion of `HOMEBREW_CACHE` fails then the
`.migration_attempted` file will have still been deleted so ensure it is
recreated.
|
|
|
|
* cleanup: accept cache as an argument.
* config: move default HOMEBREW_CACHE to ~/Library.
* brew.1: document new default Homebrew cache.
* update-report: migrate legacy Homebrew cache.
|
|
- When running `brew update` and there’s been no changes from upstream
on any repositories there’s no need to call the (relatively) slow `brew
update-report` when we already know what it will say (“Already up-to
date.”).
- When any`git fetch`es fail then throw out an error at the end of the
output and produce a failing exit code (closes #65).
|
|
|
|
This prevents `brew` self-calls from interacting with the stickiness of
HOMEBREW_NO_ANALYTICS being persisted to the brew repo and accidentally
disabling analytics permanently when it should have been for just one run,
while restoring the stickiness of an explicit user-supplied
HOMEBREW_NO_ANALYTICS.
|
|
Provide a single command that can be run to disable analytics, run it if
`HOMEBREW_NO_ANALYTICS` is ever set and remove the user UUID file in
that case too.
References https://github.com/Homebrew/brew/issues/142.
|
|
Make sure that users are notified on the first run of `brew update`
after we enabled analytics about how it works and how to opt-out. This
will be shown to all users who have not already seen this message from
`brew update` or through a new Homebrew installation.
References https://github.com/Homebrew/install/pull/42
References https://github.com/Homebrew/brew/issues/142
|
|
Also, slightly tweak the behavior of `brew update` in this case so that
it doesn't print annoying output and still allows the `brew edit` flow
for people with `HOMEBREW_DEVELOPER` set.
|
|
Update the report logic, since now all formulae are in the taps.
|
|
We don't need to migrate the tapped formulae from symlink-based to
directory-based structure any more.
Instead, we add core tap install check for `brew update-report` which
will be invoked by `brew update`.
|
|
Core tap will be separated from core code in the near future.
It makes sense to rename it to CoreTap.
|
|
|
|
* Better variable/class name. `update-report` isn't response to actual
update.
* Use abstraction offered by Reporter and ReproterHub class.
* Failure on one tap won't affect migration preformed by other taps.
* Simplify logic and prepare for core/formula separation.
|
|
* Better variable/class name.
* Remove obsolete update_renamed, this is now handled inside each
reporter.
* Remove obsolete formula file path to name computation, which is also
handled by reporter.
* Hide low lever implementation detail to offer better abstraction.
Use `add(reporter)` instead of `Hash#update` to add new report.
|
|
* Avoid tons of unnecessary file path manipulation. Use abstraction
offered by Tap class if possible.
* Handle formula rename/tap migration inside reporter in per tap basis.
* Avoid duplicated computation.
* Remove redundant/dead code.
|
|
This would be displayed more than once when verbose output was enabled.
Closes Homebrew/homebrew#48469.
|
|
Allow people to run this command (so we can ask people to test it)
without having to set `HOMEBREW_DEVELOPER`.
Closes Homebrew/homebrew#48260.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
|
|
rename_taps_dir_if_necessary must be performed before actual update.
Otherwise, it will report that `HOMEBREW_UPDAET_BEFORE<REPO_VAR>` is
unset.
|
|
* use HOMEBREW_REPOSITORY instead of HOMEBREW_PREFIX
* better performance:
* update-bash: avoid shellout
* update-report: use strip_prefix and tr
* more robust:
* explicitly handle the case when repo is HOMEBREW_REPOSITORY to avoid
to handle the trailing backslash.
* handle both lower case and upper case when stripping non alpha and
digital characters.
|
|
|
|
This will become the default updater at a later point in the future.
|