Commit graph

294 commits

Author SHA1 Message Date
Roland Walker
ecb66ac567 DSL: add tags stanza
only limited/defined keys are permitted
 - :vendor
 - :font_pitch
 - :font_serif
 - :font_weight
 - :font_slant

forward-compatibility: no associated functionality is
provided.  Intentionally left undocumented.

References: #4688
2014-07-02 18:54:13 -04:00
Roland Walker
3932c4d467 Merge pull request #4951 from rolandwalker/add_installer_stanza
DSL: add `install_script` stanza
2014-07-02 18:29:56 -04:00
Roland Walker
0f311784cf DSL tests for install_script stanza 2014-07-02 18:06:24 -04:00
Paul Hinze
63a32ef021 rspecify scopes and download strategy tests
refs #5080
2014-06-29 14:56:47 -05:00
Paul Hinze
58d4c745a9 install rspec; move first few tests over
refs #5080
2014-06-29 11:33:22 -05:00
Roland Walker
2c06def3ba Merge pull request #4873 from rolandwalker/add_license_stanza
DSL: add `license` stanza
2014-06-28 10:32:22 -04:00
Roland Walker
99ba340a4d Merge pull request #4896 from rolandwalker/add_depends_on_stanza
DSL: add `depends_on` stanza
2014-06-28 10:19:18 -04:00
Roland Walker
b2390ac3d8 Merge pull request #4848 from rolandwalker/add_gpg_stanza
DSL: add `gpg` stanza
2014-06-28 10:18:36 -04:00
Roland Walker
cc7db15b5b Merge pull request #4847 from rolandwalker/extend_appcast_stanza
DSL: extend `appcast` stanza
2014-06-28 10:11:49 -04:00
Roland Walker
52152016c2 Merge pull request #4865 from rolandwalker/allow_all_uninstall
DSL: allow all Casks to use `uninstall` stanzas
2014-06-28 10:09:19 -04:00
Roland Walker
d2e302afbb Add license stanza to DSL
References: #4688.

For forward-compatibility; intentionally left undocumented.

The `license` stanza is not free-form.  There is a limited
set of valid symbols, of which the argument must be a member.
(The set will later be documented, and probably needs amendments.)

Version numbers and variants of licenses are intentionally
ommitted.  The use-case for `license` is filtering and listing
of Casks. We want to avoid becoming a detailed repository of
application descriptions: that information can be found at the
`homepage` URL.
2014-06-26 09:13:56 -04:00
Roland Walker
200770c446 Add a syntax test to help support multiple Rubies
This is no real gain on Travis, which runs the full test suite
against two Rubies. It does catch a few classes of error when
running the test suite locally.
2014-06-23 14:50:48 -04:00
Roland Walker
ddb9322882 Merge pull request #5011 from rolandwalker/internal_command_dump
create "internal use" command verbs: _dump, _help
2014-06-21 10:46:14 -04:00
Vladimír Kriška
71f3a0d968 Show file contents instead of commits 2014-06-21 01:19:07 +02:00
Roland Walker
de1858d905 conform all command verbs to a Class (not Module) 2014-06-20 15:06:29 -04:00
Roland Walker
d9861a6aaf minor updates to ignores
implemented in both `.gitignore` and `layout_test.rb`
2014-06-19 17:35:02 -04:00
Roland Walker
5f6bfcb92d Merge pull request #4986 from rolandwalker/ignore_dot_bundle
ignore a toplevel .bundle directory
2014-06-19 17:14:13 -04:00
Roland Walker
d811b3b32e Add depends_on stanza to DSL.
For forward-compatibility, intentionally undocumented.  Currently
works only as a synonym: `depends_on :formula` substitutes for
`depends_on_formula`, which is intended to be removed.

However, this PR also provides additional `depends_on` keys for
future expansion of functionality:
 - `:cask`
 - `:macos`
 - `:arch`
 - `:x11`
 - `:java`

The symbol names were chosen to match those used in Homebrew Formulae.

References: #4688, #2001
2014-06-19 15:58:21 -04:00
Roland Walker
f65d422b82 refactor brew cask cleanup
Divide into more tractable methods. No functional change.

Change apparent typo in test regular expression
2014-06-19 14:25:56 -04:00
Roland Walker
182811676b tests for appcast stanza 2014-06-19 12:06:43 -04:00
Roland Walker
3a1fdd80e4 refactor dsl_test.rb into named sections 2014-06-19 12:06:43 -04:00
Roland Walker
2b23710f2e ignore a toplevel .bundle directory 2014-06-19 10:39:34 -04:00
Roland Walker
62fff58f48 define global shutup method (temporary)
solves the following error:
```bash
$ bundle exec rake test
...
NoMethodError: undefined method `shutup'
...
```

This is not a permanent solution.  The test suite should be changed
around to find the new `shutup` method, which is still in Homebrew,
but no longer global.
2014-06-19 10:06:55 -04:00
Roland Walker
04a84b5bef disable minitest-colorize
solves this error:
```bash
$ bundle exec rake test
...lib/minitest/colorize.rb:88:in `<top (required)>': undefined method `output=' for Minitest::Unit:Class (NoMethodError)
...
```
2014-06-19 10:04:04 -04:00
Roland Walker
ed5ea5ed4c recast install/uninstall methods: install_phase
and `uninstall_phase`, to improve clarity, now that we have an
independent `uninstall` artifact.
2014-06-18 20:22:24 -04:00
Roland Walker
3bd2e2a3f5 promote :uninstall to an independent 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`
2014-06-18 20:22:24 -04:00
Roland Walker
33f8cc431a add gpg stanza to DSL
For forward compatibility.  The stanza has no effect, and is
intentionally left undocumented at this time.

References: #4688
2014-06-18 19:59:54 -04:00
Roland Walker
2ffee346df standardize the recommended upgrade command
in both docs and error messages.

Recent bug reports indicate that `cleanup` commands are essential
in some situations.
2014-06-18 15:15:50 -04:00
Roland Walker
1c72aa0c64 Merge pull request #4948 from rolandwalker/test_repo_layout
add tests for expected layout of files in repo
2014-06-18 09:46:01 -04:00
Roland Walker
ad4989416a add tests for expected layout of files in repo
References: #4914
2014-06-17 09:06:43 -04:00
Roland Walker
3cb729095d suggested (not enforced) order for Cask stanzas
References: #4914
2014-06-16 13:32:08 -04:00
Roland Walker
4f3ecb1cc3 Downgrade Cask install errors to warnings
Including the case where a Cask is already installed.
Always continue installing when multiple Casks are specified,
only raising an exception at the end of the command (if some
portion of the attempted install actions failed).  Never
exit with an error code if "already installed" was the only
problem seen during the run.

Also tweak error messages.

Fixes #1347, #2677, #4785

Required disabling two tests regarding suggestions on Cask
spelling errors.
2014-06-10 12:13:59 -04:00
Roland Walker
d8ad14aaa5 Merge pull request #4757 from rolandwalker/https_in_create
prompt for HTTPS URLs in `brew cask create`
2014-06-07 15:35:45 -04:00
Roland Walker
154eb2b12f prompt for HTTPS URLs in brew cask create 2014-06-07 14:36:35 -04:00
Roland Walker
f0ea05316d Merge pull request #4743 from NanoXD/add_versioned_cask_with_no_checksum_test
Add audit for versioned casks with no checksum
2014-06-07 13:51:11 -04:00
Roland Walker
cf89f7f7e8 regularize whitespace 2014-06-07 11:43:40 -04:00
Fernando Paredes
a4d479c3c4 Add audit for versioned casks with no checksum
* Check if version is not latest and has a sha256 :no_check for checksum
2014-06-06 21:22:19 -07:00
Fernando Paredes
b767f9f1e6 Add OS X 10.10 as a known OS version
* In Yosemite the tests failed for being unknown
2014-06-06 10:56:41 -07:00
Roland Walker
0ef4606e0c retire support for no_checksum stanza 2014-06-04 23:26:09 -04:00
Roland Walker
abd66acba1 Merge pull request #4370 from rolandwalker/uninstall_signal
add `:signal` directive for `uninstall`
2014-05-14 06:26:49 -04:00
Roland Walker
6815ef272e don't use doubledash on launchctl remove
it appears to be incorrect here: removal of jobs is hindered
2014-05-13 18:52:35 -04:00
Roland Walker
b38d6a6977 add :signal directive for uninstall
to send arbitrary Unix signals.  Per discussion in #4328, some
processes are resistant to the `:quit` directive, and can be
made to shut down via a signal.
2014-05-13 13:04:10 -04:00
Roland Walker
cfc6ae7a13 Merge pull request #4264 from rolandwalker/retire_sha1
Retire support for `sha1` stanza.
2014-05-08 18:37:00 -04:00
Roland Walker
25c7ee5962 Re-enable failing "search" test
This test used to selectively fail only on Travis.  The problem
was never isolated.  However, it was apparently recently fixed,
probably in #4042.
2014-05-08 16:05:35 -04:00
Roland Walker
34df5309d4 Retire support for sha1 stanza.
We haven't received new submissions using `sha1` for quite
some time.
2014-05-08 12:01:32 -04:00
Roland Walker
c436ddc5fd transition docs/tests/messages to sha256 :no_check
`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)
2014-05-08 08:42:44 -04:00
Roland Walker
4f82dda065 Merge pull request #4242 from rolandwalker/cat_documentation
update docs and messages for `brew cask cat`
2014-05-07 22:34:07 -04:00
Roland Walker
e910467b39 update docs and messages for brew cask cat 2014-05-07 10:32:15 -04:00
Roland Walker
e9f6c196f8 Merge pull request #4229 from rolandwalker/defend_unusual_homebrew
Defend against unusual Homebrew setups
2014-05-07 10:12:58 -04:00
Roland Walker
0153c19f7a Defend against unusual Homebrew setups
To aid in Tap transition.  Require Homebrew 0.9.5, rescue
`rename_tags_dir_if_necessary` (`respond_to?` won't work there
because `rename_tags_dir_if_necessary` is a private method.

References: #4192, @Jackiebo in #4096
2014-05-07 09:50:42 -04:00