Skip to content

Latest commit

 

History

History
174 lines (138 loc) · 8.73 KB

cask_language_deltas.md

File metadata and controls

174 lines (138 loc) · 8.73 KB

Cask Language Deltas

This document summarizes revisions to the Cask Domain-Specific Language (DSL).

Cask DSL 1.0

These are deltas from the pre-existing (unversioned) conventions to the Cask DSL 1.0 specification.

Header Line (1.0)

The header line was changed from the form

class MyApp < Cask

to

cask :v1 => 'my-app' do

Legacy rules for mapping Cask filenames to header class names are no longer needed. The token 'my-app' in the header corresponds directly to the filename my-app.rb.

The term :v1 identifies the DSL version (currently 1.0), and defines the features which are available for the current Cask.

New Forms

###(1.0)

(1.1)

Renamed Forms (1.0)

old form new form
after_install postflight
after_uninstall uninstall_postflight
arch_only (within caveats) depends_on :arch
assistive_devices (within caveats) accessibility_access
before_install preflight
before_uninstall uninstall_preflight
container_type container :type
depends_on_formula depends_on :formula
destination_path staged_path
install pkg
link app (or sometimes suite or artifact)
manual_installer (within caveats) installer :manual
nested_container container :nested =>
os_version_only (within caveats) depends_on :macos
title (in interpolations) token
uninstall :files uninstall :delete
version 'latest' version :latest
x11_required (within caveats) depends_on :x11

All Supported Stanzas (1.0)

Other Supported Non-stanza Methods (1.0)

For use in eg interpolation:

Caveats Mini-DSL

(1.0)

(1.1)

*flight Mini-DSL (1.0)

(1.0)

(1.1)

References

<3 THANK YOU TO ALL CONTRIBUTORS! <3