Skip to content

SkipConditions: special case unsigned deprecations #20366

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Aug 3, 2025

Conversation

samford
Copy link
Member

@samford samford commented Aug 3, 2025

  • Have you followed the guidelines in our Contributing document?
  • Have you checked to ensure there aren't other open Pull Requests for the same change?
  • Have you added an explanation of what your changes do and why you'd like us to include them?
  • Have you written new tests for your changes? Here's an example.
  • Have you successfully run brew style with your changes locally?
  • Have you successfully run brew typecheck with your changes locally?
  • Have you successfully run brew tests with your changes locally?

We've been adding disable! calls with a future date to casks using an unsigned app. That implicitly deprecates the cask until it reaches the disable date, so we've been having to add simple livecheck blocks to casks that use a default check to ensure that livecheck continues to check them (e.g., Homebrew/homebrew-cask#222471). It was suggested that it would be simpler to have livecheck not skip casks that have a disable! call with a because: :unsigned argument and I agree, so this modifies SkipConditions to add a special case for this scenario.

samford added 2 commits August 3, 2025 15:03
We've been adding `disable!` calls with a future date to casks using
an unsigned app. That implicitly deprecates the cask until it reaches
the disable date, so we've been having to add simple `livecheck`
blocks to casks that use a default check to ensure that livecheck
continues to check them. It was suggested that it would be simpler to
have livecheck not skip casks that have a `disable!` call with a
`because: :unsigned` argument and I agree, so this modifies
`SkipConditions` to add a special case for this scenario.
The `Cask::Cask` objects in the `SkipConditions` tests don't
interpolate `version` in the `url` strings, so these are technically
unversioned URLs as a result and would be skipped as unversioned. This
updates the URLs accordingly, so they won't trigger the unversioned
skip as a fallback (if the intended test doesn't work as expected).
This is something I discovered while writing a test for a cask that
shouldn't be skipped.
@samford samford force-pushed the livecheck/special-case-unsigned-deprecations branch from 65420c3 to d06480a Compare August 3, 2025 19:03
Copy link
Member

@p-linnane p-linnane left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome, thank you!

@p-linnane p-linnane added this pull request to the merge queue Aug 3, 2025
Merged via the queue into main with commit 9e4beda Aug 3, 2025
34 checks passed
@p-linnane p-linnane deleted the livecheck/special-case-unsigned-deprecations branch August 3, 2025 20:38
@MikeMcQuaid
Copy link
Member

Thank you @samford!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants