9434 Commits

Author SHA1 Message Date
Tommy Sparber
d675fa0b5a Search also in Caskroom/versions Tap
Extending the current search functionallity to search in
https://github.com/caskroom/homebrew-versions

Closes Homebrew/homebrew#47954.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2016-01-17 21:53:20 +00:00
Misty De Meo
066dd63a87 test_edit: HOMEBREW_EDITOR takes precedence over EDITOR 2016-01-17 13:07:46 -08:00
Mike McQuaid
cd0366da0d Revert "dependency: don't recurse infinitely."
This reverts commit 16ffbe1a2b2d99da42481dc50f70dbfee4472da6.
2016-01-17 20:55:05 +00:00
Mike McQuaid
20106e4268 dependency: don't recurse infinitely.
If we have a dependency cycle ensure that infinite recursion does not
result by storing state in a stack which we push/pop from for each
level of recursion and verify that we haven’t been through this
dependency already.

Closes Homebrew/homebrew#47933.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2016-01-17 20:12:03 +00:00
Mike McQuaid
42681b51f8 formula_installer: build formula options better.
Previously we got all the options based on the build, any inherited
options, any passed options and the tab. We want to make sure that these
then exclude any options that don't exist as, otherwise, passing an
option that doesn't exist (or has been deleted) is enough to stop a
bottle being poured. This was particularly nasty on upgrades where we
deleted options and one left in the tab would stop the bottle being
poured.

Closes Homebrew/homebrew#47891.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2016-01-17 20:06:00 +00:00
Mike McQuaid
e7bffe4809 formula_installed: tweak source build behaviour.
Currently `brew install —build-from-source wget` builds all the
dependencies also from source. I can see people wanting to do this when
`HOMEBREW_BUILD_FROM_SOURCE` is set by passing it on the command-line
is mostly just annoying; it means you have to use `—build-bottle` and
deal with the CFLAGS and `post_install` changes if you want to build
from source. Tweak `formula_installer` so this behaviour is more
intuitive.

Closes Homebrew/homebrew#47889.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2016-01-17 20:05:32 +00:00
Mike McQuaid
04a9b0022d test_bash: tests to assert Bash syntax is valid.
Closes Homebrew/homebrew#47380.
2016-01-17 19:48:02 +00:00
Mike McQuaid
99234f0256 Add new update-bash command for testing.
This will become the default updater at a later point in the future.
2016-01-17 19:48:02 +00:00
Mike McQuaid
6f91b429ce Move some brew.rb logic to bin/brew. 2016-01-17 19:48:02 +00:00
Mike McQuaid
b01ce41164 bin/brew: allow writing Homebrew commands in Bash. 2016-01-17 19:48:02 +00:00
Mike McQuaid
effca7d9c6 bin/brew: set more HOMEBREW_* env from Bash. 2016-01-17 19:39:41 +00:00
Bob W. Hogg
3e0828c29a Rubocop: upgrade to version 0.36.0
Stop using Style/TrailingComma as it is no longer recognized and start using
Style/TrailingCommaInArguments and Style/TrailingCommaInLiteral instead.

Closes Homebrew/homebrew#48144.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-01-17 16:26:49 +08:00
Xu Cheng
f92fc98ec0 test-bot: change directory for git rev-parse --verify 2016-01-17 15:06:07 +08:00
Xu Cheng
154d0850e7 audit_revision: only check 10 recent related commits
It helps to reduce overhead.

Closes Homebrew/homebrew#48108.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-01-17 14:52:15 +08:00
Xu Cheng
80efb92c35 FormulaVersion: support max depth 2016-01-17 14:52:14 +08:00
Xu Cheng
d4c7dedf12 audit: imporve revision check logic
* Check revision decrease against both stable and devel spec.
* Check revision reset only for stable spec if stable spec is available.
2016-01-17 14:52:14 +08:00
Xu Cheng
176f345386 test-bot: prevent formula building from source multiple times
After formula updates its bottle block, remove itself from changed
formulae list. Therefore, if it's requested next time as dependency, it
will be installed from bottle just created.

Closes Homebrew/homebrew#48121.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-01-17 14:52:09 +08:00
Xu Cheng
cb3379fcfa test-bot: all formula name are canonical now 2016-01-17 14:52:09 +08:00
Xu Cheng
edca96de04 test-bot: always use canonical formula name
Otherwise, we may get incorrect result when preforming set operations on
list of formula names.
2016-01-17 14:52:09 +08:00
Xu Cheng
09a79106d7 Tap: allow invoking formula_file_to_name by Homebrew internally 2016-01-17 14:52:09 +08:00
Xu Cheng
b32d21fea0 test-bot: simplify Test#git 2016-01-17 14:52:09 +08:00
Xu Cheng
b73a6f195a test-bot: remove dead code 2016-01-17 14:52:09 +08:00
Xu Cheng
39eb93e0f5 test-bot: simplify Test#initialize 2016-01-17 14:52:09 +08:00
Baptiste Fontaine
42a4f44c0e tests: bump the min. coverage to 60 2016-01-16 20:25:57 +01:00
Baptiste Fontaine
f41e0a6e64 tests: more integration tests
Closes Homebrew/homebrew#48124.

Signed-off-by: Baptiste Fontaine <batifon@yahoo.fr>
2016-01-16 15:46:01 +01:00
Misty De Meo
0fa731b020 superenv: properly filter gcc-4.2 flags
These weren't being filtered correctly if the compiler was being called
as g++ instead of gcc.

Fixes mistydemeo/tigerbrew#371.
2016-01-15 22:58:50 -04:00
Xu Cheng
4a8632e54d unpack: preserve file attributes like mtime
Closes Homebrew/homebrew#48068.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-01-15 16:26:04 +08:00
Xu Cheng
8deec537d1 test_download_strategies: add mtime test 2016-01-15 16:26:04 +08:00
Xu Cheng
7958343f16 bottle: read source modified time from tabfile
* Avoid unnecessary stage overhead
* Support different download strategy, e.g. `git`.
2016-01-15 16:26:04 +08:00
Xu Cheng
6c8c56a689 build: store source modified time in tabfile 2016-01-15 16:26:04 +08:00
Xu Cheng
b24f174325 download_strategy: add source_modified_time 2016-01-15 16:26:04 +08:00
Xu Cheng
fab16b83e9 tab: add source modified time metadata 2016-01-15 16:26:04 +08:00
Dominyk Tiller
5bc1e0b83a formula_versions: include devel in revision map 2016-01-14 17:53:08 +00:00
Xu Cheng
01b92edb7b test-bot: fix missing ? 2016-01-14 19:43:33 +08:00
Xu Cheng
e6159eb579 test-bot: always return tap object
Also simplify the code and add Travis auto detect.

Closes Homebrew/homebrew#48060
2016-01-14 19:32:53 +08:00
Xu Cheng
c4dcf8b7b2 brew: tap missing tap as normal user
Before this, `sudo brew cask` will auto install Homebrew cask as root
user. This will cause permission problem for files in `Tap` directory.

Therefore, let's check process uid and switch to normal user for tap.
As result, `sudo brew cask` will work as the same before, except tap
files will have the correct permission attributes.

Closes Homebrew/homebrew#48059.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-01-14 19:32:07 +08:00
Xu Cheng
31da9b266a audit: enforce revision check
Add two checks:
* revision should be reset to 0 for new version.
* revision should not decrease inside the same version interval.

Closes Homebrew/homebrew#48032.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-01-14 15:26:21 +08:00
Xu Cheng
5f22586389 audit: check url/checksum/mirror outside of stable block
Closes Homebrew/homebrew#48033.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-01-14 13:35:36 +08:00
bigbes
5e25b08fe4 bottle: merging problem when head conatins commas
If `head` sections contains commas (e.g. `url "https://github.com/tarantool/tarantool.git", :branch => "1.6", :shallow => false`)
then re thinks that it reached the end and inserts `bottle do <-> end`
block before it, that leads to problems in ` brew audit --devel tarantool --strict --online`:

```
==> audit problems
tarantool:
 * `head` (line 11) should be put before `bottle block` (line 7)
```

It blocks Homebrew/homebrew#47495

Closes Homebrew/homebrew#47931.

Signed-off-by: Dominyk Tiller <dominyktiller@gmail.com>
2016-01-14 03:48:03 +00:00
Dominyk Tiller
6c380f0e85 gkrellm 2.3.5 (return from boneyard)
Closes Homebrew/homebrew#48016.

Signed-off-by: Dominyk Tiller <dominyktiller@gmail.com>
2016-01-14 02:56:34 +00:00
Baptiste Fontaine
159373707b Cookbook: remove ref to obsolete 'def patches' 2016-01-14 00:54:15 +01:00
Satoshi Ohmori
6f50b45797 Fix typo [ci skip]
Closes Homebrew/homebrew#48008.

Signed-off-by: Baptiste Fontaine <batifon@yahoo.fr>
2016-01-13 21:37:22 +01:00
Alex Dunn
0f33306647 p11-kit: boneyard
Closes Homebrew/homebrew#47124.
https://github.com/Homebrew/homebrew-boneyard/pull/88
2016-01-12 14:22:53 -08:00
Dominyk Tiller
cbcfbacf22 test-bot: restore no-bottle support
This feature is still quite useful, particularly because of the somewhat
buggy behaviour of `default_formula` which means when attempting to build
a bottle it'll attempt to force the installation of that formula.

That is particularly problematic for taps like homebrew/homebrew-fuse because
the `default_formula` in osxfuse conflicts with the osxfuse binary we install
via the Caskroom, which is actively breaking every CI build.

Closes Homebrew/homebrew#48000.

Signed-off-by: Dominyk Tiller <dominyktiller@gmail.com>
2016-01-12 22:16:59 +00:00
Baptiste Fontaine
e75e717ebb agedu: import from head-only
Closes Homebrew/homebrew#47967.

Signed-off-by: Baptiste Fontaine <batifon@yahoo.fr>
2016-01-12 12:05:48 +01:00
ilovezfs
07e849e7f4 Fix built_as_bottle in Formula's to_hash
This was caused by a "race" between two commits.
bash-3.2$ git log -n1 --format=%ai 3344229
2012-08-15 22:08:40 -0500
bash-3.2$ git log -n1 --format=%ci 3344229
2012-09-17 20:01:37 -0500
bash-3.2$ git log -n1 --format=%ai 8837423
2012-08-25 11:31:57 -0700
bash-3.2$ git log -n1 --format=%ci 8837423
2012-08-25 11:52:37 -0700

"built_bottle" was renamed "built_as_bottle" in 8837423 after the date
3344229 was authored but before the date it was committed to master, and
unfortunately in the interim 3344229 hadn't been updated to reflect the
name change.

This commit changes the Formula class's to_hash method to use
tab.built_as_bottle not tab.built_bottle, which doesn't exist. At this
time, there is no way that to_hash could have known that
tab.built_bottle is bogus. Perhaps this could be made safer in the
future, so that non-existent methods cause an error here rather than
just silently returning null.

Closes Homebrew/homebrew#47912

Closes Homebrew/homebrew#47916.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-01-12 17:41:31 +08:00
Misty De Meo
256aea180a superenv: filter flags for older GCCs
Fixes mistydemeo/tigerbrew#371.
Fixes Homebrew/homebrew#47949.
2016-01-11 22:23:53 -04:00
Xu Cheng
9810c2a412 test_tap: restore private remote test
Only test it if HOMEBREW_GITHUB_API_TOKEN is set.
2016-01-11 22:07:15 +08:00
Xu Cheng
86cc780ea2 test_tap: remove problematic test
`Tap#private?` requires Github API, which can cause problem on Travis CI
due to API rate limit.
2016-01-11 19:47:35 +08:00
Baptiste Fontaine
1e93eb99a7 mat 0.5.4 (import from boneyard)
Closes Homebrew/homebrew#45960.

Signed-off-by: Baptiste Fontaine <batifon@yahoo.fr>
2016-01-11 12:07:42 +01:00