Replacing `link` for almost all cases.
The `link` stanza can still appear in error messages, because
under the hood, `app` is still implemented as a pure synonym
for the `link` artifact. That will change automatically when
we factor into separate artifacts.
The docs seemed to suggest that if versioned downloads were available,
to prefer them over unversioned ones. Since that's incorrect presently,
I attempted to correct that (see #6126 for more details).
`sha256 :no_check` has been supported syntax for a couple of months,
and now is being transitioned to the preferred syntax, replacing
the `no_checksum` stanza (which will still be supported, but
deprecated)
global replace of:
'phinze/homebrew-cask' -> 'caskroom/homebrew-cask'
'phinze/cask' -> 'caskroom/cask'
'phinze/homebrew-testcasks' -> 'caskroom/homebrew-testcasks'
and various other specific places that needed updates
<3 the homebrew-cask community!
This script implements naming rules for App-based Casks
as currently documented. After some real-world testing, this
logic should be merged into `brew cask create`. This commit adds
`doc/CASK_NAMING_REFERENCE.md`, and reduces `CONTRIBUTING.md` by
422 words.
following up on #2659, further steps toward an algorithmic
derivation of Canonical Name from App Name.
Also add two rules about hyphens which are implied and already
followed by every Cask.
following up on #3094
- rename `THE_CASK_LANGUAGE.md` to `CASK_LANGUAGE_REFERENCE.md`
- expand `CASK_LANGUAGE_REFERENCE.md` to more fully specify the Cask DSL
- add sections: "Casks Are Ruby Classes" and "The Cask Language Is Declarative"
- import content from `FAQ.md` to `CASK_LANGUAGE_REFERENCE.md`, create multiple sections
listing all stanzas according to category.
- document which stanzas are permitted multiple times
- add previously undocumented `before_install` and `before_uninstall`
- doc that `Hardware::CPU.is_64_bit?` (and 32-bit) are acceptable in conditionals
- doc that `:target` may contain an absolute path (this works more reliably after #3075)
- doc that `uninstall` is optional in the DSL, but required by the community
- link examples
- standardize mixed language on "stanza" over "field"
- further shrink `CONTRIBUTING.md` by deleting rarely used stanzas
and referencing `CASK_LANGUAGE_REFERENCE.md`
Rationale:
- lengthy CONTRIBUTING.md may itself discourage new Cask authors
- it is doubtful that everyone reads to the end, where there
are important notes about squashing.
CONTRIBUTING.md reduced from 7947 words to 1927 words.
This was accomplished principally by spinning out "details" sections
into a new reference file `doc/THE_CASK_LANGUAGE.md`, but also by
ruthless re-organization, removal of duplication, and trimming of
phrases. Content remains 99% identical, though a few typos were
caught along the way, and a table of contents was added.