Skip to content

Conversation

@dduugg
Copy link
Member

@dduugg dduugg commented Jan 31, 2026

  • 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 lgtm (style, typechecking and tests) with your changes locally?

Enable strict typing for the abstract base classes under Cask::Artifact:

  • AbstractArtifact
  • AbstractFlightBlock
  • AbstractUninstall

This adds proper type signatures to all methods and updates the typing level from typed: true to typed: strict.

Also marks english_name and dirmethod as overridable in AbstractArtifact and adds override to subclasses that override them.

Advances #17297

@dduugg dduugg force-pushed the cask-artifact-strict-typing branch from 5c529eb to f24c7aa Compare January 31, 2026 16:19
@directives = directives
end

def install_phase(**)
Copy link
Member Author

Choose a reason for hiding this comment

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

The switch from anonymous kwargs should be unecessary if sorbet/sorbet#9857 is accepted and released, in case that's something we want to wait on

@dduugg dduugg force-pushed the cask-artifact-strict-typing branch from f24c7aa to 13ad19f Compare January 31, 2026 17:58
Enable strict typing for the abstract base classes in `Cask::Artifact`:
- `AbstractArtifact`
- `AbstractFlightBlock`
- `AbstractUninstall`
- `Relocated`

This adds proper type signatures to all methods and updates the typing
level from `typed: true` to `typed: strict`.

Also marks `english_name` and `dirmethod` as `overridable` in
`AbstractArtifact` and adds `override` to subclasses that override them.

Advances #17297
@dduugg dduugg force-pushed the cask-artifact-strict-typing branch from 13ad19f to a470303 Compare February 1, 2026 06:57
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.

2 participants