Commit Graph
9324 Commits
Author SHA1 Message Date
Martin Afanasjew d579dbb4ca xcode: avoid invoking 'xcodebuild -version' twice
This primarily benefits CLT-only systems where invoking the `xcodebuild`
wrapper in `/usr/bin` will fail (twice) with the following message:

  xcode-select: error: tool 'xcodebuild' requires Xcode, but active
  developer directory '/Library/Developer/CommandLineTools' is a command
  line tools instance

Closes #198.

Signed-off-by: Martin Afanasjew <martin@afanasjew.de>
2016-05-05 23:34:40 +02:00
Martin Afanasjew 5ee797eb61 xcode: fix invalid range in comparison
Due to a typo, the range of LLVM build versions 2066 to 2325 were never
matched and thus Xcode 3.2.0 could never be inferred from that. (Only
relevant for legacy systems. Doesn't seem to have impacted any users.)
2016-05-05 23:34:40 +02:00
Martin Afanasjew c55da93ff3 xcode: expect 7.3.1 on 10.11 2016-05-05 12:22:37 +01:00
Andrew Janke 6f80b4688b doctor: guard against nil Xcode.version (#197)
MacOS::Xcode.version may be nil (when neither Xcode nor CLT are installed),
so guard against that where it may happen in `brew doctor`.
2016-05-04 15:54:01 -04:00
Mike McQuaid 9a9a989b75 Analytics: remove cask. 2016-05-04 17:52:15 +01:00
Mike McQuaid b7ac58b35e Don't report cask to analytics. 2016-05-04 17:50:36 +01:00
Martin Afanasjew f653cb8340 pull: fix references to renamed variable
Fix bug originating in #132.
2016-05-04 02:46:21 +02:00
Dominyk Tiller 7d57119837 dependency_collector: add perl
Closes #184.

Signed-off-by: Dominyk Tiller <dominyktiller@gmail.com>
2016-05-03 18:52:40 +01:00
Dominyk Tiller e96bed6b6c perl_requirement: add 2016-05-03 18:52:40 +01:00
Martin Afanasjew 6fdcab5abc deps: split and clarify documentation
`brew deps` has three different modes of operation that were not easy to
infer from the existing documentation. Split the help text into three
parts to make this clearer. This also improves on the confusion when
options were silently ignored because they don't apply to a certain mode
of operation. Those are:

1. List the shared dependencies (either intersection or union) of
   explicitly named formulae with options for traversal depth/order.

2. Output separate trees of explicitly listed or all installed formulae.

3. List all available/installed formulae and their direct dependencies
   with one line per formula formatted as `<formula>: <dependencies>`.

Closes #137.

Closes #179.

Signed-off-by: Martin Afanasjew <martin@afanasjew.de>
2016-05-03 17:19:18 +02:00
Score_Under b5007c48e0 Tty: Avoid truncating if not sensible
This causes truncate to simply return the original string if the
terminal is not very wide, or if the terminal is unsupported.
2016-05-03 15:56:47 +01:00
Andrew Janke bf23ba1d1e pull: fix polling code for Ruby 1.8.7 Net::HTTP (#191) 2016-05-03 10:30:01 -04:00
Mike McQuaid 70096f8e91 update.sh: abort rebase and merge.
`brew update` can cause these so `brew update` should repair these.
2016-05-03 15:28:00 +01:00
Mike McQuaid 60e3737f17 update: improve some edge cases.
- When running `brew update` and there’s been no changes from upstream
on any repositories there’s no need to call the (relatively) slow `brew
update-report` when we already know what it will say (“Already up-to
date.”).
- When any`git fetch`es fail then throw out an error at the end of the
output and produce a failing exit code (closes #65).
2016-05-03 14:24:41 +01:00
Mike McQuaid 489a1d8f43 Add "Maintainers: Avoiding Burnout" document. 2016-05-03 14:23:42 +01:00
Mike McQuaid 0ef21ddf87 analytics: move to a class.
Global namespaces are good to avoid when possible.
2016-05-03 14:21:08 +01:00
Andrew Janke 798c342f4e brew pull: cross-platform bottle verification, concise output (#132)
Do the bottle check using any platform's bottle, so `brew pull` works
on bottled formulae which don't include a bottle for the current system.

Make output more concise and informative
 * Remove expected download error messages when waiting for Bintray publishing
 * Replace patch download progress bars with patch file name
 * Silence git output about switching to and from bottle-pulling branch
 * Include formula name and patch type in some progress messages
2016-05-03 08:22:28 -04:00
Andrew Janke 2805531f13 audit: fix false-positive for '--with-check' from 'depends_on "check" => :optional' (#188)
Fixes #170
2016-05-03 08:16:20 -04:00
Andrew Janke 066489a2b3 Switch to bbatsov's Style Guide since GitHub's is 404 (#189)
Fixes #106
2016-05-03 08:13:22 -04:00
Mike McQuaid f288b66fcb update.sh: remove GIT_ASKPASS=false.
This doesn't work as expected and causes confusing user errors.

References #95.
2016-05-03 09:04:23 +01:00
Toru Tanaka 967988c444 Fix a variable name in error message (#190) 2016-05-03 02:24:32 -04:00
Andrew Janke a98eb34073 PR template: Separate checklist from body; grammar fix (#136) 2016-05-03 00:29:58 -04:00
Martin Afanasjew 8284fb3fef Update Homebrew/homebrew references in man page
Replace `homebrew` with `brew`, `homebrew-core`, or `legacy-homebrew`
depending on context.

Closes #175.

Signed-off-by: Martin Afanasjew <martin@afanasjew.de>
2016-05-02 21:19:09 +02:00
Martin Afanasjew 02289fce42 Update Homebrew/homebrew references in code
Replace `homebrew` with `brew`, `homebrew-core`, or `legacy-homebrew`
depending on context.
2016-05-02 21:19:09 +02:00
Martin Afanasjew 8600b9edf1 Update Homebrew/homebrew references in comments
Replace `homebrew` with `brew`, `homebrew-core`, or `legacy-homebrew`
depending on context.
2016-05-02 21:19:09 +02:00
Martin Afanasjew b449a51ff7 analytics: add bash completion
Closes #178.

Signed-off-by: Martin Afanasjew <martin@afanasjew.de>
2016-05-02 18:54:42 +02:00
Xu Cheng 67944c2f2d update: escape ? in the help flag list
Otherwise it will match any character
2016-05-02 21:04:30 +08:00
Xu Cheng 3b40dcedf8 update: more help flag (#180)
To be synced with the help flag list in brew.rb
2016-05-02 17:58:41 +08:00
Xu Cheng 0812b721bd analytics: add zsh completion 2016-05-02 16:07:10 +08:00
Xu Cheng 98aff27317 add brew analytics command (#173) 2016-05-01 22:04:46 +08:00
Uladzislau Shablinski 90d3317d7d download_strategy: use svn info --xml (#174) 2016-05-01 19:46:24 +08:00
Xu Cheng 3972b900f3 JavaRequirement: use next instead of return in code block 2016-05-01 14:31:26 +08:00
Vlad Shablinsky 6f1116c8e1 download_strategy: fossil source_modified_time
Closes #171.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-05-01 14:28:24 +08:00
Vlad Shablinsky f79edbc560 download_strategy: bazaar source_modified_time 2016-05-01 14:28:24 +08:00
Vlad Shablinsky 155960d991 download_strategy: mercurial source_modified_time 2016-05-01 14:28:24 +08:00
ilovezfs f54f27d621 Skip tmux warning if reattached to user namespace
The exit status of pbpaste is a proxy for whether the user has set up
reattach-to-user-namespace. It should be 0 if it is set up, 1 otherwise.

This is the same hack as Homebrew/homebrew-services#48.
2016-04-30 16:33:16 -05:00
Zhiming Wang c63400d56b analytics: relocate UUID to homebrew.analyticsuuid in .git/config
This way analytics related settings and parameters (currently
analyticsdisabled, analyticsmessage and analyticsuuid) are all kept in
the same place.

Note that in this commit we offer a path of migration: if
~/.homebrew_analytics_user_uuid already exists, read the UUID from it,
write to homebrew.analyticsuuid, and remove it.

See more detailed discussions in #145.

Closes #162.

Signed-off-by: Martin Afanasjew <martin@afanasjew.de>
2016-04-30 22:40:55 +02:00
Izaak Beekman b0d906f0f8 compilers: support gcc 6 2016-04-29 11:19:35 -05:00
Uladzislau Shablinski 3ff1aa9fa3 download_strategy: add svn source_modified_time (#156) 2016-04-30 00:06:37 +08:00
Christian Moritz 9378e46ffc audit: whitelist kibana from Language::Node check (#161) 2016-04-27 22:00:41 +01:00
Eitot 4333bce850 Clarify opt-out commands
* Clarify opt-out commands

* Partially rewrite opt-out paragraph
2016-04-27 14:49:09 -05:00
Christian Moritz bc98fd3788 Language::Node.npm_install_args: add helper method (#37)
* add Language::Node helper module

This adds a language module for Node module based formulas.
It contains the 2 public methods `std_npm_install_args(libexec)` and
`local_npm_install_args`:

* `std_npm_install_args` is intended to be used in formulas for
  standard node modules and returns `npm install` args for a global
  style module installation to libexec.
* `local_npm_install_args` is for formulas, in which the `npm install`
  step is only one of multiple parts of the installation process and
  returns `npm install` args for a default local installation in place.

Both methods have in common, that they are

* making sure that a working copy of npm and node-gyp from node's
  libexec is prepended to the PATH (to not rely of a user managed npm)
* seting the npm cache to HOMEBREW_CACHE/npm, which fixes issues caused
  by overriding $HOME resulting in long install times + high disk usage
  (see https://github.com/Homebrew/brew/pull/37#issuecomment-208840366)

* audit: update npm install check for Language::Node

* cleanup: remove npm_cache too

* doc: add Node-for-Formula-Authors.md
2016-04-27 17:08:44 +01:00
Andrew Janke 05efd70dc3 Analytics: Separate user-supplied and internal-use DISABLE_ANALYTICS (#155)
This prevents `brew` self-calls from interacting with the stickiness of
HOMEBREW_NO_ANALYTICS being persisted to the brew repo and accidentally
disabling analytics permanently when it should have been for just one run,
while restoring the stickiness of an explicit user-supplied
HOMEBREW_NO_ANALYTICS.
2016-04-26 04:28:38 -04:00
Xu Cheng 7aaaf9d8db fix setup-analytics (#154)
DO not invoke git config because HOMEBREW_NO_ANALYTICS, otherwise
it will disable analytics for everyone when running `brew update`
in following manners:
 * `brew update` will set HOMEBREW_NO_ANALYTICS because the absence of
   `homebrew.analyticsmessage`
 * `brew update-report` will set `homebrew.analyticsdisabled` because of
    HOMEBREW_NO_ANALYTICS.

Also reduce file IO.
2016-04-26 15:53:52 +08:00
Andrew Janke be336159fb doco: add Prose Guidelines (WIP)
Closes #128.

Signed-off-by: Andrew Janke <andrew@apjanke.net>
2016-04-25 23:10:10 -04:00
Zev Eisenberg 0c95c60511 doco: analytics: fix typo
Closes #150.

Signed-off-by: Andrew Janke <andrew@apjanke.net>
2016-04-25 21:12:23 -04:00
Milkey Mouse 822ea6057b Fix a minor typo
Closes #149.

Signed-off-by: Andrew Janke <andrew@apjanke.net>
2016-04-25 20:40:33 -04:00
Mike McQuaid df489cfde2 More analytics tweaks.
Provide a single command that can be run to disable analytics, run it if
`HOMEBREW_NO_ANALYTICS` is ever set and remove the user UUID file in
that case too.

References https://github.com/Homebrew/brew/issues/142.
2016-04-25 18:51:00 -05:00
Mike McQuaid 421cd5365f Point to analytics documentation on brew update.
Make sure that users are notified on the first run of `brew update`
after we enabled analytics about how it works and how to opt-out. This
will be shown to all users who have not already seen this message from
`brew update` or through a new Homebrew installation.

References https://github.com/Homebrew/install/pull/42
References https://github.com/Homebrew/brew/issues/142
2016-04-25 18:05:30 -05:00
Mike McQuaid 663f51b88e keg_relocate: don't assume .la files are in lib.
Sometimes they are in e.g. libexec but there's no real reason to assume
they are anywhere; we want to relocate them regardless.
2016-04-24 22:06:14 +01:00