Tap Updater is a tool that figures out the order in which it is safe to update packages in a Homebrew tap.
Tap Updater can be used to figure out the order in which to update...
./tap-updater.py linuxbrew/xorg
./tap-updater.py linuxbrew/xorg/mesa
./tap-updater.py -a linuxbrew/xorg/mesa
./tap-updater.py $(brew list)
To exclude formulae, use -s
or --skip
flag followed by the formulae you'd like to skip.
Note, because --skip
accepts arbitrary number of parameters, specify it
AFTER the formulae and taps you'd like to process. Example:
./tap-updater.py linuxbrew/xorg --skip linuxbrew/xorg/mesa linuxbrew/xorg/libva linuxbrew/xorg/libvdpau-va-gl
Enable verbose output. Mutually exclusive with -q
| --quiet
.
Silence any output. Mutually exclusive with -v
| --verbose
.
Enable output of additional low-level information useful for debugging issues.
Display help/usage information.
Don't display summary table at the end of analysis.
Specify name of the log file (Default: tap_updater.log
). Example:
./tap-updater.py --log-file xorg.log linuxbrew/xorg
$ ./tap-updater.py linuxbrew/extra
=====================================================================================
Formula | Current version | New version | Outdated dependencies
=====================================================================================
linuxbrew/extra/singularity | 2.6.0 | 3.3.0-rc.1 |
linuxbrew/extra/strace | 5.1 | 5.2 |
=====================================================================================
Batch 1: linuxbrew/extra/singularity linuxbrew/extra/strace
Suggested commands for updating formulae in Batch 1:
brew bump-formula-pr --no-browse --url=https://github.com/singularityware/singularity/releases/download/3.3.0-rc.1/singularity-3.3.0-rc.1.tar.gz linuxbrew/extra/singularity
brew bump-formula-pr --no-browse --url=https://github.com/strace/strace/releases/download/v5.2/strace-5.2.tar.xz linuxbrew/extra/strace
| Please verify that URLs exist before executing the above commands!
| Consider adding 'version "x.y.z"' to the formula if detected 'new_version' is likely
| to cause problems for Homebrew version detection mechanism.
but skip some formulae (linuxbrew/extra/singularity
).
$ ./tap-updater.py linuxbrew/extra --all --skip linuxbrew/extra/singularity
================================================================================
Formula | Current version | New version | Outdated dependencies
================================================================================
linuxbrew/extra/strace | 5.1 | 5.2 |
homebrew/core/nettle | 3.4.1 | 3.5.1 |
homebrew/core/sqlite | 3.28.0 | 3.29.0 |
================================================================================
Batch 1: linuxbrew/extra/strace homebrew/core/nettle homebrew/core/sqlite
Suggested commands for updating formulae in Batch 1:
brew bump-formula-pr --no-browse --url=https://github.com/strace/strace/releases/download/v5.2/strace-5.2.tar.xz linuxbrew/extra/strace
brew bump-formula-pr --no-browse --url=https://ftp.gnu.org/gnu/nettle/nettle-3.5.1.tar.gz homebrew/core/nettle
| Please verify that URLs exist before executing the above commands!
| Consider adding 'version "x.y.z"' to the formula if detected 'new_version' is likely
| to cause problems for Homebrew version detection mechanism.
Tap Updater outputs "batches" of formulae in which packages can be updated. Formulae in a specific batch can be updated in any order. However, PRs to update formulae from the next batch should not be created until all formulae from the current batch have been updated.
Important: Create Pull Requests to update formulae in Batch 1.
The process of creating PRs to update formulae is (still) semi-automatic:
you can use brew bump-formula-pr --url=... formula-name
suggested by
Tap Updater but make sure to check that suggested URLs exist.