1685 Commits

Author SHA1 Message Date
Mike McQuaid
ea2892f8ee
brew.rb: handle missing args. 2024-03-07 16:20:20 +00:00
Mike McQuaid
9259c345cc
utils/analytics: general cleanup.
We have plans to add analytics for commands and `brew test-bot`

This requires a certain amount of refactoring which I've done here.

There was also a bunch of legacy `*_influx_?` usage from when we used
both InfluxDB and Google Analytics that made sense to clean up and
excessive indirection.
2024-03-07 15:19:04 +00:00
Mike McQuaid
5a68dea2d6
Merge pull request #16771 from cho-m/pypi-package_name-version
utils/pypi: default to formula version when using package_name
2024-03-06 15:21:37 +00:00
Mike McQuaid
c3d18113c3
Merge pull request #16790 from cho-m/pypi-ignore-test-resources
utils/pypi: ignore test resources when counting matches
2024-03-04 14:41:18 +00:00
Mike McQuaid
8d463b1f4b
Merge pull request #16772 from cho-m/pypi-specify-dependencies
utils/pypi: specify dependencies needed to update resources
2024-03-04 09:24:51 +00:00
Michael Cho
7303d642dd
utils/pypi: specify dependencies needed to update resources
Also allow optionally installing these dependencies. By default, only
`python@3.y` formulae will be automatically installed.

Signed-off-by: Michael Cho <michael@michaelcho.dev>
2024-03-02 22:01:25 -05:00
Michael Cho
408c8e806f
utils/pypi: ignore test resources when counting matches
Signed-off-by: Michael Cho <michael@michaelcho.dev>
2024-03-01 16:26:34 -05:00
Kevin
4ea6a8ccbb Remove ability to skip the duplicate PR check in autobump
This simply removes the environment variable check. The code was disabled in core around two weeks ago in https://github.com/Homebrew/homebrew-core/pull/163023. We need this PR to land first as explained in https://github.com/Homebrew/actions/pull/506#issuecomment-1972489707 to unblock other PRs.
2024-02-29 20:47:28 -08:00
Michael Cho
79bbad9b38
utils/pypi: default to formula version when using package_name
Signed-off-by: Michael Cho <michael@michaelcho.dev>
2024-02-29 13:48:43 -05:00
Mike McQuaid
136c50a52a
Merge pull request #16753 from cho-m/pypi-only-resources
utils/pypi: allow only updating `extra_packages`
2024-02-29 10:42:42 +00:00
Michael Cho
b59921d174
utils/pypi: improve style
Co-authored-by: Mike McQuaid <mike@mikemcquaid.com>
2024-02-27 13:32:52 -05:00
Issy Long
c2507fdc6d
formula_audit: Check the license(s) of the specific release
- Some repositories occasionally change their licenses. For example they
  release a version of the software with one license and then decide to change
  the license later.
- Now that `?ref=` is a parameter to the GitHub Repositories License API,
  we can use that in the license audit to check if the license of the specific
  release matches the one declared in the formula.
2024-02-27 16:53:54 +00:00
Michael Cho
31533cff05
utils/pypi: allow only updating extra_packages 2024-02-27 10:40:42 -05:00
Bo Anderson
913c46d994
utils/github: support HOMEBREW_GITHUB_API_TOKEN with --no-fork 2024-02-26 23:43:58 +00:00
Issy Long
f4218a6316
Fix RuboCop Performance/MapCompact offenses
- Rename an iterator variable since it would make the line too long.
2024-02-25 22:59:59 +00:00
Michael Cho
53bb72548a
utils/pypi: use python from formula for non-pypi url metadata
This fixes the resource detection when formula has Python packages that
are not compatible with current aliased python formula, e.g. `awscli`

Also switch to `opt_libexec` path to ignore Python formula patch version
and revision bump differences.
2024-02-22 09:42:41 -05:00
Mike McQuaid
7df07b991b
dev-cmd/bump*: do not allow forcing multiple PRs.
If there are duplicate PRs: we shouldn't suggest and allow a trivial
override. Instead, they should be created manually.

An undocumented override exists for BrewTestBot to do autobumps.
2024-02-15 17:02:31 +00:00
Sean Molenaar
71123a07fd
Merge pull request #16603 from SMillerDev/fix/pypy_bump/fail_superfluous_excludes
fix: fail if superfluous packages are excluded
2024-02-12 16:37:05 +01:00
Sean Molenaar
f2eb1564e4
Update Library/Homebrew/utils/pypi.rb 2024-02-12 16:12:52 +01:00
Sean Molenaar
44206bb8f0
Update Library/Homebrew/utils/pypi.rb 2024-02-12 16:09:33 +01:00
Sean Molenaar
8c16ccc646
Update pypi.rb
Co-authored-by: Mike McQuaid <mike@mikemcquaid.com>
2024-02-12 15:39:51 +01:00
Markus Reiter
94afce5b13
Remove empty line. 2024-02-10 12:10:55 +01:00
Sohan Honavar
3dc104167e Update Library/Homebrew/utils/github/api.rb 2024-02-10 11:35:53 +05:30
Sohan Honavar
ca85c5355f Reused the variable as per the review suggestion 2024-02-10 03:50:08 +05:30
Sohan Honavar
57b7999843 Improved the GitHub link that is generated when the required scope of the token has mismatched with the present scope 2024-02-10 02:41:11 +05:30
Sean Molenaar
e307c736a5 fix: fail if superfluous packages are excluded 2024-02-06 10:14:19 +01:00
Eric Knibbe
e63b1f4da5
docs: monospace suggested values 2024-02-04 15:42:26 +01:00
Eric Knibbe
7698cf2098
audit: messaging improvements 2024-02-04 15:10:14 +01:00
Douglas Eichelberger
eb7c3e52a0 Require SystemInclude only where needed 2024-01-31 11:42:01 -08: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
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
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
Douglas Eichelberger
2e90749f9f brew vendor-gems: commit updates. 2024-01-26 15:03:59 -08:00
Mike McQuaid
86e1c8aacf
Merge pull request #16463 from dduugg/no-active-support
Remove ActiveSupport from runtime
2024-01-22 19:22:12 +00:00
Douglas Eichelberger
7ae087b24c Update Library/Homebrew/utils/gems.rb
Co-authored-by: Mike McQuaid <mike@mikemcquaid.com>
2024-01-19 13:36:16 -08:00
Douglas Eichelberger
08e12b2383 Remove ActiveSupport Array access core extensions 2024-01-19 13:34:52 -08:00
Douglas Eichelberger
64d6d6aded Remove canonical_segments check 2024-01-19 12:41:15 -08:00
Issy Long
f682147598
Fix RuboCop Style/RedundantFreeze offenses 2024-01-18 22:20:01 +00:00
Sean Molenaar
119e3d55ec chore: add audit to check if an EOL is known 2024-01-17 11:12:32 +01:00
Mike McQuaid
7e6f5c23a2
Merge pull request #16442 from branchvincent/setuptools
pypi: stop excluding setuptools
2024-01-09 09:00:05 +00:00
Mike McQuaid
8486ff88f1
utils/pypi: readability tweak. 2024-01-09 08:50:08 +00:00
Branch Vincent
ecc60a13e0
pypi: stop excluding setuptools 2024-01-08 19:17:45 -08:00
Douglas Eichelberger
0852e1d7b6 Refactor away String#indent 2024-01-08 13:36:45 -08:00
Douglas Eichelberger
b3522b3bb8 Remove ActiveSupport String filters 2024-01-02 16:56:27 -08:00
Michael Cho
10659a1d61
update-python-resources: show pip install failure when --verbose
Also use `--disable-pip-version-check` to remove pip update notices
2023-12-30 12:16:09 -05:00
Michael Cho
04d8ae20f3
Merge pull request #16367 from cho-m/pypi-use-formula-py
utils/pypi: use python from formula
2023-12-30 10:57:49 -05:00
Douglas Eichelberger
caf8259ae6 Code review changes 2023-12-27 15:29:33 -08:00
Douglas Eichelberger
3abbf4447e Some minor regexp match perf improvements 2023-12-27 13:16:36 -08:00