37083 Commits

Author SHA1 Message Date
Mike McQuaid
565eb363ea
update_report: show "Delete and Installed" header.
Clarify that the deleted formulae/casks when not using `report_all`
are only those that have been deleted _and_ the user has them
installed. This should avoid users glossing over this information as
it is pretty relevant to them.

While we're here, refactor some of the `report_all` logic to make it
easier to remove it all on the next Homebrew major/minor version.
2023-08-08 16:57:03 +01:00
Mike McQuaid
dc42544c59
Merge pull request #15844 from EricFromCanada/cookbook-env-vars
Formula Cookbook: expand environment variable section
2023-08-08 15:10:03 +01:00
Eric Knibbe
0f4b0028b5
Formula-Cookbook: expand environment var section 2023-08-08 08:22:59 -04:00
Mike McQuaid
d313e8b027
Merge pull request #15824 from dduugg/inreplace-static
Make inreplace a purely static method v2
2023-08-08 12:32:10 +01:00
Mike McQuaid
97fdc9243b
Merge pull request #15843 from EricFromCanada/cookbook-download-strategies
Formula Cookbook: revise download strategy docs
2023-08-08 12:30:53 +01:00
Douglas Eichelberger
5d5c22e104 Replace integration test with unit test 2023-08-07 18:32:08 -07:00
Douglas Eichelberger
2b29c498fa s/blk/block 2023-08-07 17:26:46 -07:00
Eric Knibbe
2b8c37b04e
Formula-Cookbook: revise download strategy docs 2023-08-07 15:30:11 -04:00
Mike McQuaid
a7d8ba131e
Merge pull request #15839 from Homebrew/sponsors-maintainers-man-completions
Update manpage and completions.
2023-08-07 19:22:44 +01:00
BrewTestBot
c2160f68e7
Update manpage and completions.
Autogenerated by the [sponsors-maintainers-man-completions](https://github.com/Homebrew/brew/blob/HEAD/.github/workflows/sponsors-maintainers-man-completions.yml) workflow.
2023-08-07 16:10:53 +00:00
Mike McQuaid
7ed11b230f
Merge pull request #15836 from eugenesvk/hide_section
Allow hiding new/deleted formula/cask sections on update
2023-08-07 17:09:57 +01:00
eugenesvk
2c7c064040 Allow hiding new formula/cask sections on update 2023-08-07 20:38:54 +07:00
Mike McQuaid
a8022e6040
Merge pull request #15835 from carlocab/framework-install-names
keg_relocate: retain framework info in relocatable install names
2023-08-07 08:47:05 +01:00
Mike McQuaid
3929bbc1de
Merge pull request #15830 from branchvincent/pip-no-compile
formula: use pip's `--no-compile`
2023-08-07 08:20:15 +01:00
Mike McQuaid
6b773a36e8
Merge pull request #15831 from branchvincent/update-python-git-clone
pypi: support updating resources for git clones
2023-08-07 08:19:44 +01:00
Carlo Cabrera
dbeac59584
keg_relocate: retain framework info in relocatable install names
`dyld` uses the target library's install name to work out whether this
is a Framework or a dylib, which affects how `dyld` searches for the
desired library.

We should therefore avoid confusing `dyld` by including the
`*.framework` part of the install name in the target dylib, which is
what this change does.

Here's a concrete example of what this changes. Before:

    ❯ otool -L /usr/local/bin/python3
    /usr/local/bin/python3:
            @loader_path/../Python (compatibility version 3.11.0, current version 3.11.0)
            /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1319.100.3)

After:

    ❯ otool -L /usr/local/bin/python3
    /usr/local/bin/python3:
            @loader_path/../../../../Python.framework/Versions/3.11/Python (compatibility version 3.11.0, current version 3.11.0)
            /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1319.100.3)

By retaining the `Python.framework` part of the install name, we make
sure that `dyld` knows that it should be looking for a framework rather
than a dylib.
2023-08-07 14:43:56 +08:00
Kevin
98f1be77f9
Merge pull request #15829 from apainintheneck/add-installed-flag-to-bump-cmd
cmd/bump: add --installed flag
4.1.4
2023-08-06 20:39:46 -07:00
Bo Anderson
c0233eaa2a
Merge pull request #15834 from muescha/muescha-fix-fignature-KeyboardLayout
unversioned_cask_checker.rb - fix signature of KeyboardLayout
2023-08-06 21:14:03 +01:00
Muescha
c447aa6d94
unversioned_cask_checker.rb - fix signature of KeyboardLayout
fix signature for KeyboardLayout
2023-08-06 21:30:45 +02:00
Branch Vincent
e5ed11a5b7
pypi: support updating resources for git clones 2023-08-05 17:12:23 -07:00
Branch Vincent
61d23fef53
formula: use pip's --no-compile 2023-08-05 16:39:29 -07:00
apainintheneck
0979f7c35f cmd/bump: add --installed flag
This allows users to only try to bump formulae and casks they
currently have installed. It copies this behavior from the
livecheck command.
2023-08-05 10:01:11 -07:00
Carlo Cabrera
3eb48a828d
Merge pull request #15828 from carlocab/recursive-rpaths
os/mac/mach: avoid recursively resolving rpaths
2023-08-05 23:58:07 +08:00
Carlo Cabrera
b5334b818c
os/mac/mach: avoid recursively resolving rpaths
This is just a recipe for infinite loops. Plus, recursive references are
likely to be invalid, so we don't really gain much by attempting to
resolve them.[^1] (But we could if we made the logic here much more
complicated.)

Fixes a CI failure seen at Homebrew/homebrew-core#138323.

[^1]: See, for example, embree/embree#455.
2023-08-05 23:40:22 +08:00
Mike McQuaid
b0da6e58c2
Merge pull request #15827 from MikeMcQuaid/bin_brew_home_set
bin/brew: require HOME to be set.
2023-08-05 14:32:49 +01:00
Mike McQuaid
4184546067
bin/brew: require HOME to be set.
Rather than having increasingly involved workarounds that require
other variables to be set.

Closes #15822
2023-08-05 13:41:50 +01:00
Kevin
22afefce8e
Merge pull request #15826 from apainintheneck/stop-using-api-in-bump
dev-cmd/bump : stop using API to load formulae/casks
2023-08-04 19:39:34 -07:00
apainintheneck
474656ffaa dev-cmd/bump : stop using API to load formulae/casks
Even though the command already sets without_api that only
affects how named args are loaded. In this command, we used to load
many formulae and casks all at once using the API according to
user settings. Now we just mandate that all loading must skip the API.
2023-08-04 19:08:22 -07:00
Douglas Eichelberger
880362669b Add tests 2023-08-04 16:21:34 -07:00
Douglas Eichelberger
864f31e52a Forward block argument 2023-08-04 16:20:56 -07:00
Douglas Eichelberger
efd02b956d Revert "Revert "Make inreplace a purely static method""
This reverts commit 8656caa67ce2dd9ec6484969b183c1fd7805451e.
2023-08-04 16:20:38 -07:00
Mike McQuaid
3f49592181
Merge pull request #15811 from MikeMcQuaid/sharding_fixes
Various sharding fixes
2023-08-04 17:33:19 +01:00
Mike McQuaid
b3c33d34ab
Various sharding fixes
- Load paths with no API when needed (e.g. for `brew edit`)
- Use no API mode for `brew log` as it's needed there
- Define sharding format for homebrew-cask and homebrew-core inside
  `Tap` methods
- Create new formulae/casks in location defined by these `Tap` methods
- Fix a bug in Formulary that made sharded formulae lookup less
  efficient (and possibly broke it for core and some API usage)
- Fix various other hardcoded Formula/Cask directory assumptions

Co-authored-by: Bo Anderson <mail@boanderson.me>
2023-08-04 16:43:13 +01:00
Mike McQuaid
75a1948ad5
Merge pull request #15821 from carlocab/no-eval-grep
bin/brew: avoid `eval` and `grep`
2023-08-04 15:17:14 +01:00
Carlo Cabrera
bcbb969796
bin/brew: avoid eval and grep
`eval` is a much bigger hammer than we need here, so let's try to avoid
that.

Also, we can use the builtin `read` instead of shelling out to `grep`
which will be slightly more efficient.
2023-08-04 22:00:46 +08:00
Mike McQuaid
4877de52d3
Merge pull request #15819 from MikeMcQuaid/bottle_reproducibility_fixes
bottle: reproducibility fixes.
2023-08-04 10:26:55 +01:00
Mike McQuaid
71888db8ba
bottle: reproducibility fixes.
I noticed from
https://github.com/Homebrew/homebrew-core/actions/runs/5751070010 that
we're no longer creating reproducible bottles between macOS and Linux.

All macOS checksums have changed but Linux ones have not. The main
difference between the two platforms is the `gtar` version used so let's
always just use the formula on both platforms.

While we're here, clear up the ordering and comments a little on the
reproducible `tar` arguments so that it's easier to compare with the
reproducible builds archives documentation.
2023-08-04 10:02:44 +01:00
Mike McQuaid
5c718b5dfd
Merge pull request #15820 from MikeMcQuaid/more_quiet_env_hints
Make more warnings quiet with environment hints disabled.
2023-08-04 09:49:45 +01:00
Mike McQuaid
1d4a24d226
Make more warnings quiet with environment hints disabled.
Combined with https://github.com/Homebrew/homebrew-test-bot/pull/963
this should make `brew test-bot` output a bit quieter and less annoying.
2023-08-04 09:36:27 +01:00
Mike McQuaid
ef4731d67a
Merge pull request #15818 from MikeMcQuaid/brew_env_home
bin/brew: handle missing `$HOME`.
2023-08-04 09:21:36 +01:00
Mike McQuaid
59ea118991
bin/brew: handle missing $HOME.
Try to build it using `$USER` or `$LOGNAME` and, if both are missing,
just give up.
2023-08-04 08:30:37 +01:00
Mike McQuaid
11af9e8a1e
Merge pull request #15805 from ZhongRuoyu/formulary-alias_path
formulary: fix type of `alias_path`
2023-08-04 08:10:57 +01:00
Mike McQuaid
0e098510c2
Merge pull request #15763 from razvanazamfirei/bump-add-arch-support
bump: add arch-specific support
2023-08-04 08:10:01 +01:00
Mike McQuaid
41ca77c6ac
Merge pull request #15817 from ZhongRuoyu/development_tools-locate
development_tools: allow `Symbol`s to be `locate`d
2023-08-04 08:04:32 +01:00
Ruoyu Zhong
99607e8ec4
development_tools: allow Symbols to be located
Fixes error seen in Homebrew/homebrew-core#138452.
`DevelopmentTools.default_compiler` can return a `Symbol` like `:clang`.
Make sure its result can be fed to `DevelopmentTools.locate`.

Signed-off-by: Ruoyu Zhong <zhongruoyu@outlook.com>
2023-08-04 11:26:30 +08:00
Mike McQuaid
a2b49440e7
Merge pull request #15815 from Homebrew/dependabot/bundler/Library/Homebrew/addressable-2.8.5
build(deps): bump addressable from 2.8.4 to 2.8.5 in /Library/Homebrew
2023-08-03 19:33:37 +01:00
Mike McQuaid
087a4871af
Merge pull request #15814 from Homebrew/dependabot/bundler/Library/Homebrew/zeitwerk-2.6.11
build(deps): bump zeitwerk from 2.6.10 to 2.6.11 in /Library/Homebrew
2023-08-03 19:31:53 +01:00
BrewTestBot
3fb4c6c069
Update RBI files for addressable.
Autogenerated by the [vendor-gems](https://github.com/Homebrew/brew/blob/HEAD/.github/workflows/vendor-gems.yml) workflow.
2023-08-03 18:17:42 +00:00
BrewTestBot
e590c30851
Update RBI files for zeitwerk.
Autogenerated by the [vendor-gems](https://github.com/Homebrew/brew/blob/HEAD/.github/workflows/vendor-gems.yml) workflow.
2023-08-03 18:15:55 +00:00
BrewTestBot
b281f51c25
brew vendor-gems: commit updates. 2023-08-03 18:11:46 +00:00