29627 Commits

Author SHA1 Message Date
Bevan Kay
2b60576165
rubocops/cask: add a cop for specific numbered shared file list files 2024-02-04 14:13:06 +01:00
apainintheneck
54b54b7e93
formula: change how #to_hash is defined for backwards compatibility
Now the output of commands like `brew info --json=` and
`brew generate-formula-api` should be the same as before along with
the additional files for the internal API. Before this commit the
hash key order had changed.
2024-02-04 13:50:57 +01:00
apainintheneck
3c503cdf56
Normalize service serialization method names 2024-02-04 13:50:57 +01:00
apainintheneck
d9a98ac4ec
Address review feedback
- move caveats serialization to a method
- remove unnecessary nesting where the hash would only have one key

Also, removed comment about checking disable and deprecation reasons.
2024-02-04 13:50:57 +01:00
apainintheneck
ba3a0f8c33
dev-cmd/generate-formula-api: generate homebrew-core.json
This adds the code to generate the homebrew-core.json file which
represents the entire tap instead of just the previous array of
formula hashes. Any shared logic has been moved into the top-level
hash scope including aliases, renames, tap_git_head and tap_migrations.

I also added a check to skip adding the variations hash to the api
hash if it is empty.

Now we're down to 10MB from 24MB!!!
2024-02-04 13:50:57 +01:00
apainintheneck
69609731d9
formula: share dependencies serialization logic
Note: This changes where the "head_dependencies" key in the hash
shows up but not the hash's contents.

"head_dependencies" now shows up directly after all of the other
dependency keys. Before it was always at the end of the hash after
variations.
2024-02-04 13:50:57 +01:00
apainintheneck
d2dd80b0d6
formula: share requirements serialization logic 2024-02-04 13:50:57 +01:00
apainintheneck
c1d85bf598
formula: add #to_api_hash
This will be used internally to generate a slimmer api hash representation
of formulas that will require less space and be faster to load.

Changes:
- Added #to_api_hash
- Modified #to_hash_with_variations to work with both #to_hash and #to_api_hash
- Modified #bottle_hash to have compact representation for the api hash
- Added #urls_hash to share url hash generation logic between the hash methods
2024-02-04 13:50:57 +01:00
BrewTestBot
d39268ba84
sorbet: Update RBI files.
Autogenerated by the [sorbet](https://github.com/Homebrew/brew/blob/master/.github/workflows/sorbet.yml) workflow.
2024-02-04 11:42:32 +00:00
Mike McQuaid
0d02aa3313
Merge pull request #16578 from dnicolson/fix-quick-look
Replace “QuickLook” with “Quick Look”
2024-02-04 12:09:45 +01:00
Dave Nicolson
31f09f8d30 Replace “QuickLook” with “Quick Look” 2024-02-03 23:54:04 +01:00
BrewTestBot
5e1f7cc033
sorbet: Update RBI files.
Autogenerated by the [sorbet](https://github.com/Homebrew/brew/blob/master/.github/workflows/sorbet.yml) workflow.
2024-02-03 00:26:42 +00:00
Patrick Linnane
392cc15a7d
Merge pull request #16572 from Homebrew/dependabot/bundler/Library/Homebrew/sorbet-runtime-and-sorbet-static-and-runtime-0.5.11226
build(deps): bump sorbet-runtime and sorbet-static-and-runtime in /Library/Homebrew
2024-02-02 08:39:36 -08:00
Issy Long
06028c204a
Merge pull request #16518 from issyl0/rubocop-md
rubocop: Try out `rubocop-md` for linting the code in our docs
2024-02-02 15:49:46 +00:00
BrewTestBot
5a7233bcd6
Update RBI files for sorbet-runtime-and-sorbet-static-and-runtime.
Autogenerated by the [vendor-gems](https://github.com/Homebrew/brew/blob/HEAD/.github/workflows/vendor-gems.yml) workflow.
2024-02-02 11:38:38 +00:00
BrewTestBot
ba72b5732d
brew vendor-gems: commit updates. 2024-02-02 11:32:37 +00:00
dependabot[bot]
19f120e247
build(deps): bump sorbet-runtime and sorbet-static-and-runtime
Bumps [sorbet-runtime](https://github.com/sorbet/sorbet) and [sorbet-static-and-runtime](https://github.com/sorbet/sorbet). These dependencies needed to be updated together.

Updates `sorbet-runtime` from 0.5.11223 to 0.5.11226
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

Updates `sorbet-static-and-runtime` from 0.5.11223 to 0.5.11226
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

---
updated-dependencies:
- dependency-name: sorbet-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: sorbet-static-and-runtime
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-02 11:29:22 +00:00
Mike McQuaid
926dcda187
Merge pull request #16570 from dduugg/addl-reqs
Add additional `require` support to tapioca
2024-02-02 08:34:34 +00:00
Patrick Linnane
377dbfc117
Merge pull request #16569 from Homebrew/dependabot/bundler/Library/Homebrew/sorbet-runtime-and-sorbet-static-and-runtime-0.5.11223
build(deps): bump sorbet-runtime and sorbet-static-and-runtime in /Library/Homebrew
2024-02-01 12:32:59 -08:00
BrewTestBot
4a045e9047
brew vendor-gems: commit updates. 2024-02-01 20:19:04 +00:00
BrewTestBot
799e4fa0a4
Update RBI files for diff-lcs.
Autogenerated by the [vendor-gems](https://github.com/Homebrew/brew/blob/HEAD/.github/workflows/vendor-gems.yml) workflow.
2024-02-01 17:55:50 +00:00
BrewTestBot
b899739402
brew vendor-gems: commit updates. 2024-02-01 17:52:32 +00:00
dependabot[bot]
73d78f21b6
build(deps): bump sorbet-runtime and sorbet-static-and-runtime
Bumps [sorbet-runtime](https://github.com/sorbet/sorbet) and [sorbet-static-and-runtime](https://github.com/sorbet/sorbet). These dependencies needed to be updated together.

Updates `sorbet-runtime` from 0.5.11222 to 0.5.11223
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

Updates `sorbet-static-and-runtime` from 0.5.11222 to 0.5.11223
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

---
updated-dependencies:
- dependency-name: sorbet-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: sorbet-static-and-runtime
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-01 17:50:33 +00:00
dependabot[bot]
52a6395a38
build(deps-dev): bump diff-lcs from 1.5.0 to 1.5.1 in /Library/Homebrew
Bumps [diff-lcs](https://github.com/halostatue/diff-lcs) from 1.5.0 to 1.5.1.
- [Changelog](https://github.com/halostatue/diff-lcs/blob/main/History.md)
- [Commits](https://github.com/halostatue/diff-lcs/commits)

---
updated-dependencies:
- dependency-name: diff-lcs
  dependency-type: indirect
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-01 17:49:32 +00:00
Douglas Eichelberger
464810884f brew typecheck --update-all 2024-02-01 09:48:30 -08:00
Douglas Eichelberger
15db90effd Add additional requires support to tapioca 2024-02-01 09:48:30 -08:00
Douglas Eichelberger
e235bcf903 Add caveats.rbi 2024-01-31 22:23:40 -08:00
BrewTestBot
b271028c65 sorbet: Update RBI files.
Autogenerated by the [sorbet](https://github.com/Homebrew/brew/blob/master/.github/workflows/sorbet.yml) workflow.
2024-01-31 22:23:40 -08:00
Douglas Eichelberger
8156c5d140 Audit remaining commands 2024-01-31 20:02:33 -08:00
Douglas Eichelberger
07eb24d220 Add missing SystemCommand::Mixin to update-sponsors 2024-01-31 19:55:13 -08:00
Bo Anderson
f5068ab317
Merge pull request #16558 from dduugg/mechanize-fixes
Fix mechanize vendoring; add RBI defs
2024-02-01 01:25:12 +00:00
Douglas Eichelberger
583852cb0a Add missing SystemCommand::Mixin to fix CI 2024-01-31 14:55:04 -08:00
Douglas Eichelberger
eb7c3e52a0 Require SystemInclude only where needed 2024-01-31 11:42:01 -08:00
BrewTestBot
6e843900bd
brew vendor-gems: commit updates. 2024-01-31 18:13:29 +00:00
dependabot[bot]
4e5fc54b5f
build(deps): bump sorbet-static-and-runtime and sorbet-runtime
Bumps [sorbet-static-and-runtime](https://github.com/sorbet/sorbet) and [sorbet-runtime](https://github.com/sorbet/sorbet). These dependencies needed to be updated together.

Updates `sorbet-static-and-runtime` from 0.5.11221 to 0.5.11222
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

Updates `sorbet-runtime` from 0.5.11221 to 0.5.11222
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

---
updated-dependencies:
- dependency-name: sorbet-static-and-runtime
  dependency-type: direct:development
  update-type: version-update:semver-patch
- dependency-name: sorbet-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-31 18:10:17 +00:00
Douglas Eichelberger
8b826cc765 Add rbi to replace hidden def 2024-01-31 09:41:49 -08:00
Douglas Eichelberger
004ef6ae87 brew vendor-gems: commit updates. 2024-01-31 09:41:49 -08:00
Douglas Eichelberger
b94b584417 Clear mechanize versions before install 2024-01-31 09:41:49 -08:00
BrewTestBot
e7ccb5d881
Update RBI files for bootsnap.
Autogenerated by the [vendor-gems](https://github.com/Homebrew/brew/blob/HEAD/.github/workflows/vendor-gems.yml) workflow.
2024-01-31 16:01:59 +00:00
BrewTestBot
9a86f7df70
brew vendor-gems: commit updates. 2024-01-31 15:54:07 +00:00
dependabot[bot]
b3f958b148
build(deps-dev): bump bootsnap in /Library/Homebrew
Bumps [bootsnap](https://github.com/Shopify/bootsnap) from 1.17.1 to 1.18.3.
- [Changelog](https://github.com/Shopify/bootsnap/blob/main/CHANGELOG.md)
- [Commits](https://github.com/Shopify/bootsnap/compare/v1.17.1...v1.18.3)

---
updated-dependencies:
- dependency-name: bootsnap
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-31 15:50:48 +00:00
Mike McQuaid
3707c90ce1
Merge pull request #16439 from arianf/fix-non-ghcr
Fixes `openjdk_dep_name_if_applicable` when not using `CurlGitHubPackagesDownloadStrategy`
2024-01-31 11:43:28 +00:00
BrewTestBot
f04d1b0bd0
sorbet: Update RBI files.
Autogenerated by the [sorbet](https://github.com/Homebrew/brew/blob/master/.github/workflows/sorbet.yml) workflow.
2024-01-31 00:23:25 +00:00
Douglas Eichelberger
3a27cac7df
Merge pull request #16510 from dduugg/inverse-include-exclude-cop
Vendor remaining Rails cops, remove ActiveSupport
2024-01-30 11:59:10 -08:00
BrewTestBot
6fa0f8552f
Update RBI files for sorbet-runtime-and-sorbet-static-and-runtime.
Autogenerated by the [vendor-gems](https://github.com/Homebrew/brew/blob/HEAD/.github/workflows/vendor-gems.yml) workflow.
2024-01-30 18:29:21 +00:00
BrewTestBot
3557d3bc65
brew vendor-gems: commit updates. 2024-01-30 18:23:40 +00:00
dependabot[bot]
fcff197802
build(deps): bump sorbet-runtime and sorbet-static-and-runtime
Bumps [sorbet-runtime](https://github.com/sorbet/sorbet) and [sorbet-static-and-runtime](https://github.com/sorbet/sorbet). These dependencies needed to be updated together.

Updates `sorbet-runtime` from 0.5.11219 to 0.5.11221
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

Updates `sorbet-static-and-runtime` from 0.5.11219 to 0.5.11221
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

---
updated-dependencies:
- dependency-name: sorbet-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: sorbet-static-and-runtime
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-30 18:20:02 +00:00
Mike McQuaid
176095a826
utils/bottles: tweak syntax. 2024-01-30 17:15:13 +00:00
Douglas Eichelberger
e00d066d87 Replace Time refinement with Timer Util 2024-01-29 18:50:12 -08:00
Arian Faurtosh
9088cf9be0 Fixes openjdk_dep_name_if_applicable when not using CurlGitHubPackagesDownloadStrategy
When installing a formula, `FormulaInstaller` calls `#pour`, which in turn calls:

6f20c0300a/Library/Homebrew/formula_installer.rb (L1260)

This `tab` is expected to have `#runtime_dependencies`, and it typically will because most packages come from http://ghcr.io

6f20c0300a/Library/Homebrew/utils/bottles.rb (L111)

Any `DownloadStrategy` that does not match `CurlGitHubPackagesDownloadStrategy` will lead here:
6f20c0300a/Library/Homebrew/software_spec.rb (L463)

Causing this branch to be executed for creating the `tab`:
6f20c0300a/Library/Homebrew/utils/bottles.rb (L119)

This causes a slight issue because `openjdk_dep_name_if_applicable` calls `keg.runtime_dependencies` when it's still `nil`.

6f20c0300a/Library/Homebrew/keg_relocate.rb (L134-L140)

And if it's blank, it won't do the regex replacement on `@@HOMEBREW_JAVA@@`, resulting in the following error when running `Kafka`:

```console
$ tail -f /opt/homebrew/var/log/kafka/kafka_output.log
/opt/homebrew/Cellar/kafka/3.6.0/libexec/bin/kafka-run-class.sh: line 346: /opt/homebrew/@@HOMEBREW_JAVA@@/bin/java: No such file or directory
/opt/homebrew/Cellar/kafka/3.6.0/libexec/bin/kafka-run-class.sh: line 346: exec: /opt/homebrew/@@HOMEBREW_JAVA@@/bin/java: cannot execute: No such file or directory
```

As mentioned by: https://github.com/orgs/Homebrew/discussions/2530#discussioncomment-2002374

> Installing Java-dependent formulae from bottle mirrors doesn't work properly at the moment. The issue is that brew needs the manifest in order to correctly replace @@HOMEBREW_JAVA@@ but brew only knows how to fetch manifests from ghcr.io.
> Pull requests to fix this welcome.

This should fix this issue, by getting the `runtime_dependencies` directly from the formula for those cases that it can't get it from https://ghcr.io or tabfile

```ruby
f_runtime_deps = formula.runtime_dependencies(read_from_tab: false)
tab.runtime_dependencies = Tab.runtime_deps_hash(formula, f_runtime_deps)
```
2024-01-29 15:57:55 -08:00