133 Commits

Author SHA1 Message Date
Michael Cho
3e428f7676
formula_auditor: split out checksum check 2023-12-20 10:22:26 -05:00
Sam Ford
ccbde5952d
FormulaAuditor: Separate stable version audit
The "stable version should not decrease" formula audit currently
prevents us from being able to create bottles when downgrading a
formula version. We previously worked around this by bumping
`version_scheme` but this wasn't an intended use case and we now
avoid using it for this purpose.

We can handle simple formula downgrades by reverting changes in a
syntax-only PR but that isn't sufficient when we need new bottles
(i.e., if additional changes have been made to the formula in the
interim time). In the latter case, the only available solution may be
to revert all changes made after the previous version using a
syntax-only PR and then create another PR to reintroduce the other
changes and create new bottles.

To avoid the aforementioned approach, this splits the stable version
audit into a separate method, so we can use `brew audit
--except=stable_version` to selectively skip it.
2023-12-15 17:27:01 -05:00
Issy Long
94d4061589
Improve PyPI package name audit wording 2023-09-06 23:16:25 +01:00
Issy Long
5d2ae98d0c
Add an audit for mismatched Python resource and PyPi package names
- Issue 14537.
- When people manually add or modify PyPI resources the `Resource#name`
  sometimes ends up out-of-sync with the PyPI package name.
2023-09-03 00:44:24 +01:00
Douglas Eichelberger
9075cbae62 brew style --fix 2023-04-21 09:58:50 -07:00
Douglas Eichelberger
ac1e6ded9a git grep -l '# typed: false' | xargs gsed -i 's|# typed: false||g' 2023-04-21 09:57:47 -07:00
Issy Long
3a83b5492c
rubocop: Clean up Style/BlockDelimiters excludes and autofix offenses
- The defaults of using "do ... end" for multi-line blocks everywhere is
  good, better than switching everything to braces everywhere.
2023-03-08 23:54:22 +00:00
Issy Long
298bb65dfb
rubocop: Entirely disable Metrics cops
- These are arbitrary length limits that had a load of disables in code.
- The limits were only increasing over time rather than decreasing.
- Fixing the problematic code to be shorter would take a long time for
  questionable gain since the problem has been around so long.
2023-02-21 00:34:17 +00:00
Issy Long
f8654bd363
rubocop: In-line disables of Metrics/{Module,Block,Class}Length
- We're not going to make the really long things be any shorter any time soon.
- The instructions in issue 14685 say, pragmatically, "disable all the rubocop
  rules we're never going to realistically fix e.g. Metrics/ClassLength". But
  that felt like a slippery slope to more _really_ long modules/classes/blocks,
  and the limits are here for a reason.
2023-02-19 16:33:23 +00:00
Dawid Dziurla
0d0c98de29
Allow defining service run command per platform 2023-01-19 11:36:37 +01:00
Mike McQuaid
59f4b5226a
tests: test on Ubuntu 18.04. 2022-11-09 14:45:43 +00:00
Bo Anderson
af234779af
test: support non-master init.defaultbranch 2022-10-07 18:44:03 +01:00
Bo Anderson
b6e3b146b2
test/dev-cmd/audit_spec: use eq instead of match 2022-09-07 20:36:09 +01:00
Mike McQuaid
2d5eab2e1c
brew style --fix 2022-06-30 08:56:21 +01:00
Issy Long
6b76fd012a
Fix (auto-correct) RuboCop RSpec/BeNil offenses 2022-03-01 00:10:10 +00:00
Rylan Polster
e5e4c288be
Cleanup brew style --fix suggestions 2022-02-11 10:45:51 -05:00
Josh Soref
37fd64b5a3 formula_auditor: new formulas should not define a revision
Logically new formulas should start at revision 0, but a
developer might use an existing formula as a template and
otherwise not realize they should remove this field.

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
2022-02-09 13:14:10 -05:00
Rylan Polster
9ca0f68bf7
Fix tests 2021-10-21 21:11:06 -04:00
Nanda H Krishna
5ccfbcd1d2
Autocorrect style issues with brew style --fix 2021-07-08 12:36:39 +05:30
Alexander Bayandin
7c962c0aa8
audit_spec: simplify tests 2021-06-18 17:34:43 +01:00
Alexander Bayandin
43d67816ea
audit_conflicts: enable for third-party taps 2021-06-18 17:34:42 +01:00
Alexander Bayandin
1ddb6ef584
audit: do not allow aliases and renames in formula conflicts 2021-06-18 17:34:42 +01:00
Alexander Bayandin
84e3e0a6b8
audit_spec: add tests for audit_conflicts 2021-06-18 17:34:42 +01:00
Steve Peters
ca6fc4873e
audit_spec: expect error for uppercase formula
Our docs state that formula filenames must not have uppercase letters.
This adds a test to expect that FormulaAuditor's audit_formula_name
method complains about such a formula.
2021-05-27 17:45:24 -07:00
Bo Anderson
f174d4363f
extend/pathname: limit write override to a refinement 2021-05-04 14:20:20 +01:00
Sean Molenaar
2ec4125178
Audit: make sure service commands exist 2021-04-27 09:36:36 +02:00
Issy Long
e1ad07190e
rubocop: Fix RSpec/ContextWording offenses
- For some of these I changed `context` to `describe` as it fit better
  rather than contriving a "when", "with" or "without", or massively
  restructuring the tests.
2021-02-19 23:30:41 +00:00
Rylan Polster
4a82d807e1
style: remove RSpec/MultipleDescribes violations in commands 2021-02-01 20:30:51 -05:00
Alexander Bayandin
8717f82b9d dev-cmd/audit: add audit for checksum 2020-12-08 23:42:46 +00:00
Markus Reiter
413b9d7d89 Mark some audit tests with :needs_network. 2020-12-02 10:22:28 +01:00
Rylan Polster
fe8ce9b725 Migrate GNOME_DEVEL_ALLOWLIST 2020-11-26 15:34:32 -05:00
Rylan Polster
71beff367a Migrate UNSTABLE_ALLOWLIST 2020-11-26 15:18:06 -05:00
Rylan Polster
e03d1606d6 Migrate VERSIONED_KEG_ONLY_ALLOWLIST 2020-11-26 14:43:06 -05:00
Rylan Polster
726b4e1419 Migrate PROVIDED_BY_MACOS_DEPENDS_ON_ALLOWLIST 2020-11-26 14:32:42 -05:00
Tom Schoonjans
b2864fb118 Temporarily disable VERSIONED_KEG_ONLY_ALLOWLIST test 2020-11-24 17:57:44 +00:00
Rylan Polster
67e4e78f22 fix typo in audit tests
Co-authored-by: Mike McQuaid <mike@mikemcquaid.com>
Co-authored-by: Markus Reiter <me@reitermark.us>
2020-11-19 13:38:52 -05:00
Rylan Polster
b0d10fdf28 add audit tests for migrated audit exception lists 2020-11-19 13:38:52 -05:00
Rylan Polster
899783b35a migrate license mismatch allowlist to Homebrew/core 2020-11-19 13:38:52 -05:00
Markus Reiter
dc11f02e16 Move auditor classes into separate files. 2020-11-18 11:22:27 +01:00
Dustin Rodrigues
d26567a65d audit: allow checksum to be added/removed when changing download scheme 2020-11-17 08:02:55 -05:00
Dustin Rodrigues
ba0699a8d7 audit: only flag if checksum changes when version and full url stay the same 2020-11-11 23:12:58 -05:00
Rylan Polster
e05b0fc7f5
Merge pull request #9092 from Rylan12/fix-checksum-audit
audit: fix checksum audit
2020-11-10 15:28:26 -05:00
Dustin Rodrigues
a8a83d1f24 dev-cmd/audit: only go back in git history until revision or version changes 2020-11-09 22:04:25 -05:00
Rylan Polster
67127cb2ff audit: add checksum change test 2020-11-09 10:49:31 -05:00
Rylan Polster
6171b51a82 audit: migrate VERSIONED_HEAD_SPEC_ALLOWLIST to Homebrew/core 2020-11-05 01:43:01 -05:00
Rylan Polster
869941bccd audit: migrate throttle list to Homebrew/core 2020-11-03 13:06:33 -05:00
Markus Reiter
24ae318a3d Move type annotations into files. 2020-10-10 14:59:39 +02:00
Markus Reiter
23aced68d4 Output annotations for brew audit. 2020-09-10 22:23:03 +02:00
Nathan Whetsell
89ef97a51b Remove trailing slash from SPDX license exception URL 2020-09-05 10:37:14 -04:00
Dustin Rodrigues
76ec69e3c3 audit: compare current version to last committed version when seeing if revision should be removed 2020-09-03 10:02:28 -04:00