10755 Commits

Author SHA1 Message Date
George Hartzell
76767f3d6e Formula-Cookbook: Improve testing suggestions
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).

Closes Homebrew/homebrew#49641.

Signed-off-by: Dominyk Tiller <dominyktiller@gmail.com>
2016-02-29 16:30:23 +00:00
Tim D. Smith
b4edf23a36 test-bot: make bottle stats visible by default
Closes Homebrew/homebrew#49620.
2016-02-28 09:51:14 -08:00
Martin Afanasjew
bd679c7dc3 brew.sh: improve empty argument handling
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.

Closes Homebrew/homebrew#49538.

Signed-off-by: Martin Afanasjew <martin@afanasjew.de>
2016-02-27 18:34:31 +01:00
Martin Afanasjew
2ab4f74527 brew.sh: drop reference to removed 'update-ruby'
This is a follow-up fix to a minor oversight in Homebrew/homebrew#49523.
2016-02-26 14:33:40 +01:00
Xu Cheng
eb6f970b90 tap: support --quieter flag
Closes Homebrew/homebrew#49551.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-02-26 18:42:36 +08:00
Xu Cheng
43c6061bc9 Tap#install: support quiet option 2016-02-26 18:42:36 +08:00
Usman Akeju
bbe4191c61 formula: sort outdated versions naturally.
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)

Closes Homebrew/homebrew#49534.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2016-02-26 09:04:05 +00:00
Xu Cheng
b52af53e71 various: use Tap abstraction
formula_rename and tap_migrations are now handled inside Tap.

Closes Homebrew/homebrew#49549.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-02-26 17:00:17 +08:00
Xu Cheng
73b79de7bc ARGV: switch? should only has one dash
If user inputs argument such as `-with-flag`, we can assume it's a bad flag.

Closes Homebrew/homebrew#49256

Closes Homebrew/homebrew#49550.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-02-26 16:50:55 +08:00
Xu Cheng
ba147818cb test_formulary: use CoreFormulaRepository abstraction 2016-02-26 13:33:36 +08:00
Martin Afanasjew
c20809526c os/mac/ruby_mach: don't hide actual parse errors
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.

Closes Homebrew/homebrew#48817.

Signed-off-by: Martin Afanasjew <martin@afanasjew.de>
2016-02-25 21:54:42 +01:00
Martin Afanasjew
01d642f150 vendor/macho: update to 0.2.2-39-ge2fbedc9 2016-02-25 21:54:41 +01:00
Xu Cheng
2496bdf280 remove update-ruby
Closes Homebrew/homebrew#49523.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-02-25 23:05:39 +08:00
Mike McQuaid
61e9d43ead bin/brew: unset POSIX mode.
We're using /bin/bash and not /bin/sh for a reason so don't allow users
to override this (seen in Homebrew/homebrew#49514).

Closes Homebrew/homebrew#49515.
2016-02-25 11:33:04 +00:00
Xu Cheng
9a4987533a update-report: fix new_full_name in report 2016-02-25 17:27:50 +08:00
Xu Cheng
79a01a47cc test_update_report: fix test
Closes Homebrew/homebrew#48546.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-02-25 17:22:28 +08:00
Xu Cheng
239c860863 update-report: refactoring
* 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.
2016-02-25 17:22:28 +08:00
Xu Cheng
95a6067702 update-report: refactoring ReporterHub
* 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.
2016-02-25 17:22:28 +08:00
Xu Cheng
849e62c736 update-report: use tap inside Reporter
* 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.
2016-02-25 17:22:28 +08:00
Xu Cheng
87ecd621eb add Tap#tap_migrations
This enables tap migration feature in per tap case, which will
ultimately help core/formula separation.
2016-02-25 17:22:28 +08:00
Misty De Meo
a7869783ad Haskell: cap cabal-install make jobs at 64
Fixes Homebrew/homebrew#49509.

Closes Homebrew/homebrew#49511.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2016-02-25 08:08:34 +00:00
Shaun Jackman
842e19bbeb README.md: Fix a typo
Closes Homebrew/homebrew#49500.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2016-02-25 08:08:31 +00:00
Xu Cheng
6ac6cb4fcd TapLoader: improve load logic
* 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.

Closes Homebrew/homebrew#49484.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-02-24 20:51:35 +08:00
Paul Phillips
6b6159a858 list: exclude .github from unbrewed
Recently added files polluting brew ls --unbrewed results.

Closes Homebrew/homebrew#49456.

Signed-off-by: Baptiste Fontaine <batifon@yahoo.fr>
2016-02-23 22:39:14 +01:00
Dominyk Tiller
a0855fde26 README: use secure SFC links 2016-02-23 11:46:34 +00:00
Mike McQuaid
6ff6786145 README: add SFC and donations section. 2016-02-23 10:26:31 +00:00
ilovezfs
4c1e415bff haskell: fix empty flags build failures
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.

Closes Homebrew/homebrew#49425.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2016-02-22 16:16:50 +00:00
Baptiste Fontaine
1208e26c74 audit: a couple more tests
Closes Homebrew/homebrew#49404.

Signed-off-by: Baptiste Fontaine <batifon@yahoo.fr>
2016-02-22 12:31:51 +01:00
Mike McQuaid
3505509bae update: better handle merge conflicts.
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.

Closes Homebrew/homebrew#49299.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2016-02-22 09:00:35 +00:00
Cedric Staub
cc3e2e8f0f git-annex: force-enable "webapp" flag
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.

Closes Homebrew/homebrew#47950.

Signed-off-by: Dominyk Tiller <dominyktiller@gmail.com>
2016-02-22 01:32:42 +00:00
Baptiste Fontaine
bb37aa2824 go: warn about no-op stage_deps calls
Closes Homebrew/homebrew#49389.

Signed-off-by: Baptiste Fontaine <batifon@yahoo.fr>
2016-02-21 21:21:23 +01:00
ilovezfs
6a1a57423b Haskell#cabal_install more robust deps resolution
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#47950

Closes Homebrew/homebrew#49158.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2016-02-21 18:40:36 +00:00
ilovezfs
2517d396aa FileUtils::mktemp fix for OS X 10.6.7 and earlier
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."

Fixes Homebrew/homebrew#49045
Fixes Homebrew/homebrew#49348

Closes Homebrew/homebrew#49369.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2016-02-21 17:34:19 +00:00
ilovezfs
e6501c3768 HOMEBREW_LIBRARY_PATH: remove redundant /Homebrew
The default HOMEBREW_LIBRARY_PATH should be
  /usr/local/Library/Homebrew
not
  /usr/local/Library/Homebrew/Homebrew

Closes Homebrew/homebrew#49384.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2016-02-21 17:34:17 +00:00
Zhiming Wang
18b20c9eaf synfigstudio: boneyard
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.

Closes Homebrew/homebrew#49378.

Signed-off-by: Dominyk Tiller <dominyktiller@gmail.com>
2016-02-21 04:24:34 +00:00
Dominyk Tiller
e00375e381 test_pathname: add append_lines tests
Closes Homebrew/homebrew#49233.

Signed-off-by: Dominyk Tiller <dominyktiller@gmail.com>
2016-02-21 04:22:23 +00:00
Dominyk Tiller
ff4d16deeb pathname: add append_lines method
* Blocks writing of new files via accidental typos, etc, which the normal open("blah", "a") doesn't.
* Where files don't exist they should ideally be using `(buildpath/"dog").write` instead of open("blah", "a") already.
* It's a bit less cluttered looking if you need several writes to different files in the formula, IMO.
2016-02-21 04:22:23 +00:00
Xu Cheng
7c9dff1f1e plist_caveats: ensure it ending with newline
Closes Homebrew/homebrew#49374.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-02-21 12:15:31 +08:00
Dominyk Tiller
bfbdfe8d9d env/shared: ignore perl opts
In theory, letting these be set once wasn't an awful idea because it allows
users choice on where Perl modules end up.

In reality, as we've moved closer to sandboxing and at the same time accepted more
perl binding options into formulae it has been exposed as something of a hellraiser.

It's not that uncommon for Perl users to set a custom `INSTALL_BASE` in the ENV which
means we end up with quite a few formula that fail hard with this sort of error:

```
Only one of PREFIX or INSTALL_BASE can be given. Not both.
```

The other common error, which we discovered via sandboxing, is that the Perl modules
end up outside Homebrew's control which means we don't automatically remove them
when the package is removed. Sandboxing blocks this, which means when we eventually
move to enable that by default for users as well as CI it'll quickly become a
prominent issue.
2016-02-20 19:30:31 +00:00
Dominyk Tiller
7572e91a60 diagnostic: add new osxfuse exceptions
The recent updates to OSXFuse include two new elements that get flagged by
`brew doctor`. Adding them here so it's consistent with how we handle the rest
of OSXFuse.

Closes Homebrew/homebrew#49372.
2016-02-20 19:24:30 +00:00
Alex Dunn
f15532452e version: correctly parse codeload URLs
Needed for Homebrew/homebrew#49346.

Closes Homebrew/homebrew#49354.

Signed-off-by: Alex Dunn <dunn.alex@gmail.com>
2016-02-19 17:36:42 -08:00
Dominyk Tiller
b54d477416 PULL_REQUEST_TEMPLATE: tweaks
Closes Homebrew/homebrew#49353.

Signed-off-by: Dominyk Tiller <dominyktiller@gmail.com>
2016-02-19 23:14:10 +00:00
Dominyk Tiller
a688dc2c8c ISSUE_TEMPLATE: tweaks 2016-02-19 23:14:10 +00:00
Zhiming Wang
6f952779c8 phash: boneyard
Boneyarding because:

1. Not compatible with FFmpeg 3.0 (#49178);
2. Not developed in the open, only release tarballs are available, so
   tracking progress is hard;
3. Latest release is from April 2013;
4. Has to join a mailing list to report bugs, the archive of which was
   last built in 2014.

In summary, there's no evidence that this library is not abandoned.

See also discussions in Homebrew/homebrew#49178.

Closes Homebrew/homebrew#49268.

Signed-off-by: Dominyk Tiller <dominyktiller@gmail.com>
2016-02-19 23:04:51 +00:00
Xu Cheng
cfc5fed7ce update: fix fork bomb caused by brew update --help
Fixes Homebrew/homebrew#49334.

Closes Homebrew/homebrew#49343.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-02-19 17:28:37 +08:00
Misty De Meo
d431f20d88 brew: print help when no commands given
Fixes Homebrew/homebrew#49325.

Closes Homebrew/homebrew#49327.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2016-02-19 09:04:22 +00:00
Martin Afanasjew
f8a86e5962 tests: add groups and project name to coverage
Groups make it easier to get an overview of the coverage without having
to scan through a single very long list of files. They also display a
possibly helpful per-group coverage.

The project name is normally derived from the `root` directory which
happens to be `Library` in our case, thus make it explicitly `Homebrew`.

Closes Homebrew/homebrew#49303.

Signed-off-by: Martin Afanasjew <martin@afanasjew.de>
2016-02-18 21:54:14 +01:00
Martin Afanasjew
5aa2712694 docs: fix URLs in issue/PR template
Sadly, relative URLs don't work in this context.
2016-02-18 14:40:07 +01:00
Martin Afanasjew
c41d58979f docs: fix minor language/style inconsistencies
Always leave a blank line between headings and the following checklists.
2016-02-18 14:33:35 +01:00
ilovezfs
8e6c3ab039 update: always checkout master.
This should help to prevent situations where a user accidentally ends up
"stranded" in a branch indefinitely.

Additionally, the stash is never popped automatically at the end of a
successful update, but the stash-pop message is printed if something is
stashed.

When an interrupt occurs, the original behavior is still in place
(switch back to the old branch and revision, and pop the stash), though
this could be changed as well.

This commit modifies the behavior of both `brew update` and
"update-bash.sh" in the manner described above.

The idea for this approach is from Mike McQuaid.

Issue Homebrew/homebrew#48812

Closes Homebrew/homebrew#48993.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2016-02-18 10:44:14 +00:00