53 Commits

Author SHA1 Message Date
Issy Long
d7123d43c7
test/dev-cmd/bottle: Mark the bottling test as needs_network
- I was on a plane and this failed with:

```
expected block to not output to stderr, but output
"curl: (6) Could not resolve host: spdx.github.io\nWarning: Failed to fetch SBOM schema, cannot perform SBOM validation!
Warning: Could not fetch JSON schema to validate SBOM!\nWarning: SBOM is not valid, not writing to disk!"
```
2024-07-11 21:16:14 -04:00
Douglas Eichelberger
97370b4e6a Use @min_named_args to generate argv 2024-03-21 19:48:15 -07:00
Douglas Eichelberger
ee0c967ce0 Port Homebrew::DevCmd::Bottle 2024-03-20 10:16:17 -07:00
Markus Reiter
e3a102efd4
Make Tap::new private. 2024-03-06 15:10:14 +01:00
Douglas Eichelberger
26eda5a303
git grep -l '^describe' | xargs gsed -i 's|^describe|RSpec.describe|g' 2024-02-19 13:57:27 +00:00
Douglas Eichelberger
36f64d6b30 Enable Style/TopLevelMethodDefinition 2024-01-26 11:37:11 -08:00
Douglas Eichelberger
0852e1d7b6 Refactor away String#indent 2024-01-08 13:36:45 -08:00
Douglas Eichelberger
9075cbae62 brew style --fix 2023-04-21 09:58:50 -07:00
Douglas Eichelberger
ac1e6ded9a git grep -l '# typed: false' | xargs gsed -i 's|# typed: false||g' 2023-04-21 09:57:47 -07:00
Issy Long
3a83b5492c
rubocop: Clean up Style/BlockDelimiters excludes and autofix offenses
- The defaults of using "do ... end" for multi-line blocks everywhere is
  good, better than switching everything to braces everywhere.
2023-03-08 23:54:22 +00:00
Issy Long
734a651f93
rubocop: Enable Layout/MultilineMethodCallIndentation & fix offenses
- Part of trying to reduce the number of `Excludes:` we have in our
  RuboCop configs.
- The fixes here all seemed reasonable, with some minimal tweaks for
  line length and less floatiness. Apart from `test/dev-cmd/bottle_spec.rb`
  where RuboCop wanted to do some ridiculously floaty indentation and there
  wasn't an obvious alternative place to break the lines, so I opted for
  in-line disables instead.
2023-03-03 22:18:51 +00:00
Bo Anderson
af234779af
test: support non-master init.defaultbranch 2022-10-07 18:44:03 +01:00
Adrian Ho
af4955adfc dev-cmd/bottle: clean up intermediate tar
Otherwise Cellar gets cluttered.

Fixes https://github.com/Homebrew/brew/issues/12744.
2022-01-18 15:58:35 +08:00
Mike McQuaid
0cda6a0657
Only use patchelf.rb
Remove support for using the `patchelf` formula for writing as it's been
off by default for a long time now.
2021-10-19 15:15:56 +01:00
Bo Anderson
c46fe273d4
test/dev-cmd/bottle_spec: fix --merge output matching 2021-10-07 15:44:20 +01:00
Bo Anderson
b55498269f
Revamp APIs around bottle specifications 2021-09-20 15:02:05 +01:00
Mike McQuaid
30a65342e8
Deprecate, disable, delete code for Homebrew 3.2.0
Do the usual deprecation, disable, delete dance for Homebrew 3.2.0.
2021-06-17 11:34:32 +01:00
Mike McQuaid
b914411ac8
Delete Bintray code
Remove all code related to Bintray. It no longer works so there's no
point keeping it around.

Some of this could arguably be deprecated/disabled first/instead but:
I'm not sure I see the sense in keeping stuff around that's known to be
broken.
2021-05-12 13:37:18 +01:00
Chris Wegrzyn
3f60c95425 --download-strategy instead of --root-url-spec 2021-04-29 12:35:48 -04:00
Chris Wegrzyn
02987c2649 Add test 2021-04-29 12:34:07 -04:00
Michka Popoff
697edce654
bottle: do not fail on missing bottle block
For :all bottle blocks in linuxbrew-core, we are going to remove the bottle
block completely before rebottling.
In linuxbrew-core, we use --keep-old to keep the macOS sha lines.

I am not sure why this exception was written initially, but it
now prevents bottling these formulae, because we have no bottle block
and use --keep-old.

I think it's safe to just skip this check, when there is no bottle block
the old_checksum can just directly return nil.
2021-04-29 14:45:47 +02:00
Mike McQuaid
1d34f7f2fa
Merge pull request #11077 from MikeMcQuaid/any_bottles
Support `all: SHA256` bottles.
2021-04-09 10:18:19 +01:00
Mike McQuaid
0cb1645d25
bottles: support :all tag.
This allows the creation of bottles which will be used by any macOS
version, architecture or OS (i.e. macOS or Linux).

Add `TODO` stubs for where the bottle generation logic should be
implemented.
2021-04-09 09:50:16 +01:00
Mike McQuaid
d73351251c
Deprecate, disable, delete code for next major/minor version.
Do the usual dance for bumping our major/minor version.
2021-04-09 09:30:36 +01:00
Bo Anderson
093e6e4f79
Merge pull request #11065 from Bo98/cellar-non-host
software_spec: fix handling of default non-host Cellar
2021-04-08 21:44:11 +01:00
Mike McQuaid
1980a6a5a5
dev-cmd/bottle: avoid outputting new default bottle domain. 2021-04-08 17:58:24 +01:00
Bo Anderson
2ed3339478
software_spec: fix handling of default non-host Cellar 2021-04-08 02:21:31 +01:00
Bo Anderson
1bb651469f
dev-cmd/bottle: don't fail on --keep-old with unchanged values 2021-04-07 20:26:36 +01:00
Rylan Polster
3dccea251f
bottle: write bottles in correct order 2021-02-04 16:04:13 -05:00
Rylan Polster
727ac9b47f
bottle: write bottles with new syntax 2021-02-03 20:46:20 -05:00
Rylan Polster
4a82d807e1
style: remove RSpec/MultipleDescribes violations in commands 2021-02-01 20:30:51 -05:00
Mike McQuaid
e65e310fd0
Fix brew style 2021-01-29 20:56:59 +00:00
Mike McQuaid
4afebd2872
Fixup brew bottle (and tests) for #10447. 2021-01-28 13:19:41 +00:00
Michka Popoff
838cf2fc58
bottle_spec: run generate_sha256_line test on mac too 2021-01-28 13:19:40 +00:00
Mike McQuaid
902993afe4
dev-cmd/bottle_spec: add another integration test on macOS. 2021-01-28 13:19:40 +00:00
Michka Popoff
de2e309d50
cellars: write tag specific cellars
With #10186 now merged, the tag specific cellar information is being read by brew.
This PR (once merged) will start adding the cellar information for each tag instead
of having a single cellar line on the top of the bottle block.

Each new CI build in homebrew-core will slowly start migrating the cellar lines to
the right place. If keep-old is used, the old "all tag" cellar line is removed and
added to each tag.
2021-01-28 13:19:40 +00:00
EricFromCanada
2ed324ebc0 use backticks around suggested input, flags, and binaries 2021-01-26 16:19:47 -05:00
Seeker
4cbd4f296b bottle: add tests for merge_bottle_spec 2020-12-31 11:29:10 -08:00
Seeker
2fc17772f7 bottle_spec: more cleanup 2020-12-25 13:10:10 -08:00
Seeker
13e0188187 bottle_spec: reduce code duplication in tests 2020-12-24 12:50:15 -08:00
Michka Popoff
75491b7906 bottle --merge: add more write tests
In preparation for #9315
2020-12-23 10:34:16 +01:00
Michka Popoff
4afcae58c3 bottle: add test for writing part
In preparation for https://github.com/Homebrew/brew/issues/9315
2020-12-22 13:31:20 +01:00
Michka Popoff
d768b6649a bottle: add tests for json merging
- Extract the json reading from the json merging: it makes the code hard to understand.
This helps for the separation of concerns: the jsons are read in one method;
and merged in a second one
- Added a first test to check the merge function

No change in behaviour was done, this change is just there to increase code coverage
and to prepare for #9315
2020-12-07 19:58:49 +01:00
Markus Reiter
24ae318a3d Move type annotations into files. 2020-10-10 14:59:39 +02:00
Mike McQuaid
36dbad3922
Add frozen_string_literal to all files. 2019-04-20 13:27:36 +09:00
Mike McQuaid
aa44509be9
Test dev-cmd *_args methods
Also, add a few missing invocations.
2019-03-27 13:35:42 +00:00
Mike McQuaid
59d680a626
dev-cmd: only one integration test per command.
Integration tests are useful in detecting breakages but much slower so
let's only use one per command and install formula outside the
integration test framework (which is also slow).
2019-03-27 09:45:48 +00:00
Steven Peters
7116b74705 dev-cmd/bottle: require arg for --root-url 2018-10-29 14:54:37 -07:00
EricFromCanada
ddf057f3dd dev-cmd/: edit help text and descriptions. 2018-10-19 13:12:11 -04:00
Markus Reiter
d33241bc11 Use -- for bottles. 2018-08-06 17:59:51 +02:00