38364 Commits

Author SHA1 Message Date
Mike McQuaid
8a74f83223
Merge pull request #15799 from MikeMcQuaid/deprecate_postgresql_upgrade_database
Deprecate `postgresql-upgrade-database`
2023-08-01 17:34:29 +01:00
Douglas Eichelberger
b26c0917c7 Widen collection type in super call 2023-08-01 09:33:04 -07:00
Douglas Eichelberger
8d8dac0de4 Narrow member type of inreplace paths enumerable 2023-08-01 09:22:48 -07:00
Mike McQuaid
e3c0faf4e2
Merge pull request #15787 from MikeMcQuaid/env_file_configuration
Allow configuring Homebrew with `.env` files
2023-08-01 13:07:19 +01:00
Mike McQuaid
04e07dc0db
Deprecate postgresql-upgrade-database
This is an out-of-band deprecation but this command is broken and we're
not going to fix it so it's not really worth a deprecation cycle.

See https://github.com/orgs/Homebrew/discussions/4685
2023-08-01 12:00:30 +01:00
Mike McQuaid
54a3907aac
Merge pull request #15796 from dduugg/widen-inreplace
Widen paths type in Formula#inreplace
2023-08-01 08:30:12 +01:00
Carlo Cabrera
fad5e98e7d
Merge pull request #15797 from Homebrew/dependabot/bundler/Library/Homebrew/zeitwerk-2.6.10
build(deps): bump zeitwerk from 2.6.9 to 2.6.10 in /Library/Homebrew
2023-08-01 13:08:57 +08:00
Carlo Cabrera
5669df9083
Merge pull request #15798 from Homebrew/sponsors-maintainers-man-completions 2023-08-01 10:34:34 +08:00
BrewTestBot
d5f1822a5d
Update sponsors.
Autogenerated by the [sponsors-maintainers-man-completions](https://github.com/Homebrew/brew/blob/HEAD/.github/workflows/sponsors-maintainers-man-completions.yml) workflow.
2023-08-01 00:06:21 +00:00
BrewTestBot
6e505e6313
Update RBI files for zeitwerk.
Autogenerated by the [vendor-gems](https://github.com/Homebrew/brew/blob/HEAD/.github/workflows/vendor-gems.yml) workflow.
2023-07-31 19:06:16 +00:00
BrewTestBot
8b7a75f00e
brew vendor-gems: commit updates. 2023-07-31 19:00:30 +00:00
dependabot[bot]
dbf1d63441
build(deps): bump zeitwerk from 2.6.9 to 2.6.10 in /Library/Homebrew
Bumps [zeitwerk](https://github.com/fxn/zeitwerk) from 2.6.9 to 2.6.10.
- [Changelog](https://github.com/fxn/zeitwerk/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fxn/zeitwerk/compare/v2.6.9...v2.6.10)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-31 18:56:52 +00:00
Mike McQuaid
1b6c46ff12
Merge pull request #15795 from Homebrew/build_pkg_gh
workflows/build-pkg: install `gh`.
2023-07-31 19:43:17 +01:00
Douglas Eichelberger
da8a062cfc Widen paths type in Formula#inreplace 2023-07-31 11:31:35 -07:00
Mike McQuaid
80ab86ce2c
workflows/build-pkg: install gh.
Now that we're nuking and reinstalling Homebrew: need to install this
too.
2023-07-31 19:29:10 +01:00
Mike McQuaid
d1f60aea49
Merge pull request #15792 from branchvincent/venv-no-pip
python: create venv's `--without-pip`
2023-07-31 17:11:12 +01:00
Mike McQuaid
06176f4661
Merge pull request #15791 from branchvincent/system-pretty-args
formula: suppress std args for cabal, meson, pip
2023-07-31 17:10:22 +01:00
Branch Vincent
768a8085a7
formula: suppress std args for cabal, meson, pip 2023-07-31 08:53:34 -07:00
Branch Vincent
98323cd7e6
python: create venv's --without-pip 2023-07-31 08:51:47 -07:00
Mike McQuaid
128df14e0a
Merge pull request #15794 from Homebrew/package_text
package/resources: improve text output.
4.1.3
2023-07-31 15:10:00 +01:00
Mike McQuaid
8819925af4
package/resources: improve text output.
- use the system font instead of Helvetica
- cleanup font definitions
- add extra newline to `CONCLUSION.rtf` to next steps not showing up
  without a click
- add actual hyperlinks to `CONCLUSION.rtf`

Fixes #15793
2023-07-31 14:56:40 +01:00
Markus Reiter
c531a35ae7
Merge pull request #15788 from osalbahr/config-os-version
config: fallback to ::OS_VERSION
2023-07-29 20:52:06 +02:00
Osama Albahrani
77f97f71eb config: :OS_VERSION (fix style) 2023-07-29 00:58:36 -04:00
Osama Albahrani
8243009d06 config: fallback to ::OS_VERSION
In Linux systems where lsb_release is not available by default,
`brew config` now falls back to `PRETTY_NAME` (`HOMEBREW_OS_VERSION`).

Before:
```console
$ brew config
HOMEBREW_VERSION: 4.1.2-30-gc346a5c
ORIGIN: https://github.com/Homebrew/brew
HEAD: c346a5c97adef16fcc439b53cc6e757b64b71cb4
Last commit: 14 hours ago
Core tap JSON: 29 Jul 04:16 UTC
HOMEBREW_PREFIX: /home/linuxbrew/.linuxbrew
HOMEBREW_CASK_OPTS: []
HOMEBREW_DISPLAY: :0
HOMEBREW_EDITOR: /usr/bin/nano
HOMEBREW_EVAL_ALL: set
HOMEBREW_MAKE_JOBS: 4
Homebrew Ruby: 2.6.10 => /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.10_1/bin/ruby
CPU: quad-core 64-bit skylake
Clang: N/A
Git: 2.41.0 => /bin/git
Curl: 8.2.1 => /bin/curl
Kernel: Linux 6.4.4-200.fc38.x86_64 x86_64 GNU/Linux
OS: Unknown
Host glibc: 2.37
/usr/bin/gcc: 13.1.1
/usr/bin/ruby: N/A
glibc: N/A
gcc@11: N/A
gcc: N/A
xorg: N/A
```

After:
```console
$ brew config
HOMEBREW_VERSION: 4.1.2-30-gc346a5c-dirty
ORIGIN: https://github.com/Homebrew/brew
HEAD: c346a5c97adef16fcc439b53cc6e757b64b71cb4
Last commit: 14 hours ago
Core tap JSON: 29 Jul 04:37 UTC
HOMEBREW_PREFIX: /home/linuxbrew/.linuxbrew
HOMEBREW_CASK_OPTS: []
HOMEBREW_DISPLAY: :0
HOMEBREW_EDITOR: /usr/bin/nano
HOMEBREW_EVAL_ALL: set
HOMEBREW_MAKE_JOBS: 4
Homebrew Ruby: 2.6.10 => /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.10_1/bin/ruby
CPU: quad-core 64-bit skylake
Clang: N/A
Git: 2.41.0 => /bin/git
Curl: 8.2.1 => /bin/curl
Kernel: Linux 6.4.4-200.fc38.x86_64 x86_64 GNU/Linux
OS: Arch Linux
Host glibc: 2.37
/usr/bin/gcc: 13.1.1
/usr/bin/ruby: N/A
glibc: N/A
gcc@11: N/A
gcc: N/A
xorg: N/A
```
2023-07-29 00:41:13 -04:00
Mike McQuaid
375a7ee8dc
Allow configuring Homebrew with .env files
For a long time people have requested some sort of configuration files
for Homebrew. Now: here's the first version of that.

Similarly to how you can configure Git for a system, a repository or
a user: you can configure Homebrew for a system, a prefix or a user.

The system-wide configuration file is `/etc/homebrew/brew.env`, the
prefix-specific configuration file is
`$HOMEBREW_PREFIX/etc/homebrew/brew.env`
and the user-specific configuration file is `~/.homebrew/brew.env`.

As we need to read these files from Bash in `bin/brew` (so they can)
influence functionality ASAP: they are in a simple format that Bash
can read. It may be that we have more complex array or hash data in
future that's configured through JSON or YAML (most likely JSON as we
use it more) and stored in a `brew.json`/`brew.yaml` file in the same
directory.

As this is relying on `eval` in Bash which is fairly dangerous: we
filter the lines with a regex to ensure we're only permitting setting
`HOMEBREW_*` variables and nothing more.

To give a bit of power to system administrators, the
`HOMEBREW_SYSTEM_ENV_TAKES_PRIORITY` variable can be set in
`/etc/homebrew/brew.env` to ensure that the system-wide configuration
file is loaded last and overrides any prefix or user settings.

Now that we have an actual location for configuration files, let's also
change the `brew livecheck` watchlist configuration file to be in this
directory and deprecate the existing location. As this is a developer
command and the mitigation is to just move the file: we don't need to
follow the normal deprecation process here.
2023-07-28 17:17:14 +01:00
Mike McQuaid
c346a5c97a
Merge pull request #15786 from samford/fix-githubreleases-strategy-block-documentation
docs: Fix GithubReleases strategy block example
2023-07-28 15:41:07 +01:00
Sam Ford
e9e484ea31
docs: Fix GithubReleases strategy block example
The `strategy` block example for `GithubReleases` in the
`brew livecheck` documentation should be using `release` inside the
`#map` block instead of `json`. I accidentally overlooked one instance
of `json` when adapting the code from the `GithubLatest` example above
it.
2023-07-28 10:23:35 -04:00
Mike McQuaid
e700bc799f
Merge pull request #15782 from MikeMcQuaid/vscode_settings
Improve VSCode extensions/settings
2023-07-28 12:15:46 +01:00
Mike McQuaid
389bcf4eb4
Merge pull request #15781 from MikeMcQuaid/post_install_improvements_fixes
post_install: improvements and fixes.
2023-07-28 12:06:05 +01:00
Mike McQuaid
d664af7a15
Merge pull request #15780 from MikeMcQuaid/update_taps_properly
`brew update` core/homebrew-cask taps properly
2023-07-28 12:05:53 +01:00
Mike McQuaid
7801878c74
post_install: improvements and fixes.
- warn if running `brew postinstall` explicitly and there's no
  `post_install` defined in the formula
- add a `post_install` alias for `brew postinstall` to make life
  easier for those jumping between `postinstall` and `post_install` in
  e.g. Homebrew development
- refactor `post_install` formula path logic into a new method for
  improved readability
- handle the JSON API `post_install` formula path case
2023-07-28 11:26:09 +01:00
Mike McQuaid
3e355a3089
Improve VSCode extensions/settings
- Use more modern and more useful extensions
- Use the Ruby language server as not doing so is deprecated
2023-07-28 11:09:27 +01:00
Mike McQuaid
2c300cfbe9
brew update core/homebrew-cask taps properly
The existing logic in `update.sh` was both a bit hard to follow and
had some edge cases. Fix this up for improving #15775.
2023-07-28 10:13:57 +01:00
Bo Anderson
dcbdc73c45
formula_installer: use cached fetched formula instance when available 2023-07-28 02:12:09 +01:00
Bo Anderson
3d44b93116
Merge pull request #15777 from Bo98/manifest-fix
keg_relocate: fix all text files being marked as changed
2023-07-28 01:06:16 +01:00
Bo Anderson
599f7af505
github_packages: abort with an error if image index is >= 4MB 2023-07-28 00:43:57 +01:00
Bo Anderson
e5346d8aac
keg_relocate: fix all text files being marked as changed 2023-07-28 00:43:30 +01:00
Nanda H Krishna
3f3003072c
Merge pull request #15776 from Homebrew/dependabot/bundler/Library/Homebrew/rexml-3.2.6
build(deps): bump rexml from 3.2.5 to 3.2.6 in /Library/Homebrew
2023-07-27 17:39:44 -04:00
BrewTestBot
1848decd0b
Update RBI files for rexml.
Autogenerated by the [vendor-gems](https://github.com/Homebrew/brew/blob/HEAD/.github/workflows/vendor-gems.yml) workflow.
2023-07-27 18:37:58 +00:00
BrewTestBot
8d6b579e97
brew vendor-gems: commit updates. 2023-07-27 18:31:51 +00:00
dependabot[bot]
4479cf1ded
build(deps): bump rexml from 3.2.5 to 3.2.6 in /Library/Homebrew
Bumps [rexml](https://github.com/ruby/rexml) from 3.2.5 to 3.2.6.
- [Release notes](https://github.com/ruby/rexml/releases)
- [Changelog](https://github.com/ruby/rexml/blob/master/NEWS.md)
- [Commits](https://github.com/ruby/rexml/compare/v3.2.5...v3.2.6)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-27 18:26:47 +00:00
Mike McQuaid
f56f27b0d6
Merge pull request #15773 from Homebrew/build_pkg_install
workflows/build-pkg: actually try to install package.
2023-07-27 16:15:44 +01:00
Mike McQuaid
2b0471c122
workflows/build-pkg: actually try to install package.
- This should help avoid this regressing
- Remove existing Homebrew installation(s)
- Install it twice to ensure that installing over the top of an existing
  installation works as expected
- Remove existing API cache to ensure we have the freshest files from
  the API in our package
2023-07-27 15:51:40 +01:00
Mike McQuaid
f4760edfbf
Merge pull request #15774 from MikeMcQuaid/update_verboser
cmd/update: output more API information with `--verbose`.
2023-07-27 15:46:53 +01:00
Mike McQuaid
c4f65f2eee
cmd/update: output more API information with --verbose.
Also, hide some spammy/unnecessary newline printing.
2023-07-27 15:20:59 +01:00
Carlo Cabrera
4c612ab324
Merge pull request #15769 from carlocab/resolve-rpath
os/mac/mach: resolve rpaths too
2023-07-27 21:04:51 +08:00
Mike McQuaid
954fc88b15
Merge pull request #15772 from MikeMcQuaid/install_from_api_unsupported_variable
Add/use `HOMEBREW_INSTALL_FROM_API_UNSUPPORTED`
2023-07-27 14:04:37 +01:00
Mike McQuaid
21d8f82056
Add/use HOMEBREW_INSTALL_FROM_API_UNSUPPORTED
When we're automatically setting `HOMEBREW_NO_INSTALL_FROM_API`
when on an old macOS version or with a non-default prefix (e.g. cases
where you're going to be mostly building from source).

My initial plan was to set
`HOMEBREW_AUTOMATICALLY_SET_NO_INSTALL_FROM_API` in these cases but
it's used differently enough it made sense to add another internal
variable instead: `HOMEBREW_INSTALL_FROM_API_UNSUPPORTED`.

At the moment this is only used to avoid printing the "You have set
`HOMEBREW_NO_INSTALL_FROM_API`" message inside `brew update` but may
make sense to use in other places over time.

Ideally, we'll get rid of these automatic sets of
`HOMEBREW_NO_INSTALL_FROM_API` and perhaps even the variable entirely.
2023-07-27 12:36:54 +01:00
Carlo Cabrera
0a37af54be
Merge pull request #15680 from carlocab/ENV.O2
extend/ENV/super: add `ENV.O3`
2023-07-27 19:15:19 +08:00
Mike McQuaid
bb67181b50
Merge pull request #15755 from MikeMcQuaid/document_pkg_installer
docs/Installation: document macOS .pkg installer.
2023-07-27 12:03:51 +01:00