We're still getting a non-trivial number of issues from configurations
we don't support and don't plan to.
Let people know that we know their experience will not be good and what
to expect if they file issues.
Co-authored-by: Eric Knibbe <enk3@outlook.com>
- fix `check_for_config_scripts` test, no idea why this wasn't working
- don't autoretry tests if `focus` or `byebug` are enabled
- add a ARM64 Ventura bottle symlink
It's sometimes necessary to have a `livecheck` block in an `on_macos`
or `on_linux` block. For example, a formula may be disabled on macOS
but not on Linux. In that scenario, we only want a `livecheck` block
to apply to Linux, so livecheck will automatically skip the formula
as disabled on macOS.
While this setup works on a technical level, `brew style` will give
an `on_linux cannot include livecheck` offense. This commit addresses
the issue by adding `livecheck` to `on_system_allowed_methods` in the
`ComponentsOrder` Rubocop.
This also updates `on_system_allowed_methods` to use the order in
`FORMULA_COMPONENT_PRECEDENCE_LIST`, which may make it a bit easier
for formula maintainers to read at a glance.
The existing logic in `#audit_head_branch` for identifying the `HEAD`
branch in a Git repository will give an ```undefined method `[]' for
nil:NilClass``` error when a repository doesn't provide this
reference. Expected output is as follows:
```
ref: refs/heads/master HEAD
1a8f9ac700873d1a08de31a17a2fd654245d5085 HEAD
```
However, I encountered this error for a repository with the following
output (i.e., where no symref is provided for HEAD):
```
f86be659718c0cd0a67f88b42f07044c23d0d028 HEAD
```
This commit resolves the error by modifying the related logic to
account for a `nil` value.
* Glibc 2.26+ (we use 2.35) require Linux kernel 3.2 or later.
* Remove GCC requirement given it doesn't matter for bottles (we install GCC ourselves if too old) and is probably wrong for the build-from-source case.
* Remove libxcrypt-compat requirement given we don't use libcrypt.so.1 anymore.
- Turns out we do need this. I lulled us into a false sense of security
by not deleting `sorbet/rbi/hidden-defintions/hidden.rbi` previously.
- If we do delete that file then Sorbet reveals >200 typechecking
issues.
- The docs on moving from `srb rbi` to `tapioca` say that we don't need
`hidden-definitions` anymore, but clearly we do. The blog post goes
into a lot of detail on why `rbi hidden-defintions` exists and the
fact that there's not an analogous command in Tapioca:
https://sorbet.org/blog/2022/07/27/srb-tapioca#whats-happening-with-srb-rbi-hidden-definitions
- Eventually we should try out `tapioca dsl`, since that's said to be a
"partial replacement" for `hidden-definitions`, and removing our
reliance on deprecated commands can only be a good thing?