6215 Commits

Author SHA1 Message Date
Sam Ford
b7065d5fcf
bump-cask-pr: extract system_options generation
This extracts the logic for generating the `system_options` array in
the `replace_version_and_checksum` method into a separate
`generate_system_options` method. This logic is becoming more complex
(after recent changes) and manually testing it is a pain, so this
change is intended to allow us to add tests. The tests added here
provide 100% coverage for the method.
2025-04-06 10:58:46 -04:00
Mike McQuaid
0d6de643f8
Merge pull request #19706 from Homebrew/revert-19703-bundle-exec-simultaneous-services
Revert "bundle: handle simultaneous `exec --services` better"
2025-04-04 14:47:04 +00:00
Mike McQuaid
94db0b2f34
Revert "bundle: handle simultaneous exec --services better" 2025-04-04 15:30:47 +01:00
Sam Ford
8d52d9b3fc
livecheck: add tests for delegates
This adds tests for the livecheck DSL's `version` and `arch`
delegates. This doesn't affect test coverage but it ensures that the
methods work as expected in `livecheck` blocks.
2025-04-04 09:17:32 -04:00
Sam Ford
97cce36779
Make os available in cask livecheck blocks
Casks now support an `os` DSL method, similar to `arch`. This makes
it available in `livecheck` blocks, like we do with `arch`.
2025-04-04 09:17:32 -04:00
Mike McQuaid
76901b1352
Revert "services: add loaded_file data" 2025-04-04 13:11:13 +01:00
Bo Anderson
1ef00cb55f
bundle: handle simultaneous exec --services better 2025-04-04 08:10:11 +01:00
Bo Anderson
a6bee0736f
services: add loaded_file data 2025-04-04 07:25:10 +01:00
Mike McQuaid
e3137f192f
Merge pull request #19642 from Homebrew/linux_ci_gcc
Update Linux GCC code.
2025-04-03 15:25:43 +00:00
Mike McQuaid
2b4324af9b
Update Linux GCC code.
Update both the variables that dictate this and the documents that
explain our GCC/glibc policies.

These should ease a future migration to a newer GCC version.
2025-04-03 12:47:21 +01:00
Mike McQuaid
3012f427df
bundle: fix up formula name for environment variable.
We previously were trying to pass through invalid environment variable
names so let's fix these up and query those instead.
2025-04-03 11:05:07 +01:00
Mike McQuaid
89d0309b9c
Add brew bundle --upgrade-formulae
This flag allows you to specify formulae to upgrade, even if
`$HOMEBREW_BUNDLE_NO_UPGRADE` is set.

This is useful for upgrading specific formulae without upgrading all
formulae.

While we're here, let's add Sorbet signatures to the `Bundle` module
because I needed to add a new method there anyway.
2025-04-02 17:15:36 +01:00
Bo Anderson
4254b75cb8
bundle: add tests for exec --services 2025-04-02 16:09:16 +01:00
Patrick Linnane
09ae8e93f3
Merge pull request #19675 from Homebrew/bundle_formula_version
bundle: use HOMEBREW_BUNDLE_FORMULA_VERSION_* for formula version.
2025-04-01 16:20:15 +00:00
Patrick Linnane
407d64108c
Merge pull request #19673 from Homebrew/bundle_tests_coverage
test/bundle: add additional test coverage.
2025-04-01 16:19:46 +00:00
Mike McQuaid
37752e3088
bundle: use HOMEBREW_BUNDLE_FORMULA_VERSION_* for formula version.
As this variable is no longer just used for `brew bundle exec`.
2025-04-01 15:35:27 +01:00
Mike McQuaid
cf8835eff7
test/bundle: add additional test coverage.
Add missing test coverage, requires, fix a TODO and remove `needs_macos`
from a cask test.
2025-04-01 15:17:19 +01:00
Mike McQuaid
c72386e3c3
bundle/commands/cleanup: correctly handle .keepme references.
Extract the relevant logic from `formula.rb`, moving to `keg.rb` and
then use this logic in `bundle/commands/cleanup.rb` to ensure that we
don't say we need to uninstall formulae that should be still kept.
2025-04-01 15:12:12 +01:00
Mike McQuaid
ce720c1d61
Merge pull request #19649 from botantony/php-shebang
language: add php shebang module
2025-04-01 13:14:48 +00:00
Mike McQuaid
a9e387e0db
Merge pull request #19656 from Homebrew/whalebrew-test-fix
test/bundle/whalebrew_installer: fix flaky test from missing resets
2025-03-31 07:34:49 +00:00
Bo Anderson
f69ff29d93
test/bundle/whalebrew_installer: fix flaky test from missing resets 2025-03-30 19:29:42 +01:00
botantony
342d39e8a4
language: add php shebang module
Signed-off-by: botantony <antonsm21@gmail.com>
2025-03-30 03:24:24 +02:00
Douglas Eichelberger
138eba20f8
Merge pull request #19618 from Homebrew/formula-url-getter
fix: Allow Formula.url with no args to get url
2025-03-28 17:31:45 +00:00
Bo Anderson
c273d8b467
test/bundle: improve coverage 2025-03-28 05:54:59 +00:00
Bo Anderson
786ad348a5
bundle: use version env for installer service handling 2025-03-28 05:54:52 +00:00
Bo Anderson
2b906e4fe3
services: support --file= in restart command 2025-03-28 05:21:08 +00:00
Bo Anderson
615fb764a1
Add brew bundle services helper 2025-03-28 05:21:07 +00:00
Douglas Eichelberger
e58486cd4c
fix: Allow Formula.url with no args to get url 2025-03-26 12:15:25 -07:00
Mike McQuaid
90712429c0
test/bundle/commands/check_spec: add missing requires.
More missing requires that need added.
2025-03-25 14:53:41 +00:00
Mike McQuaid
2dbce6bac5
Merge pull request #19579 from Homebrew/bundle_version_file
Add `version_file:` DSL to `Brewfile`
2025-03-25 10:11:52 +00:00
Mike McQuaid
8a3050a624
Merge pull request #19598 from Homebrew/bundle_missing_requires
test/bundle: add more missing requires.
2025-03-25 10:06:57 +00:00
Mike McQuaid
949aaa78e6
test/bundle: add more missing requires.
See https://github.com/Homebrew/brew/actions/runs/14055694149/job/39354629119?pr=19597
2025-03-25 09:32:56 +00:00
Mike McQuaid
1ce12ae6e5
Merge pull request #19575 from Homebrew/brew_bundle_filtering
Don't filter the environment for `brew bundle (exec|env|sh)`
2025-03-25 09:07:39 +00:00
Mike McQuaid
df0fe8a802
Add version_file: DSL to Brewfile
This allows writing to e.g. `.ruby-version` files directly from the
`Brewfile`, making it easy to keep these versions in sync.
2025-03-24 17:34:35 +00:00
Carlo Cabrera
f7ee1902e4
bundle: require more lazily
This will hopefully make using `brew bundle` a little bit snappier.
2025-03-24 22:48:58 +08:00
Mike McQuaid
6e20cedb67
Don't filter the environment for brew bundle (exec|env|sh)
It's both unexpected and undesirable for `brew bundle (exec|env|sh)` to
filter the environment and makes these tools less useful.

Not filtering the environment, though, causes issues with the
`brew bundle sh` shell. Fix this up and, while we're here, also improve
the formatting for both `zsh` and `bash` (the default) to use nicer and
more consistent prompts and colours.

To simplify this, consolidate some logic in a new
`Utils::Shell.shell_with_prompt` method and add tests for it and a
similar notice for `brew bundle sh`.

Finally, avoid printing out the notice when `HOMEBREW_NO_ENV_HINTS` is
set.
2025-03-24 13:37:25 +00:00
Mike McQuaid
6f04ee4cff
Merge pull request #19563 from botantony/python-shebang
shebangs: fix broken shebangs like `#!python`
2025-03-21 09:22:54 +00:00
Mike McQuaid
81bf90bb70
Merge pull request #19566 from Homebrew/bundle-no-kernel
bundle: remove `include Kernel` references
2025-03-21 09:12:38 +00:00
Carlo Cabrera
7274fb183d
github_runner_matrix: include arch in Linux job names
This will make it easier to distinguish the two jobs in the GitHub UI.
2025-03-21 15:42:19 +08:00
Bo Anderson
7e64051479
bundle: remove include Kernel references 2025-03-21 04:43:08 +00:00
botantony
dac4b6fd56
shebangs: fix broken shebangs like #!python
Signed-off-by: botantony <antonsm21@gmail.com>
2025-03-21 00:34:14 +01:00
Carlo Cabrera
a4f2797612
bundle/exec: fix command PATH lookup
We are checking `PATH` for the command too early, since the code below
it mutates `PATH`.

Let's defer the check to later to fix this.
2025-03-19 21:55:15 +08:00
Mike McQuaid
2b46940876
Merge pull request #19545 from Homebrew/vscode_variants
Look for VSCode variants
2025-03-19 12:33:47 +00:00
Mike McQuaid
d84fac5af4
Look for VSCode variants
We've had requests for this in Homebrew/bundle a few times so let's
implement it both for there and for `brew edit`.

Tested on my machine with `cursor` and working as expected.
2025-03-19 11:42:37 +00:00
Mike McQuaid
1fa4128112
Merge pull request #19543 from Homebrew/bundle_services_installed
bundle: remove services_installed?
2025-03-19 10:50:01 +00:00
Mike McQuaid
c7f6fc639b
bundle: remove services_installed?
`brew services` is now always "installed".
2025-03-19 10:14:56 +00:00
Mike McQuaid
7a57af242e
Cleanup some missing references to Homebrew Bundle.
Let's just call it `brew bundle` from now on as it's a normal command.

Also, fix a reference to "Homebrew Services" while we're here.
2025-03-19 09:51:39 +00:00
Mike McQuaid
2fb3f35634
Merge pull request #19535 from Homebrew/services-run-file
Support `--file` for `brew services run`
2025-03-19 09:08:02 +00:00
Mike McQuaid
bdeca530ff
Migrate Homebrew/bundle to Homebrew/brew
Co-authored-by: Bo Anderson <mail@boanderson.me>
2025-03-19 06:47:01 +00:00
Bo Anderson
da003521c6
Support --file for brew services run 2025-03-19 06:13:34 +00:00