137 Commits

Author SHA1 Message Date
Mike McQuaid
d12e39633c
Remove odisabled. 2019-04-01 15:07:50 +01:00
Mike McQuaid
d64429a736
rubocop: enable Style/IfUnlessModifier. 2019-02-21 12:55:49 +00:00
Mike McQuaid
1aa8ad09e2
Deprecate macOS versions below Mavericks
And remove all dead/unneeded code.
2019-01-27 12:27:47 +00:00
Mike McQuaid
eed1444d61
Update deprecations and cleanup
- Move `odeprecated` to `odisabled`
- Remove `odisabled`
- Enable automatic cleanup on install/reinstall/upgrade.
2019-01-23 21:57:40 +00:00
Mike McQuaid
170c5493a4
Update deprecations
- Add some `odeprecated`
- Make some `odeprecated` now `odisabled`
- Remove `odisabled` code.
- Remove old update migrations
- Remove GCC 4.0 compiler
- Remove Tiger-only code
- Remove 32-bit-only code
- Remove use of LD64
- Remove GCC 4.3 - 4.8 support.
2019-01-08 19:13:46 +00:00
Mike McQuaid
fc418fd333
More deprecated/disabled updates
- remove odisabled
- move odeprecated to odisabled
2018-10-24 10:40:39 +01:00
EricFromCanada
20167e5f1b Adjust comments to tidy API docs output. 2018-10-18 21:42:43 -04:00
Markus Reiter
e9b9ea49a1 Update to RuboCop 0.59.1. 2018-09-17 03:45:59 +02:00
Shaun Jackman
3c4f9c746e Elide prefix "/usr/local" in bottle block
brew test-bot --ci-upload is run on a Linux machine.
The macOS bottles have a prefix of "/usr/local".
The default prefix on Linux is /home/linuxbrew/.linuxbrew.
Elide prefix "/usr/local" in the bottle block, even it does not match
the default prefix. Ditto for cellar.
2018-09-11 14:21:33 -07:00
Shaun Jackman
f6093961ef Add Homebrew::DEFAULT_PREFIX for Linux
The default prefix is /usr/local on macOS
and /home/linuxbrew/.linuxbrew on Linux.
2018-09-11 09:57:08 -07:00
Shaun Jackman
294db31849 BottleSpecification: Do not skip bottle relocation on Linux
Bottles must be relocated on Linux to find the brewed glibc and gcc.
2018-08-15 10:23:55 -07:00
Shaun Jackman
c080d8fefa Fix Bottle::Filename.new for taps
The file name of a bottle should not include the tap.
2018-08-08 12:03:24 -07:00
Markus Reiter
c1f4d0edb8 Remove trivial method. 2018-08-08 07:33:54 +02:00
Markus Reiter
93faf44e48
Merge pull request #4612 from reitermarkus/bottle-double-dash
Use `--` for bottles.
2018-08-06 18:15:04 +02:00
Markus Reiter
d33241bc11 Use -- for bottles. 2018-08-06 17:59:51 +02:00
Markus Reiter
888a7073bc Change migration to loop through formulae. 2018-08-06 17:25:29 +02:00
Mike McQuaid
facd76bc51 portable-ruby: respect HOMEBREW_BOTTLE_DOMAIN variable.
This was requested in:
https://discourse.brew.sh/t/adding-additional-download-sources-to-homebrew/2446

With this change you can use e.g. Artifactory for Homebrew's portable
ruby.
2018-06-29 19:51:18 +01:00
Mike McQuaid
cffa5a9864 Disable/delete/add more deprecations
Move various `odeprecated` to `odisabled` and delete uses of
`odisabled`.
2018-04-08 14:57:17 -07:00
Mike McQuaid
9fca172d03 Fix HOMEBREW_RUBY_WARNINGS="-w"
Fix various circular requirements, method redefinitions, etc.
2018-04-07 20:28:56 +01:00
Alexander Mancevice
138d4df710 Detect bottle download strategy
Use ::detect method of DownloadStrategyDetector to detect download strategy of a bottle from its root_url.

This allows bottle root_urls to be s3:// style URLs and be handled by the S3DownloadStrategy without specifying ':using =>'
2018-03-25 13:45:58 -04:00
Ethan Edwards
06f7d7d696 Allow bottles to use any DownloadStrategy 2018-03-24 10:53:49 +00:00
Mike McQuaid
cf5fdeef1d Rubocop: manual rule fixes. 2017-09-24 21:23:59 +01:00
Mike McQuaid
8217385627 software_spec: improve no resource version error.
This should make it clearer to us that they needed to `brew update`.

Fixes https://github.com/Homebrew/homebrew-core/issues/16075
Fixes https://github.com/Homebrew/brew/issues/2944
2017-08-07 10:12:52 +01:00
Mike McQuaid
2d18ba586b Enable more deprecations.
It's been long enough that these have been commented out so let's
enable them globally.
2017-07-21 10:50:07 +01:00
ilovezfs
418f578601 software_spec: rescue TapFormulaUnavailableError in recursive_dependencies 2017-07-02 06:25:25 -07:00
Markus Reiter
3b4ee58c49 Refactor using Forwardable and DelegateClass. 2017-06-28 09:25:31 +02:00
ilovezfs
cbf89e50bb software_spec: define recursive deps and reqs 2017-06-25 03:38:21 -07:00
Mike McQuaid
7a38bab333 Fixup all RuboCop warnings. 2017-05-29 18:43:18 +01:00
Mike McQuaid
4971855e9b software_spec: process macOS versions on Linux.
This module doesn't actually have any behaviour that's problematic at
runtime on Linux so we may as well use it to properly sort macOS
versions there.
2017-04-25 14:34:27 +01:00
Mike McQuaid
ba3c46d24f More deprecations.
Deprecate more methods. Internal APIs have been verified to be unused
elsewhere and removed. External APIs have had deprecation methods added.
Existing deprecations have been either upgraded to produce warnings or
no longer deprecated and the reasoning documented.
2017-04-22 16:28:07 +01:00
Mike McQuaid
f98304026b Deprecate 32-bit options.
These were formerly supported but as it has been a very long time since
32-bit software was necessary on macOS these have been deprecated with
a `brew audit` warning and a future `odeprecated`.
2016-12-20 10:22:30 +00:00
Mike McQuaid
cf1fa0c5bc audit: flag use of "fails_with :llvm".
Also, add TODOs for deprecating this properly at a later point.
2016-12-13 02:10:11 +00:00
Shaun Jackman
8a3481ee1d Do not remove unknown bottle tags 2016-11-23 10:36:09 -08:00
Mike McQuaid
1f6c26a2e4 software_spec: no _or_later in bottle filenames.
It's more useful to be able to "bless" an existing bottle to be used on
later OSs (e.g. where it cannot yet be built) than it is to have to
create a new, identical bottle just to have a different filename.
2016-11-05 16:13:42 -04:00
Markus Reiter
e851c9bf6c Style/Alias: Prefer alias. 2016-09-23 18:19:53 +02:00
Markus Reiter
23eac7ab89 Fix DoubleNegation. 2016-09-23 15:30:06 +02:00
Markus Reiter
52ff988530 Fix RuboCop CaseEquality. 2016-09-23 15:30:06 +02:00
Mike McQuaid
3f9cce0a03 Use new "macOS" naming where appropriate.
Not quite a mass replacement as I've used OS X and Mac OS X where
describing specific older versions and added compatibility methods
for things in the DSL.
2016-09-18 19:57:19 +01:00
Mike McQuaid
1bdbb0f462 Improve rescue nesting. 2016-09-17 17:01:04 +01:00
Mike McQuaid
6693915399 rubocop --auto-correct all remaining files.
But remove some manual `.freeze`s on constants that shouldn't be
constants.
2016-09-17 16:14:13 +01:00
Mike McQuaid
27ecf588c7 Rename bottle's revision to rebuild. 2016-08-18 17:32:35 +01:00
Xu Cheng
a8566c9848 various: eliminate the usage of any? (#638)
`any?` is not the opposite of `empty?`. Besides the case that
`[false, nil].any?` will return false, `any?`(O(n)) has much worse
performance than `empty?`(O(1)).
2016-08-05 22:01:32 +08:00
Uladzislau Shablinski
242508fca4 software_spec: use version dups for resources (#534)
Also prevent the commit of formula's HeadVersion from passing to the resource. 

This is a fix of #531
2016-07-17 04:49:32 +08:00
Vlad Shablinsky
3fb5d70a72
Unify Version.create usage
Substitue each Version.new and HeadVersion.new with Version.create
to unify Version and HeadVersion instantiation among core code.

Note that this does not relate to Mac::OS::Version class.
2016-07-16 20:39:13 +08:00
Vlad Shablinsky
2e916110e4
Use HeadVersion for install/reinstall 2016-07-16 20:39:13 +08:00
Mike McQuaid
931e292bf1 Make bottle code cross-platform. 2016-05-08 16:51:22 +01:00
Andrew Janke
094f6f47dd Formula: include bad value in invalid-option error message
Makes identifying which line in a formula has the bad use of 'option' easier.

Closes #120.

Signed-off-by: Andrew Janke <andrew@apjanke.net>
2016-04-21 15:21:44 -04:00
Xu Cheng
478f18a8f5 software_spec: add ExternalPatch to dependency_collector
Since we support `apply` DSL in the `patch` block, external
patch files could be any compressed archive. As result, it
could introduce dependencies like xz, 7z etc.

Add the resource of ExternalPatch to dependency_collector, so
we could track these resource dependencies.

Closes Homebrew/homebrew#50318.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-03-22 19:44:16 +08:00
Mike McQuaid
26ec9f9ea0 formula: add new pour_bottle DSL with reason.
This allows there to be a user-visible description of why a bottle is
not being installed.
2016-02-18 10:21:20 +00:00
Mike McQuaid
74858b28c5 software_spec: add new bottle check class. 2016-02-18 10:21:20 +00:00