1332 Commits

Author SHA1 Message Date
Mike McQuaid
e2759fbdff
Deprecate reading all formulae through commands
We added the `--all` flag (now renamed to `--eval-all`) for various
commands for this behaviour so let's start deprecating this.

Also, introduce a `HOMEBREW_EVAL_ALL` environment variable to use the
existing, less secure, behaviour by default and avoid passing
`--eval-all` everywhere.
2022-09-05 13:57:22 +01:00
Max Eisner
20e432c0d5
fix style 2022-09-02 22:26:58 +02:00
Max Eisner
02860aa0e8
use #blank? instead of #nil?
Co-authored-by: Rylan Polster <rslpolster@gmail.com>
2022-09-02 22:23:26 +02:00
Max Eisner
b41dd8c729
generate_completions: fix shell_parameter_format: :none 2022-09-02 15:40:24 +02:00
Bo Anderson
abfbb46678
Freeze formula definition once first instance is created 2022-08-31 20:40:42 +01:00
Bo Anderson
88a8def34c
formula: add signature for bottle DSL 2022-08-31 19:47:47 +01:00
Bo Anderson
1c5ba1f685
formula: require instances to use a subclass 2022-08-31 19:21:05 +01:00
Bo Anderson
f09be9a5f7
formula: try optimise versioned_formulae_names 2022-08-25 15:05:49 +01:00
Michka Popoff
d271614872
install glibc/gcc automatically if too old.
Right now this is done through the gcc@5 formula.
See 9692318ca6/Formula/gcc%405.rb (L33)

This is fragile because when we will migrate to gcc@11
we have to think about migrating the installation from one gcc formula to another..
Also, not having the right glibc version results in a non-functional brew
installation on an older Linux: the glibc installation needs
to be done by brew, and not by a workaround in a specific formula

Co-Authored-By: Mike McQuaid <mike@mikemcquaid.com>
Co-Authored-By: Bo Anderson <mail@boanderson.me>
Co-Authored-By: Shaun Jackman <sjackman@gmail.com>
2022-08-25 11:04:37 +01:00
Mike McQuaid
c294dcc616
glibc related cleanup
Extracted from https://github.com/Homebrew/brew/pull/13577
2022-08-23 12:42:02 +01:00
Carlo Cabrera
c7030eaba0
formula: add optional source and target args to #rpath
There are about 10 formulae which need a bit more flexibility from
`#rpath`. Most of them use `Pathname#relative_path_from`, so we can
replace those instances with a call to `#rpath` instead once `#rpath`
knows how to handle this.
2022-08-19 17:32:43 +08:00
fn ⌃ ⌥
2459aee5ae
Fix caching in Formula#runtime_installed_formula_dependents 2022-08-18 15:14:44 -07:00
Sean Molenaar
17d0572984
Merge pull request #13683 from SMillerDev/fix/build_env/dump_typing
build_environment: add proper types to dump() and fix inreplace error
2022-08-15 19:34:41 +02:00
Sean Molenaar
2de6958a36
build_environment: add proper types to dump() and fix inreplace error 2022-08-15 19:03:55 +02:00
Rylan Polster
dac54fbbfb
Merge pull request #13536 from max-ae/generate-completions-dsl
Formula: add DSL to generate completions
2022-08-12 10:39:37 -04:00
Max Eisner
873954cb71
Revert "simplify"
This reverts commit 2369a58665d151035cb8047343a10fb9e0f40806.
2022-08-11 21:32:03 +02:00
Max Eisner
2369a58665
simplify 2022-08-11 20:59:51 +02:00
Max Eisner
fa22a167d3
refactor to variable length commands arg 2022-08-11 18:12:08 +02:00
Max Eisner
a79e8c3692
allow subcmd to take an array, formulae like circleci need it 2022-08-11 14:26:17 +02:00
Max Eisner
19530b2239
make subcmd optional again, formulae like certigo need it 2022-08-11 14:07:32 +02:00
Lukas Oberhuber
3d60d610dd Merge branch 'master' into debug-symbols 2022-08-10 18:44:09 -10:00
Max Eisner
e091d62aa3
Merge branch 'master' into generate-completions-dsl 2022-08-10 19:10:44 +02:00
Max Eisner
074bc3c247
fix style 2022-08-10 18:00:44 +02:00
Max Eisner
3786887146
add examples 2022-08-10 15:50:18 +02:00
Max Eisner
08bf179f7a
fix documentation 2022-08-10 15:50:17 +02:00
Max Eisner
55a26ce4cc
make executable and subcmd mandatory args 2022-08-10 15:50:17 +02:00
Max Eisner
e448601964
rename cmd to subcmd 2022-08-10 15:50:15 +02:00
Sean Molenaar
8e49be58b3
Merge pull request #13623 from SMillerDev/fix/exceptions/report_issues_inreplace_head
brew.rb: tell users to fix head issues with inreplace
2022-08-08 16:48:24 +02:00
Sean Molenaar
040d93a006
formula: add back docstring 2022-08-07 15:55:37 +02:00
Sean Molenaar
03a489bf78
brew.rb: tell users to fix head issues with inreplace 2022-08-07 13:34:56 +02:00
Kevin
93bf9e5ba2
Merge pull request #13532 from apainintheneck/add-uninstall-autoremove
cmd/uninstall: Add env variable that runs autoremove after uninstalls
2022-08-03 18:10:32 -07:00
Max Eisner
b792a4f645
fix TypeError 2022-07-31 21:48:02 +02:00
Max Eisner
b2d94dc897
update arg names in docs and signature 2022-07-31 21:01:42 +02:00
Lukas Oberhuber
4b0d52ef62 debug_symbols passed down to soure dir creator
The flag is now passed down to resource which creates the directory for
unpacking the source.
2022-07-31 19:59:25 +01:00
Rylan Polster
4cc0e854ce
Rename treat_as_*? to simulating_or_running_on_*? 2022-07-28 09:18:16 -04:00
Max Eisner
dff3fc9d2f
fix symbol in SHELL env 2022-07-27 16:59:30 +02:00
Lukas Oberhuber
d195f22522 Connecting up --debug-symbols flag
This connects the calling of dsymutil and the retention of temporary
files. Still need to connect compilation to flag.
2022-07-26 12:15:53 +01:00
Max Eisner
1c059e1da0
extend shell_parameter argument 2022-07-24 23:03:28 +02:00
Max Eisner
92bccd2074
apply naming suggestions 2022-07-24 22:54:28 +02:00
Max Eisner
9528c6a8ac
always set SHELL env variable 2022-07-24 22:50:14 +02:00
Rylan Polster
34a1bc6618
Use SimulateSystem for ignore_missing_libraries 2022-07-23 03:09:29 +02:00
Rylan Polster
ed97281d20
Allow ignore_missing_libraries when simulating Linux on macOS 2022-07-22 18:44:40 +02:00
Rylan Polster
f3e34230ad
Add --variations option to brew info 2022-07-21 16:41:15 +02:00
Rylan Polster
eab3d077bc
Improvements 2022-07-21 15:32:51 +02:00
Rylan Polster
d4c4432f2d
Formula#to_hash: include variations key 2022-07-21 13:04:56 +02:00
apainintheneck
cb91f8b665 Add tests for retrieving formula based on dependents
Also, made sure to clear formula cache before
and after autoremoving packages.
2022-07-17 00:39:23 -07:00
apainintheneck
fe83500617 Moved autoremove logic into cleanup.rb and formula.rb
Cleanup.rb:
- Added #autoremove method
- #autoremove is called in clean when HOMEBREW_AUTOREMOVE is set

Formula.rb:
- Added #unused_formulae_with_no_dependents and helpers

Removed old autoremove.rb module.
2022-07-14 13:16:26 -07:00
apainintheneck
fa43418bfb Moved autoremove logic into autoremove.rb
This allows us to call that logic internally in other brew
commands instead of having to shell out.
2022-07-13 16:31:41 -07:00
apainintheneck
74f1eca14c autoremove.rb: moved logic out into formula.rb, and uninstall.rb
This allows us to autoremove formulae in the autoremove and
uninstall commands without having to shell out to brew.
2022-07-13 16:28:49 -07:00
Max Eisner
32b68838f9
switch to more flexible shell_prefix arg 2022-07-13 14:47:45 +02:00