-
-
Notifications
You must be signed in to change notification settings - Fork 10.8k
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
DSL: allow all Casks to use uninstall
stanzas
#4865
Merged
rolandwalker
merged 7 commits into
Homebrew:master
from
rolandwalker:allow_all_uninstall
Jun 28, 2014
Merged
DSL: allow all Casks to use uninstall
stanzas
#4865
rolandwalker
merged 7 commits into
Homebrew:master
from
rolandwalker:allow_all_uninstall
Jun 28, 2014
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
References: #4688 |
rolandwalker
added a commit
to rolandwalker/homebrew-cask
that referenced
this pull request
Jun 13, 2014
HOLD until Homebrew#4865 is merged. After Homebrew#4865, `caskroom_only` can be subclassed from Cask::Artifact::Base like any other artifact. It no longer has the special property of making `uninstall` stanzas work. This stanza has never been documented. It is possible that it will no longer be needed, after Homebrew#4865 and subsequent cleanup on Casks that use this form. References: Homebrew#4688
This was referenced Jun 13, 2014
Merged
rolandwalker
changed the title
Allow all Casks to use
DSL: allow all Casks to use Jun 13, 2014
uninstall
stanzasuninstall
stanzas
as dispatch_uninstall_directives
the set contains the uninstall directives from the DSL, possibly more than one artifact
- separated from class `Cask::Artifact::Pkg` (the `:uninstall` DSL key) - `:uninstall` can now be invoked for all Casks - `uninstall_test.rb` also had to be separated from `pkg_test.rb`
and `uninstall_phase`, to improve clarity, now that we have an independent `uninstall` artifact.
rolandwalker
added a commit
that referenced
this pull request
Jun 28, 2014
DSL: allow all Casks to use `uninstall` stanzas
rolandwalker
added a commit
to rolandwalker/homebrew-cask
that referenced
this pull request
Jul 30, 2014
Missed in Homebrew#4865. install method was renamed. Bug exercised by Cask amazon_music.rb.
9 tasks
rolandwalker
added a commit
to rolandwalker/homebrew-cask
that referenced
this pull request
Nov 18, 2014
`caskroom_only` was never documented. Its original purpose was obsoleted in Homebrew#4865, and its use has been recently been reduced to two Casks. This PR * continues the rationalization of naming by changing `caskroom_only` to `stage_only`. "stage" is the verb for "make a copy under the caskroom directory" * documents `stage_only` * adds tests for `stage_only` * validates the argument to `stage_only` * gives sensible output in `brew cask info` for `stage_only` Casks * enforces that `stage_only` cannot coexist with any activatable artifacts `caskroom_only` is still supported for backward compatibility, but should be removed before 0.50.0.
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Previously,
uninstall
was silently ignored unless there was aninstall
orcaskroom_only
stanza present.This PR works by promoting
uninstall
to a full, independent artifact.uninstall
waspreviously integrated into
Cask::Artifact::Pkg
.This PR also contains considerable refactoring. Notably,
install
anduninstall
methods on all artifacts were changed to
install_phase
anduninstall_phase
to help distinguish these actions from the new
uninstall
artifact. (Both theinstall_phase
and
uninstall_phase
methods are invoked on every artifact type present in aCask, though
install_phase
on theuninstall
artifact is a no-op).install
-based Casks (iepkg
-based Casks) must still use an explicituninstall
stanza as before. Implicit cleanup of
link
stanza symlinks during uninstall isunchanged. The only functional difference is that a
link
-type Cask can dosomething like: