12000 Commits

Author SHA1 Message Date
Mike McQuaid
1497dfaced Merge pull request #1862 from alyssais/uses_include_optional
uses: fix recursive requirement resolution
2017-01-17 19:58:30 +00:00
Zhiming Wang
f0e5ebce06
rubocop_todo: bump max module length to 400 2017-01-17 14:55:00 -05:00
Mike McQuaid
4f0505f759 audit: only warn on versioned conflicts_with.
Rather than all versioned formulae regardless. Oops.
2017-01-17 19:09:41 +00:00
Zhiming Wang
42486c1181
bottle: add: improve regexp to recognize comments
This would have eliminated the need for Homebrew/homebrew-core#9000, for
instance.
2017-01-17 10:26:01 -05:00
Mike McQuaid
a5019d281e Merge pull request #1851 from MikeMcQuaid/keg-only-version
Add `keg_only :versioned_formula`.
2017-01-17 14:22:03 +00:00
Mike McQuaid
d8730ecf0b Merge pull request #1866 from MikeMcQuaid/cask-skip-flaky-test
suite_test: skip flaky test.
2017-01-17 14:21:43 +00:00
Mike McQuaid
fa3d459f5b suite_test: skip flaky test. 2017-01-17 11:18:45 +00:00
Mike McQuaid
dac66c4ada Add keg_only :versioned_formula.
This is used to indicate a formula is a version of another formula.
This will be used to provide a consistent interface for older formulae
versions and replaces the use of `conflicts_with`.
2017-01-17 10:50:04 +00:00
Mike McQuaid
eece7706d1 Merge pull request #1815 from MikeMcQuaid/dependency_to_formula
requirement: get formula from satisfy.
2017-01-17 10:09:05 +00:00
Mike McQuaid
aa104137e5 Merge pull request #1844 from MikeMcQuaid/audit-universal
audit: don't allow universal for new formulae.
2017-01-17 10:08:44 +00:00
Mike McQuaid
052d6077dd Merge pull request #1859 from MikeMcQuaid/brew-create-null-version
create: handle null versions.
2017-01-17 10:07:40 +00:00
Mike McQuaid
85a3940dfa Merge pull request #1861 from MikeMcQuaid/unset-grep-options
Unset GREP_OPTIONS.
2017-01-17 10:07:29 +00:00
Mike McQuaid
3d37e3b67f Merge pull request #1849 from alyssais/requirement_tests
tests: test Formula#recursive_requirements
2017-01-17 09:12:47 +00:00
Alyssa Ross
9475622c07 uses: restore formula-level exception handler
This is a temporary measure until:

- #1862 is merged
- I can a test on `brew uses` against every formula in the official
  taps to verify that exceptions are no longer raised.
2017-01-16 23:28:26 +00:00
Alyssa Ross
0b216798bb Revert "Revert "uses: properly handle untapped fo…
…rmulae in recursive dependency expansion""

This reverts commit dc9819b86c60b5c6fd10373ff318d8ef60f97d52.
2017-01-16 23:28:26 +00:00
Alyssa Ross
36c1c8e9b0 uses: fix recursive requirement resolution
Fixes #1848 by sharing recursive dependency resolution between
dependencies and requirements.

Coincidentally, this also fixes the errors introduced by #1784 that
necessitated it being reverted in #1797.
2017-01-16 23:04:26 +00:00
Alyssa Ross
33b955a3f2 tests: fix style of recursive_requirements tests 2017-01-16 21:58:59 +00:00
Mike McQuaid
6040456ea9 Unset GREP_OPTIONS.
Users may have this set, breaking grep's output.

Fixes #1430.
2017-01-16 20:35:56 +00:00
Mike McQuaid
10b8d27d11 Merge pull request #1840 from ahundt/patch-1
clarify what should be in brew create url
2017-01-16 20:16:15 +00:00
Mike McQuaid
feea90c0dd create: handle null versions.
Fixes #1821
2017-01-16 20:15:32 +00:00
Mike McQuaid
133e59724a Merge pull request #1763 from minamijoyo/add-feature-github-release-download-strategy
New feature: Allow download from private GitHub repository
2017-01-16 18:52:47 +00:00
Mike McQuaid
02b7ffd89d formula: runtime_dependencies contains requirement formulae.
When a Requirement is converted to a Formula it should be listed under
the runtime dependencies.
2017-01-15 21:04:59 +00:00
Mike McQuaid
c6d7c85d4f Merge pull request #1826 from MikeMcQuaid/remove-to-uninstall-manpage
brew.1: use uninstall instead of remove.
2017-01-15 20:42:52 +00:00
Mike McQuaid
8f88b4c8e6 Merge pull request #1846 from MikeMcQuaid/fix-head-upgrade-man
Fix documentation for HEAD upgrades.
2017-01-15 20:42:23 +00:00
Mike McQuaid
7f437b8360 Merge pull request #1847 from MikeMcQuaid/pour_specified_path
formula_installer: set specified_path on pour.
2017-01-15 20:40:59 +00:00
Alyssa Ross
0d9020838f tests: test Formula#recursive_requirements 2017-01-15 19:50:07 +00:00
Mike McQuaid
feddacf829 formula_installer: set specified_path on pour.
This means that a `brew install $ALIAS` records the path accordingly
so  e.g. `Formula#full_installed_specified_name` returns the correct
path.
2017-01-15 14:26:07 +00:00
Mike McQuaid
f4496e85e5 audit: don't allow universal for new formulae.
We're frowning on these now so may as well turn that into code.
2017-01-15 02:31:11 -08:00
Mike McQuaid
7c15944991 Fix documentation for HEAD upgrades.
These can now be done with just `brew upgrade`, like other upgrades.

Fixes #1818.
2017-01-15 02:25:51 -08:00
ilovezfs
1296074099 Merge pull request #1835 from ilovezfs/unstable-whitelist
audit: whitelist unstable versions already in core
2017-01-13 19:27:47 -08:00
ilovezfs
9dca10f9dc audit: whitelist unstable versions already in core
also allow higher stable versions with the same version prefix
2017-01-13 18:59:23 -08:00
Andrew Hundt
7c7a878b1f clarify what should be in brew create url
resolves https://github.com/Homebrew/brew/issues/1821
2017-01-13 16:20:30 -05:00
Justin Mayer
653f900e59 Add docs on persisting settings across upgrades
There are some formulas in which Homebrew symlinks configuration files
into /usr/local/etc/ instead of copying them, resulting in custom
settings being overwritten on package upgrades. This addition to the
documentation illustrates one way to avoid this behavior by ensuring the
configure script is told where to copy the configuration file(s).

Refs https://github.com/Homebrew/homebrew-core/issues/8711
2017-01-13 11:38:02 -08:00
ilovezfs
1442a0aa7f Merge pull request #1830 from ilovezfs/InreplaceError-fix-undefined-method
InreplaceError: fix undefined method crash
2017-01-13 00:27:18 -08:00
Andrew Janke
b34475997e Merge pull request #1707 from apjanke/deps-tree-fix-broken-line
brew deps --tree: fix gap in line between reqs and deps
2017-01-13 02:46:38 -05:00
Andrew Janke
62d48b4f9d brew deps --tree: fix gap in line between reqs and deps 2017-01-12 16:08:41 -05:00
ilovezfs
ac7a593730 InreplaceError: fix undefined method crash
When the first parameter to inreplace was an array, and the replacement
failed, InreplaceError would end up crashing with an undefined method
exception because the order of operations resulted in super not being
passed the value of the entire inject block.
2017-01-12 07:22:34 -08:00
Mike McQuaid
3ccbfa72a2 brew.1: use uninstall instead of remove.
Fixes #1817.
2017-01-11 14:19:56 -08:00
Mike McQuaid
5821572b9b formula_installer: don't assume requirement dependency is default formula. 2017-01-11 12:01:08 -08:00
Mike McQuaid
0158cc2e23 build: don't assume requirement dependency is default formula. 2017-01-11 12:01:08 -08:00
Mike McQuaid
fe117bf79b requirement: get formula from satisfy.
If satisfy returns a `Pathname` from `which` then we can use that to
infer a formula dependency from that `Requirement`.
2017-01-11 12:01:08 -08:00
Mike McQuaid
ebf3d939d1 Merge pull request #1808 from MikeMcQuaid/deprecate-linkapps
Deprecate brew (un)linkapps.
2017-01-11 11:13:26 -08:00
Mike McQuaid
0a7e69173d Merge pull request #1816 from MikeMcQuaid/xcode-xquartz-default-path
xcode, xquartz: use default location when possible.
2017-01-11 11:08:52 -08:00
Mike McQuaid
6d13c31fa4 Merge pull request #1814 from MikeMcQuaid/json_runtime_dependencies
formula: return runtime_dependencies in to_hash.
2017-01-11 11:06:49 -08:00
Mike McQuaid
2fcf349c99 Merge pull request #1812 from MikeMcQuaid/formulary-read-keg-formula
formulary: read from formula in opt prefix.
2017-01-11 11:01:22 -08:00
Mike McQuaid
a17f38dd36 xcode: use default location when possible.
Xcode can be installed anywhere but for most people it's in
`/Applications/Xcode.app` so just look there if `xcode-select` isn't
helpful before looking at Spotlight which can return weird results on
e.g. backup disks.

Fixes #1587.
2017-01-09 21:10:55 -08:00
Mike McQuaid
2c6915a48f xcode: general cleanup. 2017-01-09 21:10:55 -08:00
Mike McQuaid
4a39070c26 xquartz: use default location when possible.
Xcode can be installed anywhere but for most people it's in
`/Applications/Xcode.app` so just look there by default before looking
at Spotlight which can return weird results on e.g. backup disks.
2017-01-09 21:10:55 -08:00
Mike McQuaid
d8adae0f92 formulary: read from formula in opt prefix.
We want to prefer the newer/versioned formulae when possible but this
is preferable to a random cached formula or, worse, no formula.

This means `brew info foo` will never complain that `foo` is a missing
formula.
2017-01-09 21:42:09 +00:00
Mike McQuaid
28ad8a06cc formula: return runtime_dependencies in to_hash.
Which, in turn, provides it for `brew info --json=v1` so other tools
such as e.g. `brew bundle` can make use of this information.
2017-01-09 21:03:37 +00:00