Skip to content

Latest commit

 

History

History
60 lines (37 loc) · 3.05 KB

CONTRIBUTING.md

File metadata and controls

60 lines (37 loc) · 3.05 KB

How To Contribute

👍🎉 First off, thanks for taking the time to contribute! 🎉👍

Updating a Cask

Notice an application that's out-of-date in Homebrew Cask? In most cases, it's very simple to update it. We have a command that will accept a new version number and take care of updating the Cask file and submitting a pull request to us:

brew bump-cask-pr --version <new_version> <outdated_cask>

You can also follow the steps in Adding a Cask for more complicated changes.

Getting Set Up To Contribute

For manual updates, you'll need to fork the repository and add your copy as a remote (can also be done with hub fork).

1: Fork the repository in GitHub with the Fork button.

2: If you have not already done so, add your GitHub fork as a remote for your homebrew-cask Tap:

$ github_user='<my-github-username>'
$ cd "$(brew --repository)"/Library/Taps/homebrew/homebrew-cask
$ git remote add "${github_user}" "https://github.com/${github_user}/homebrew-cask"

3: If you have already added your GitHub fork as a remote for your homebrew-cask Tap, ensure your fork is up-to-date.

4: Switch to a new branch (ie. new-feature), and work from there: git checkout -b new-feature.

Adding a Cask

Notice an application that's not in Homebrew Cask yet? Make sure it's not yet in Homebrew/cask-versions or Homebrew/core (can be searched with brew search). Mac App Store apps can't be installed via Homebrew Cask, but check out mas for an alternative.

With a bit of work, you can create a Cask for it. The document Adding A Cask will help you create, test, and submit a new Cask to us.

Style guide

Some style guidelines:

  • All Casks and code should be indented using two spaces (never tabs). When brew style contradicts this, style must be followed.
  • There should not be any extraneous comments - the only comments that should be used are the ones explicitly defined in the Cask Language Reference.
  • The stanza order and position of newlines is important to make things easier (See Stanza order).
  • Use string manipulations to improve the maintainability of your Cask (See version methods).
  • Test your cask using brew audit/style (See testing).
  • Make one Pull Request per Cask change.
  • Do not squash commits after updating a Pull Request.
  • Use descriptive commit messages - mention app name and version (ie. Upgrade Transmission.app to v2.82).