Skip to content
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

Sparkle: Surface more Item values #16158

Merged

Conversation

samford
Copy link
Member

@samford samford commented Oct 28, 2023

  • 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?

Historically, the Sparkle strategy's Item struct has only included basic values from the appcast that are commonly useful. Over time we've selectively added/surfaced more values as we've encountered outliers that require use of different values in a strategy block (e.g., #13368).

We now need to use minimumSystemValue (e.g., Homebrew/homebrew-cask#158044), so this expands the Item struct to include any appcast value that we could conceivably want to use in the future. This will hopefully save us from having to make more modifications to the struct (and related tests) before we can use a previously-unused value in a strategy block.

I did livecheck runs with/without these changes and the [JSON] output remains the same, as expected.


I will be creating a follow-up PR to reimplement the #audit_livecheck_min_os cask audit (to align with the Sparkle strategy's behavior) but we also need to be able to access item.minimum_system_version there as well. I have that work finished and will create a PR for it if/when this one is merged.

Historically, the `Sparkle` strategy's `Item` struct has only
included basic values from the appcast that are commonly useful.
Over time we've selectively added/surfaced more values as we've
encountered outliers that require use of different values in a
`strategy` block.

We now need to use `minimumSystemValue`, so this expands the `Item`
struct to include any appcast value that we could conceivably want
to use in the future. This will hopefully save us from having to make
more modifications to the struct (and related tests) before we can
use a previously-unused value in a `strategy` block.
@samford samford force-pushed the livecheck/sparkle-more-item-attributes branch from 80a5395 to 86c702a Compare October 28, 2023 18:56
Copy link
Member

@MikeMcQuaid MikeMcQuaid left a comment

Choose a reason for hiding this comment

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

Makes sense to me, thanks @samford!

@MikeMcQuaid MikeMcQuaid merged commit c02a45f into Homebrew:master Oct 30, 2023
27 checks passed
@samford samford deleted the livecheck/sparkle-more-item-attributes branch October 30, 2023 14:38
@github-actions github-actions bot added the outdated PR was locked due to age label Nov 30, 2023
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Nov 30, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
outdated PR was locked due to age
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants