154 Commits

Author SHA1 Message Date
Mike McQuaid
35e487064e
Merge pull request #7537 from MikeMcQuaid/cli_parser_formulae
Replace ARGV#flags_only with Homebrew.args.flags_only
2020-05-11 08:47:12 +01:00
Mike McQuaid
fa0d454817
Replace ARGV#flags_only with Homebrew.args.flags_only
Take two on https://github.com/Homebrew/brew/pull/7490
2020-05-10 15:12:25 +01:00
Bo Anderson
65d7036c19 bintray: url encode where needed 2020-05-10 01:48:29 +01:00
Mike McQuaid
20a1199375
Refactor CLI to remove unless args_parsed
Refactor the CLI::Args module so it doesn't have different paths to
check arguments depending on whether the arguments have been parsed or
not. Instead, set the values we need from the global ARGV at
first, global initialisation time where they will be thrown away when
the actual arguments are parsed.

To do this some other general refactoring was needed:
- more methods made private when possible
- e.g. `HEAD?` used consistently instead of `head` before arguments
  are parsed.
- formula options are only parsed after named arguments are extracted
2020-05-05 17:47:51 +01:00
Mike McQuaid
ae353ff42e
Revert "ARGV: Deprecate ARGV.flags_only and replace with Homebrew.args.flags_only" 2020-05-04 11:12:25 +01:00
Gautham G
66ac96acde ARGV: Depercate ARGV.flags_only and replace with Homebrew.args.flags_only 2020-05-03 13:55:51 +05:30
Bo Anderson
eb303dd654 software_spec: add uses_from_macos since bound 2020-04-28 16:45:32 +01:00
Gautham G
676ebf7419
ARGV: Deprecate ARGV.force_bottle? 2020-04-20 16:45:43 +01:00
Mike McQuaid
3381cbf5c7
Use Homebrew::EnvConfig. 2020-04-07 09:58:26 +01:00
Mike McQuaid
0c1b556196
uses_from_macos: remove before/after.
We're not actually using this anywhere and it makes the code
more complicated.

Relatedly, this PR fixes the issue where
`uses_from_macos "python@2" => :build` was valid on macOS but not
on Linux.
2019-12-19 14:36:33 +00:00
Mike McQuaid
176297d361
Handle 2.2.0 deprecations/disableds
- Make all `odeprecated` from 2.1.0 `odisabled` instead
- Remove dead code that won't be run now
- Remove (unused) `or_later` handling for bottles
2019-11-06 15:25:40 +00:00
Issy Long
341ea60807
Auto-fix Style/RedundantBegin offenses
- This also required auto-fixes for Layout/EmptyLinesAroundBlockBody and
  Layout/InconsistentIndentation once the auto-fixer had got rid of the
  "redundant begin"s.
2019-10-13 16:04:27 +01:00
EricFromCanada
9bd77b1819 formula API: expose uses_from_macos list 2019-09-23 13:00:15 -04:00
Gabriel
b2969e6063 Add needs_linux tag to specs that fails on MacOS 2019-06-03 15:52:53 -03:00
Gabriel
41f39939ca Extract linux spec cases & add hash support to default #uses_from_macos 2019-06-03 15:52:53 -03:00
Gabriel
aafe87524d Extends SoftwareSpec with #uses_from_macos 2019-06-03 15:52:53 -03:00
Mike McQuaid
36dbad3922
Add frozen_string_literal to all files. 2019-04-20 13:27:36 +09:00
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