Per document:
> -f, --force
> When git fetch is used with <rbranch>:<lbranch> refspec, it refuses
> to update the local branch <lbranch> unless the remote branch
> <rbranch> it fetches is a descendant of <lbranch>. This option
> overrides that check.
If it's not a tap, we test formula on CoreTap. This can happen
if we run test on a fork, e.g. Linuxbrew or future Homebrew/brew.
ClosesHomebrew/homebrew#49844.
Signed-off-by: Xu Cheng <xucheng@me.com>
MLton is whole-program, optimizing compiler for Standard ML.
A previous mlton formula simply installed the upstream binary release
and was moved to the boneyard as a binary-only formula (see
Homebrew/homebrew#21780).
This new mlton formula builds from source, using the upstream binary
release to bootstrap.
ClosesHomebrew/homebrew#48694.
Signed-off-by: Andrew Janke <andrew@apjanke.net>
These methods will be used in `brew --version`, `brew config`
and `brew doctor` after core/formula separation.
ClosesHomebrew/homebrew#49796.
Signed-off-by: Xu Cheng <xucheng@me.com>
This commit will help to mitigate bug Homebrew/homebrew#42553 on certain old Homebrew installations
(e.g. `osx_image: xcode6.4` on Travis CI) for future core/formula
separation.
On that particular Homebrew installations, `formulary.rb` will be loaded after
`git pull` is finished during `brew update`, which will then load `core_formular_repository.rb`.
By introducing `require "tap_migrations"` and `require "formula_renames"` at the top of
`core_formular_repository.rb`, we could use `tap_migrations.rb` as a
vector to preform certain hack for future core/formula separation.
If a formula's class name contains an uppercase-spelled acronym, the
messages given by `brew install` can be pretty confusing (it recommends
a formula named exactly the same…)
ClosesHomebrew/homebrew#49639.
Signed-off-by: Tim D. Smith <git@tim-smith.us>
Based on recent feedback on some pull requests, I touched up the section about adding tests to formula.
I wanted to make it clearer that the examples demonstrate how to create files on the fly and add a pointer to the tinyxml2 formula (DomT4 pointed it out to me as a good example).
ClosesHomebrew/homebrew#49641.
Signed-off-by: Dominyk Tiller <dominyktiller@gmail.com>
Follow-up to Homebrew/homebrew#49327 that leaves empty argument handling to the Ruby code
(it is a bit more sophisticated and distinguished between `help` and an
empty argument list and treats them differently) instead of hard-wiring
the former to the `help` command.
ClosesHomebrew/homebrew#49538.
Signed-off-by: Martin Afanasjew <martin@afanasjew.de>
Because the versions are read from directory listings, we get
alphabetical sorts of version numbers in `brew outdated` output:
some-keg (10.1.10, 10.1.11, 10.1.9 < 10.1.12)
This is nicer:
some-keg (10.1.9, 10.1.10, 10.1.11 < 10.1.12)
ClosesHomebrew/homebrew#49534.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
The current approach of suppressing all output regardless of what the
error is makes it very hard to debug any issues and misread but valid
Mach-O files will be silently interpreted as non-Mach-O files instead.
Prefer to fail if we are a Homebrew developer or running on the bot
(`HOMEBREW_DEVELOPER=1`), so that problems will be noticed and fixed
before the silent failure leads to hard-to-diagnose user problems.
ClosesHomebrew/homebrew#48817.
Signed-off-by: Martin Afanasjew <martin@afanasjew.de>
* 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.
* Use `Tap#formula_dir` instead of `Tap#formula_files` to find formula
file to have better performance and avoid caching issue.
* Change the loader logic to search name -> search alias -> search old name.
This is more consistence with what we do when loading core formula
file.
ClosesHomebrew/homebrew#49484.
Signed-off-by: Xu Cheng <xucheng@me.com>
Fixes a regression introduced by Homebrew/homebrew#47950 in 9e3ee3e causing build
failures with the error
cabal: The file does not exist ''.
This will occur whenever the optional :flags key isn't in the options
hash passed to install_cabal_package.
ClosesHomebrew/homebrew#49425.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
When there are merge conflicts we fail pretty hard. This is still
possible after this commit but at least we've given Git enough pointers
to make it less likely.
ClosesHomebrew/homebrew#49299.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
To address issue Homebrew/homebrew#47346 (git-annex-webapp missing), we explicitly
enable the "webapp" flag for git-annex. This should prevent git-annex
from being built without the webapp and make the build fail if there is
e.g. a dependency issue.
ClosesHomebrew/homebrew#47950.
Signed-off-by: Dominyk Tiller <dominyktiller@gmail.com>
The default max-backjumps can be too low, especially since
Language::Haskell::Cabal doesn't guarantee an LTS config.
In particular, this fixes a git-annex build failure in Homebrew/homebrew#47950ClosesHomebrew/homebrew#49158.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
FileUtils::fu_get_gid only started doing the conversion of the group
to_s automatically from OS X 10.6.8 (ruby-1.8.7-p358) forward.
OS X 10.6.7 (ruby-1.8.7-p174) would fail in brew's FileUtils::mktemp with the
error "Error: can't convert Fixnum into String."
FixesHomebrew/homebrew#49045FixesHomebrew/homebrew#49348ClosesHomebrew/homebrew#49369.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
The default HOMEBREW_LIBRARY_PATH should be
/usr/local/Library/Homebrew
not
/usr/local/Library/Homebrew/Homebrew
ClosesHomebrew/homebrew#49384.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
Main reasons for boneyard:
* As this formula now stands, it fails to build (with a mysterious
error) against FFmpeg 3.0 (#49178);
* This is a GUI-only tool (look at its awkward test), so it doesn't
quite belong to core to begin with; and due to the build issue above,
work is needed if it is to be revived in homebrew/gui;
* There's not enough interest, seeing that we are two releases or half a
year behind, and no user even proposed a version bump;
* Upstream's preferred method of installation is the app bundle (which
seems to be a much more complete solution, given the app bundle's
size), distributed in binary disk images.
More discussions in Homebrew/homebrew#49178.
ClosesHomebrew/homebrew#49378.
Signed-off-by: Dominyk Tiller <dominyktiller@gmail.com>