10755 Commits

Author SHA1 Message Date
Mike McQuaid
252c701c59 Test officially supported cmd taps. (#390)
All of these taps use Homebrew internal APIs (or will shortly) and we
autoinstall them all from `brew $CMD`. We should adjust our CI to ensure
that we never accidentally break these taps when making changes to core
code so that these taps can rely more on this core code rather than
having to e.g. vendor equivalent code that never changes on our end.
2016-07-04 16:08:53 +01:00
Martin Afanasjew
037729351f Regenerate man page to pick up recent changes
Amend 468ebc5ed540c77dea4772a35678b5b2575ac4ed by regenerating the
man page and its HTML version according to the changes in #443.
2016-07-04 15:17:22 +02:00
Mike McQuaid
468ebc5ed5 install: undocument --force-bottle. (#443)
This is a developer-only option I created for testing purposes. It
should not be used by end-users.
2016-07-04 14:03:03 +01:00
Mike McQuaid
3e982b9720 tests: default to testing offline. (#430)
Set HOMEBREW_NO_GITHUB_API to allow running all tests (but search's
integration test specifically for now) offline. This can be overridden
with `--online`.
2016-07-04 13:32:58 +01:00
Martin Afanasjew
310d7067e0 linkage: update --test documentation
Adjust the wording to be in sync with the changes made in #424.
2016-07-04 08:16:23 +02:00
Camden Narzt
29713e61eb download_strategy: fix detect_from_symbol method (#446)
strategy is an undefined variable
2016-07-04 01:58:44 -04:00
Martin Afanasjew
a49f3a8e91 style: use RuboCop 0.41.1 (#433)
Tweak `Style/NumericLiteralPrefix` cop settings as we're using octal
literals a lot (both in formulae and the package manager) for file
permissions and aren't ready just yet to transition them to the more
beginner-friendly `0o` prefix (instead of the more obscure `0` prefix).
2016-07-04 07:19:44 +02:00
Andrew Janke
f4b3dadb64 gist-logs: close temp file before passing to curl (#418)
Ensures that the data gets written to disk so curl can see it, avoiding
intermittent JSON parsing errors in gist creation.
2016-07-03 17:21:13 -04:00
Mike McQuaid
0478c2fc0f update-report: prune on cask migration. (#428)
Do this to ensure that any symlinks in the Homebrew prefix and/or in
Applications are removed to stop issues with stale symlinks causing
Casks from being installed correctly.
2016-07-03 14:34:38 -05:00
Xu Cheng
a97661a548
linkage: document --reverse 2016-07-03 16:50:55 +08:00
Xu Cheng
9167fbf876
linkage: fix edge cases for undeclared_deps
* take requirements into account.
* handle full qualified formula name.
* filter out build time or unused optional deps/requirements.

Closes #424.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-07-03 16:45:30 +08:00
Xu Cheng
080ddd8804
linkage: check undeclared dependencies for --test
Also allowing access results for LinkageChecker
2016-07-03 16:45:29 +08:00
Tim D. Smith
abca5936f2 Add --reverse to brew linkage
For each dylib the keg references, print the dylib followed by the
binaries which link to it.

Closes #431.
2016-07-02 23:58:07 -07:00
Vlad Shablinsky
fbac41d95b test_formula: improve test_migration_needed
Closes #432.

Signed-off-by: Martin Afanasjew <martin@afanasjew.de>
2016-07-02 00:29:45 +02:00
Vlad Shablinsky
4aedeea96d formula: simplify migration_needed? 2016-07-02 00:29:45 +02:00
Dominyk Tiller
e3b6c96b5d
requirement: update cask wording
We now have "magic" to automatically handle `brew cask` and `brew bundle`
calls without needing to tap those taps manually beforehand. Let's reflect that
in this wording for consistency.

Closes #427.

Signed-off-by: Dominyk Tiller <dominyktiller@gmail.com>
2016-07-01 04:31:02 +01:00
Joshua McKinney
bf4f337903 Call subcommands from zsh completion
This change is inspired by the way that the git zsh completions work by foisting
the responsibility for sub commands onto the command themselves.
It is paired with another change that takes the oh-my-zsh brew cask plugin and
makes it into a first class completion rather than it overriding this.

This change requires fixes in brew, oh-my-zsh and the zsh-completions, and will
likely cause the brew cask completions to break until these have been fully
accepted into each project.
2016-06-30 15:43:17 -05:00
Tony Ta
3e309d4643 blacklist: update URLs and MacRuby message (#406)
* updates link for installing pip
* the macruby project has been abandoned and the website is gone
2016-06-30 21:47:15 +02:00
Dominyk Tiller
0926f920dc
osxfuse_requirement: fix website link 2016-06-30 17:33:59 +01:00
Xu Cheng
91a225eef1
test-bot: add --skip-relocation flag
Closes #410.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-06-30 15:26:04 +08:00
Xu Cheng
d4e8d3df0a
bottle: add --skip-relocation flag to skip keg relocate
This flag is indented to be used in `homebrew/portable` to build vendor
ruby/git/curl.
2016-06-30 15:26:04 +08:00
Tim D. Smith
a2681d196f Tests for Step class
Closes #419.
2016-06-29 21:17:09 -07:00
Tim D. Smith
f04ffb614d Move with_environment to testing_env 2016-06-29 21:16:50 -07:00
Tim D. Smith
4e927d9ce8 Remove unused variable Step#@time
Shadowed by Step#time method.
2016-06-29 21:16:50 -07:00
Tim D. Smith
452fbda9af Document Step 2016-06-29 21:16:50 -07:00
Martin Afanasjew
1c27a75ca4 utils/lock.sh: remove redundant 'local' 2016-06-29 22:38:42 +02:00
Martin Afanasjew
b1811f2ef3 analytics: make Linux UUID generation more robust
Not every Linux system has a pre-installed `uuidgen` command (Debian
has a package `uuid-runtime` but doesn't install it by default). In
contrast, `/proc/sys/kernel/random/uuid` is always available on a modern
Linux system and produces type/version 4 UUIDs, just like `uuidgen`.

Closes #416.

Signed-off-by: Martin Afanasjew <martin@afanasjew.de>
2016-06-29 21:07:25 +02:00
Martin Afanasjew
271023c5e1 analytics: handle UUID generation errors
Avoid writing an empty UUID to the Git configuration file and disable
analytics temporarily to avoid sending bogus data with an invalid UUID.
2016-06-29 21:07:25 +02:00
Tim D. Smith
db76a0f4cc Begin documenting environment variables
Closes #405.
2016-06-29 09:03:51 -07:00
Tim D. Smith
8cf11912de Test resolve_test_tap 2016-06-29 09:03:09 -07:00
Tim D. Smith
9b36e83771 Add magic token to hide commands from man page
Closes #402.
2016-06-29 09:01:36 -07:00
Tim D. Smith
be3d33ea36 Document command line options for brew tests 2016-06-29 09:00:46 -07:00
Martin Afanasjew
3c5f007bfa bin/brew: fix corner cases in prefix computation
If `bin/brew` happens to be symlinked to `/brew`, `/bin/brew`, or some
similar location or (worse yet) Homebrew is installed to `/`, then
computation of the prefix and/or repository path could break down and
result in an invalid or empty path.

Closes Homebrew/homebrew-core#2430.
2016-06-29 16:20:47 +02:00
Vlad Shablinsky
da06e813c2
cmd/install: use migration_needed?
Closes #411.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-06-29 21:04:28 +08:00
Vlad Shablinsky
0d3b5f6849
test_formula: add migration_needed test 2016-06-29 21:04:27 +08:00
Vlad Shablinsky
9c15174e3c
formula: simplify outdated_versions logic 2016-06-29 21:04:27 +08:00
Vlad Shablinsky
d47df68cbd
test_formula: add outdated_versions tests 2016-06-29 21:04:27 +08:00
William Woodruff
cb3ad215b4 test: Add tests for Keg#mach_o_files link behavior.
Move dylib_path and bundle_path from test_mach to testing_env to
accommodate the new tests.

Closes #400.

Signed-off-by: Martin Afanasjew <martin@afanasjew.de>
2016-06-29 14:34:08 +02:00
William Woodruff
d3ef56425a keg_relocate: Exclude hardlinks from mach_o_files. 2016-06-29 14:34:08 +02:00
Martin Afanasjew
d4f5f0cec7 brew.sh: rename 'chdir' to 'safe_cd'
This is inspired by `safe_system` with basically the same implication
(fail on error), making the name a lot less confusing and avoiding a
clash with the `chdir` function previously defined in `bin/brew`.

Closes #414.

Signed-off-by: Martin Afanasjew <martin@afanasjew.de>
2016-06-29 13:38:50 +02:00
Martin Afanasjew
359b67c6c8 bin/brew: rename 'chdir' to 'quiet_cd'
This is inspired by `quiet_system` with basically the same implication
(suppress output), making the name a lot less confusing and avoiding a
clash with the `chdir` function defined in `Library/brew.sh`.
2016-06-29 13:38:50 +02:00
Tim D. Smith
cab97cf4d7 Revert "keg_relocate: Exclude hardlinks from mach_o_files."
This reverts commit 3e5e14a59580325faf397b48d62a52f0013a17f2.
2016-06-27 23:25:15 -07:00
Tim D. Smith
70ceb851a5 Revert "test: Add test for Keg#mach_o_files hardlink behavior."
This reverts commit 62d7079684cdb568600e22531c62888622a71ff1.
2016-06-27 23:25:10 -07:00
William Woodruff
62d7079684 test: Add test for Keg#mach_o_files hardlink behavior.
Move dylib_path and bundle_path from test_mach to testing_env to
accommodate the new test.

Closes #400.

Signed-off-by: Tim D. Smith <git@tim-smith.us>
2016-06-27 22:56:28 -07:00
William Woodruff
3e5e14a595 keg_relocate: Exclude hardlinks from mach_o_files. 2016-06-27 22:56:12 -07:00
Xu Cheng
1668e47d1e
test-bot: always use Tap.fetch 2016-06-27 20:03:37 +08:00
Mike McQuaid
fc85a6fab6 test-bot: handle no-tap upload case. 2016-06-25 22:14:49 +01:00
Mike McQuaid
37eaf3b4d2 test-bot: fix testing job bottle upload. 2016-06-25 22:10:49 +01:00
Zhiming Wang
cb711a2d39 create: add --tap option (#389)
This commit adds a --tap option to the create command such that a user
could create a formula in a specified tap instead of the core.
2016-06-24 08:23:41 +02:00
Martin Afanasjew
e2e35def35 bottle: avoid raising exception in ensure block
The `ensure` block can be reached before the tab is modified (and thus
before `original_tab` gets populated). Avoid raising an exception when
attempting to restore a tab that hasn't been modified yet, e.g. because
relocating some of the Mach-O binaries failed.
2016-06-24 06:40:52 +02:00