2434 Commits

Author SHA1 Message Date
Alyssa Ross
05b85a7bef keg: update installed dependency resolution
Closes #1525. (See there for a motivation for this change.)
2017-01-01 14:26:28 +00:00
Alyssa Ross
524d9ce8f3 keg: test dep fallback with unknown formulae 2016-12-31 17:53:06 +00:00
Alyssa Ross
8b30abe060 keg: handle dependencies of moved/renamed formulae
In #1497 I switched from Keg#to_formula for comparing kegs to formulae
to comparing the name and tap in the keg's tab to the name and tap of
the formula.

However, this fails to match if the name and tap of the formula have
changed since the keg was installed, so it's clearly better to use
Keg#to_formula where possible, and fall back to the information in the
tab when #to_formula can't be used.
2016-12-31 17:53:06 +00:00
Mike McQuaid
33fbf3f32d Merge pull request #1750 from alyssais/fallback_dependencies
keg: fall back for dependencies of buggy tabs
2016-12-31 17:34:55 +00:00
Mike McQuaid
1c9651f04f Merge pull request #1756 from alyssais/nil_dependents
keg: don't return nil dependencies
2016-12-31 17:34:17 +00:00
Mike McQuaid
d85a83c9dc Merge pull request #1752 from alyssais/uninstalling_dependencies
keg: fix fallback dependencies with multiple kegs
2016-12-31 17:33:08 +00:00
Alyssa Ross
fb920668c8 keg: don't return nil dependencies
This is a proper fix to the problem addressed by #1510.

The problem arises when f_kegs is nil, which can happen if the name and
tap used to install a keg don't match the name and tap currently
associated with its formula (i.e. if it's been renamed or moved).
2016-12-31 14:16:38 +00:00
Mike McQuaid
b1e27d689d Merge pull request #1701 from MikeMcQuaid/deprecate-std-superenv-stuff
ENV: deprecate old methods.
2016-12-30 20:43:27 +00:00
Alyssa Ross
d998a3fcce tab: remove #reliable_runtime_dependencies?
See https://github.com/Homebrew/brew/pull/1750#discussion_r94243825 for
discussion.

Removes Tab#reliable_runtime_dependencies? in favour of returning nil
from Tab#runtime_dependencies if the list is unreliable.

Because Homebrew 1.1.6 hasn't been tagged yet, tabs created in tests
aren't created with a homebrew_version that marks the
runtime_dependencies in the Tab as reliable, so there are some tests
that fail. To work around this, I've had to add a line to some tests
that explicitly overrides the homebrew_version in the Tab. This is
really ugly though, so they should be removed as soon as possible after
1.1.6 is released.
2016-12-30 20:34:14 +00:00
Mike McQuaid
e50102d91e ENV: deprecate old methods.
These should have been deprecated long ago but we didn’t really have
the necessary framework to do so.
2016-12-30 20:20:13 +00:00
Alyssa Ross
01e1f7d49e keg: fix fallback dependencies with multiple kegs
Fixes #1524.
2016-12-30 18:41:14 +00:00
Alyssa Ross
4322c1c562 tests: explain Homebrew version checking in tabs 2016-12-30 18:19:26 +00:00
Alyssa Ross
c41d1d8148 tab: remove #homebrew_tag
This method isn't used any more
2016-12-30 18:16:49 +00:00
Alyssa Ross
ce454bd141 tab: parse full Homebrew version string
It didn't occur to me that this would work, but it does! Magic.
2016-12-30 18:15:35 +00:00
Alyssa Ross
e5db7927c9 keg: fall back for dependencies of buggy tabs
Fixes #1554.
2016-12-30 16:16:53 +00:00
Alyssa Ross
bdbc19c614 tab: implement #reliable_runtime_dependencies? 2016-12-30 16:16:28 +00:00
Alyssa Ross
a69997cab0 tests: include homebrew version in receipt fixture 2016-12-30 16:15:04 +00:00
Markus Reiter
0f8cb4ba27 Add option to disable methods on specific date. 2016-12-30 14:01:43 +01:00
Mike McQuaid
758de6b454 Merge pull request #1694 from rwhogg/add-kabylake
Add Kaby Lake to Linux hardware list
2016-12-29 14:32:12 +00:00
Mike McQuaid
7148370ad8 Merge pull request #1723 from alyssais/runtime_dependencies
formula: don't expand unused optional dependencies
2016-12-29 14:31:41 +00:00
Mike McQuaid
577bf628e8 Merge pull request #1737 from alyssais/tap_dependents
keg: installed dependencies of unknown formulae
2016-12-29 14:28:59 +00:00
Alyssa Ross
3a27d81219 keg: fix dependents with unavailable formulae
Because of an accidental use of `=` instead of `==`, the source formula
check would be skipped when determining if a keg depended on another one
(so only the versions would be compared).

Fixed that comparison, and updated the corresponding test.

Glad I caught that!
2016-12-27 22:58:44 +00:00
Alyssa Ross
e5d7e13c63 keg: installed dependencies of unknown formulae
Previously, trying to resolve the dependencies of a keg would raise an
exception if the formulae for any of the dependencies could not be found
(e.g. if it had been moved to another tap).

This commit updates the dependency finding logic to catch these
exceptions, and fall back to comparing names and taps of formulae, which
should give the correct behaviour.

Fixes #1586.
2016-12-27 18:03:05 +00:00
Alyssa Ross
0a20edf945 tests: don't run LinkTests twice
see #1526
2016-12-27 17:34:46 +00:00
Alyssa Ross
43f2e9e7bb formula: don't expand unused optional dependencies
This properly addresses Homebrew/homebrew-core#7826.
2016-12-23 21:31:10 +00:00
Alyssa Ross
3f724825d3 Revert "Revert "formula: runtime deps of build deps aren't runtime""
This reverts commit 862c3ba4a2fb76140e46fdf49a1ea6857f140a29.
2016-12-23 15:01:02 +00:00
Bob W. Hogg
ebb659af7d Add Kaby Lake to Linux hardware list
Note that no Mac hardware using a Kaby Lake processor has been released
yet, so do not add it to the equivalent list for macOS.
2016-12-18 14:50:38 -08:00
David Broder-Rodgers
0a007fc983 Updated homepage 404 check to use explicit parameters and return the status code 2016-12-18 22:37:26 +00:00
Joshua Morten
6eb7aa6d4d fix typo 2016-12-13 15:40:31 -08:00
ilovezfs
862c3ba4a2 Revert "formula: runtime deps of build deps aren't runtime" 2016-12-13 11:15:00 -08:00
Mike McQuaid
666463ca2b Merge pull request #1592 from alyssais/runtime_dependencies
formula: runtime deps of build deps aren't runtime
2016-12-12 13:28:56 +00:00
Uladzislau Shablinski
45ef7ea0b0 Merge pull request #1343 from vladshablinsky/explicit-specs
Allow to install any spec
2016-12-11 14:26:46 +03:00
Mike McQuaid
e347f7ade3 reinstall/upgrade/install: always output options.
This is both easier for debugging and to communicate with users what is
being done.
2016-12-10 13:07:03 +00:00
Mike McQuaid
52691cd0de Merge pull request #1611 from MikeMcQuaid/bash-test-race
bash_test: handle race condition.
2016-12-03 16:36:37 +00:00
Mike McQuaid
3f6d31dee1 bash_test: handle race condition.
Other tests may delete Bash files (e.g. `shcmd.sh`) while tests are
ongoing so ensure this doesn't cause a test failure.
2016-12-03 15:59:05 +00:00
Uladzislau Shablinski
a24a919a40 install_test: add HEAD tests 2016-12-03 18:52:08 +03:00
Mike McQuaid
c560c47202 fs_leak_logger: use more permissive mkpath.
This avoids a race condition occurring here.
2016-12-03 15:04:02 +00:00
Bob W. Hogg
f7e5a85c2b uninstall_test: require testing_env 2016-12-02 19:41:38 -08:00
Uladzislau Shablinski
6ef96d0be4 Update tests for new install behaviour 2016-12-03 04:42:04 +03:00
Alyssa Ross
2b68da8252 formula: runtime deps of build deps aren't runtime
Fixes #1554 (but only for new installations)
2016-11-29 01:39:02 +00:00
Mike McQuaid
3e3df9568e Merge pull request #1580 from MikeMcQuaid/fix-uses-test
uses_test: don't rely on output order.
2016-11-26 18:16:40 +00:00
Mike McQuaid
e330047ff9 diagnostic: silence a Jenkins doctor warning.
Allow our Jenkins CI testing for Homebrew/brew to live outside of
`/usr/local` without complaint (as it's not using any binary packages
anyway).
2016-11-26 16:32:48 +00:00
Mike McQuaid
b851935484 uses_test: don't rely on output order.
I've seen this vary.
2016-11-26 16:21:27 +00:00
Mike McQuaid
c3f959d6af Merge pull request #1542 from woodruffw/deprecate-utils-json
compat: deprecate Utils::JSON in favor of corelib JSON.
2016-11-21 18:45:20 +00:00
William Woodruff
d07b9ed7f2
Replace Utils::JSON with corelib JSON calls. 2016-11-20 20:06:25 -05:00
Mike McQuaid
a16bfa57e8 Merge pull request #1537 from umireon/nonfatal-requirement-message-once
install: suppress redundunt warnings with `depends_on` requirement
2016-11-20 11:59:57 +00:00
Mike McQuaid
7853406fb4 Merge pull request #1515 from alyssais/formula_cache
Fix flaky tests.
2016-11-18 15:37:49 +00:00
Mike McQuaid
e8d5040141 testbottest: don't use TEST_FIXTURE_DIR.
This isn't defined for formulae.
2016-11-18 14:08:40 +00:00
Kaito Udagawa
e9815bf2bd install: add tests with custom requirements 2016-11-18 20:47:46 +09:00
Zhiming Wang
00532a3e3a
formula: update test_fixtures path
Fix regression caused by #1364.
2016-11-17 15:54:51 -05:00