6810 Commits

Author SHA1 Message Date
Xu Cheng
06f72ab38f move safe_fork into a standalone method 2015-04-15 19:51:54 +08:00
Xu Cheng
c952fda202 build: fix typo 2015-04-15 19:51:54 +08:00
Dominyk Tiller
3cc24528bf Revert "brew pull: add automatic tap repair"
This reverts commit bcd34ded9e4b17b8658b7ae947cd392a4e5942c0.

Closes Homebrew/homebrew#38658.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-04-14 22:40:12 -07:00
Dominyk Tiller
3c2493f862 rubocop: update for 0.30.0
v0.30.0 has killed a couple of the methods being used and is throwing
warnings around like candy. This switches to the new methods.

Rubocops are obviously a matter of choice, and I’ve added choice here
based on what was said in previous PRs and my own personal views on
readability. Happy to be told to change things to different variables.

For upstream detail, see:

*
https://github.com/bbatsov/rubocop/blob/master/relnotes/v0.30.0.md#chang
es
* https://github.com/bbatsov/rubocop/pull/1721/files
* https://github.com/bbatsov/rubocop/pull/1655/files

Closes Homebrew/homebrew#38655.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-04-14 22:37:56 -07:00
Jack Nagel
0d6545363d Update test dependencies 2015-04-13 20:04:39 -04:00
Dominyk Tiller
399388d8b9 brew pull: add automatic tap repair
At the moment, every time I pull a new formulae from a tap, I have to
fetch it with the fully qualified name, `brew fetch
homebrew/versions/duck123 `, which is fine, but then I also have to
install, test, and audit it in the same way, which isn’t fixed until I
tap repair, which gets a bit onerous.

This just adds a step to `brew pull` where it does the tap repair
automatically for taps.

Closes Homebrew/homebrew#37788.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-04-13 12:45:18 -07:00
Mike McQuaid
9cfd768bfe formula: add more API docs for directories.
Closes Homebrew/homebrew#38571.
2015-04-12 21:49:12 -07:00
Mike McQuaid
dfcb26b2c3 readall: use named to check if ARGV is empty.
Otherwise e.g. --debug will be interpreted as a (bad) tap argument.

Closes Homebrew/homebrew#38569.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-04-12 21:37:29 -07:00
Baptiste Fontaine
8363b35216 audit: don't split shell commands when using a glob pattern
Without this, `brew audit <some formula>` may ask people to change:

    system "./script.sh foo-*"

into:

    system "./script.sh", "foo-*"

These are not the same. In the first example the shell expansion occurs
while it doesn’t in the second one, breaking the build.

Closes Homebrew/homebrew#38540.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-04-12 21:34:53 -07:00
Viktor Szakats
9c46e4be0a download_strategy: automatically use apache.org https mirror
Discussion: https://github.com/Homebrew/homebrew/issues/37945
Patch by @jacknagel.

Closes Homebrew/homebrew#38492.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-04-10 08:39:18 +01:00
Dominyk Tiller
4d442b0316 os: support xcode 6.3
It’s Christmas. New stable OS X version, new Swift version, new Xcode,
new CLT and a new Clang version.

Closes Homebrew/homebrew#38468.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-04-09 11:25:15 +01:00
Xu Cheng
2f529220e7 preliminary write control only sandbox
Closes Homebrew/homebrew#38361.

Signed-off-by: Xu Cheng <xucheng@me.com>
2015-04-09 17:42:54 +08:00
Mike McQuaid
c86166c43e pull: increase bottle publish wait timeout. 2015-04-09 10:34:33 +01:00
Mike McQuaid
63d8bcd314 tap: better match install format. 2015-04-09 09:00:18 +01:00
Mike McQuaid
6b41f38b69 untap: better match uninstall format. 2015-04-09 09:00:08 +01:00
Dominyk Tiller
a5c4eb2d3e cmake: adjust standard built type
Moves from None to Release, but comments out the standard release
CFLAGS so we can continue using our own.

Bumped Libgit2 as an example/test to play with.

Closes Homebrew/homebrew#37332, hopefully.

Closes Homebrew/homebrew#37361.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-04-09 08:50:51 +01:00
Tim D. Smith
407b82406f test-bot: don't check deps until taps are tapped
brew deps will fail silently if a formula has dependencies which live in
taps that have not yet been tapped. Delay checking brew deps until after
tap dependencies are discovered.

Closes Homebrew/homebrew#38424.
2015-04-09 00:42:51 -07:00
Tim D. Smith
ac16822a16 Prioritize TapDependency in parse_string_spec
test-bot expects the dependencies returned from SoftwareSpec#deps to
satisfy is_a?(TapDependency) if they come from a tap which might need to
be tapped.
2015-04-09 00:42:51 -07:00
Tim D. Smith
a5e1f698d5 Keep Homebrew site-packages in sys.path during brew test
Formulas that build python things and which are tested with system
Python will encounter test failures unless system Python is configured
to add Homebrew's site-packages to sys.path. This change makes sure that
configuration is performed in the test environment.

Both lines are needed; the first reads and processes .pth files and the
second makes sure that Homebrew's site-packages is read before the
system extras, so that formulas depending on Homebrew/python/numpy get
the Homebrew/python version and not the old system version.

Closes Homebrew/homebrew#38466.
2015-04-09 00:42:43 -07:00
Xu Cheng
f5c8e3fdbd Use UNIXSocket to pass file descriptor
This is a more standard way to pass fd in UNIX world.
At the same time, it helps to remove a few hacks and
simplifies the code in the sandbox.

Closes Homebrew/homebrew#38434.

Signed-off-by: Xu Cheng <xucheng@me.com>
2015-04-09 15:31:47 +08:00
Xu Cheng
cd00abab55 uninstall: display file size
Closes Homebrew/homebrew#38475.

Signed-off-by: Xu Cheng <xucheng@me.com>
2015-04-09 15:25:22 +08:00
Geoff Nixon
8d94fff17a figtoipe: move to head-only.
Closes Homebrew/homebrew#37059.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-04-09 08:17:29 +01:00
Geoff Nixon
6889709246 dromeaudio: move to head-only.
Closes Homebrew/homebrew#37057.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-04-09 08:16:22 +01:00
Tim D. Smith
c803b3d967 FortranDependency: make sure gfortran ends up in PATH
Per requirements.rb:

    >  XXX If the satisfy block returns a Pathname, then make sure that it
    >  remains available on the PATH. This makes requirements like
    >    satisfy { which("executable") }
    >  work, even under superenv where "executable" wouldn't normally be on the
    >  PATH.
    >  This is undocumented magic and it should be removed, but we need to add
    >  a way to declare path-based requirements that work with superenv first.

Fixes homebrew/homebrew-python#170.

Closes Homebrew/homebrew#38448.
2015-04-08 09:01:23 -07:00
Mike McQuaid
6acf05aea0 pull: sleep before fetching uploaded bottle. 2015-04-08 13:56:57 +01:00
Mike McQuaid
62df28a476 uses: also check the default formulae.
This means e.g. `elixir` will show up as using `erlang`.
2015-04-08 13:39:12 +01:00
Jack Nagel
3587dc441e Remove duplication from cleanup methods 2015-04-07 21:14:48 -04:00
Dominyk Tiller
2fa87369b3 pathname: prune unnecessary whitespace
Closes Homebrew/homebrew#38413.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-04-07 18:32:29 +01:00
Dominyk Tiller
45c9e84c15 cleanup: display file-sizes
Closes Homebrew/homebrew#38404
2015-04-07 18:32:29 +01:00
Xu Cheng
c9e45b9c26 stop supporting md5 checksum
This prevents a downgrade attack.

Closes Homebrew/homebrew#38433.

Signed-off-by: Xu Cheng <xucheng@me.com>
2015-04-07 22:48:55 +08:00
Mike McQuaid
631742c527 pull: try downloading bottles after upload. 2015-04-07 08:33:58 +01:00
Mike McQuaid
cfc8ac0190 test-bot: override existing Bintray bottles. 2015-04-07 08:31:17 +01:00
Dominyk Tiller
6de372d7fe gcc5: add regex
Fixes the bottle regex problem seen in
https://github.com/Homebrew/homebrew-versions/pull/678.

I don’t know whether it’s a good regex, or an awful regex, but it works
and passes `brew tests` and a bottled install. Open to improvements if
anyone has them.

Closes Homebrew/homebrew#38333.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-04-07 08:26:13 +01:00
Tim D. Smith
5a0ec0c491 add SoftwareSpec#go_resource
by analogy to similar code in formula.rb.

Permits Homebrew/homebrew#37877. Closes Homebrew/homebrew#38330.
2015-04-06 20:26:52 -07:00
Dominyk Tiller
6370ccf9a8 list: exclude pypy from unbrewed
Excludes the PyPy paths from the unbrewed list, since we do the same
with Python.

Closes Homebrew/homebrew#38399.
2015-04-06 20:16:22 -07:00
Jack Nagel
deebf86683 switch: do not require an existing formula 2015-04-05 14:57:06 -04:00
Jack Nagel
27092cabc4 Switch PkgVersion to use composition
Comparing PkgVersion and Version objects can produce nonsensical
results. For example, equality is not symmetric:

irb(main):002:0> PkgVersion.new("1.0", 0) == Version.new("1.0")
=> false
irb(main):003:0> Version.new("1.0") == PkgVersion.new("1.0", 0)
=> true

Rather than attempt to deal with subclass-superclass equality, let's use
composition and punt on the problem altogether.
2015-04-02 20:22:12 -04:00
Viktor Szakáts
1b5fc1fb02 audit: enforce https for bare bintray.com domain
Closes Homebrew/homebrew#38302.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-04-02 16:39:00 +01:00
Jack Nagel
a4ff45e5ee Use pkg_version when comparing against keg versions 2015-04-01 21:15:18 -04:00
Jack Nagel
7de2d56f52 Simplify versions code 2015-04-01 21:15:18 -04:00
Jack Nagel
f51439329b Remove dead code 2015-04-01 21:15:18 -04:00
Shaun Jackman
6ca42964cb pathname: remove hyphen from BOTTLE_EXTNAME_RX
A hyphen is not a valid character in a Ruby symbol, and the bottle
tag should be a valid Ruby symbol for its use in the bottle stanza.

Closes Homebrew/homebrew#38235.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-03-31 18:53:26 +01:00
Shaun Jackman
1ad0de8660 pathname: Add [-0-9] to BOTTLE_EXTNAME_RX
Change [a-z_]+(32)? to [-a-z0-9_]+
The Linuxbrew bottle tag is x86_64-linux.

Closes Homebrew/homebrew#32687.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-03-31 15:07:46 +01:00
Mike McQuaid
30de8f0f74 pull: make the bintray message stronger. 2015-03-31 13:11:21 +01:00
Viktor Szakáts
f6946cd9f6 audit: enforce https on *.bintray.com urls
Closes Homebrew/homebrew#38209.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-03-31 12:55:24 +01:00
ojab
1db6a756c9 Fix test.pdf
test.pdf wasn't a valid PDF file:
>$ mutool info test.pdf
>test.pdf:
>error: cannot recognize xref format
>error: cannot read xref (ofs=406)
>error: cannot read xref at offset 406
>warning: trying to repair broken xref

Process it with `mutool clean` to fix errors, collapse newlines to reduce size

Closes Homebrew/homebrew#38194.

Signed-off-by: Xu Cheng <xucheng@me.com>
2015-03-31 19:04:58 +08:00
Dominique Orban
877eddb127 Move ticcutils, timbl, wopr to homebrew/science.
Closes Homebrew/homebrew#37450.

Signed-off-by: Xu Cheng <xucheng@me.com>
2015-03-30 13:30:35 +08:00
Ben Morgan
1795599d88 keg: explicitly create cmake dir under lib
Packages supporting CMake may install configuration files for use
with CMake's find_package command. A recommended location for these
is `<prefix>/lib/cmake` which is not unique across packages. This
may cause issues for Formula using this location when their Keg
is linked.

As with pkg-config, explicitly create the `lib/cmake` folder when
linking a Keg that has installed folders/files to this location.

Also add testcase.

Closes Homebrew/homebrew#38005.

Signed-off-by: Xu Cheng <xucheng@me.com>
2015-03-29 22:01:21 +08:00
Xu Cheng
8f8061e5f8 bottle_version: support apparix-11-062 2015-03-29 13:12:20 +08:00
Shammel Lee
4836dda1d4 manpage: fix typo
Closes Homebrew/homebrew#38168.

Signed-off-by: Misty De Meo <mistydemeo@gmail.com>
2015-03-28 21:54:52 -07:00