Commit graph

172 commits

Author SHA1 Message Date
Roland Walker
0e7be245be Return Cask::SystemCommand::Result object
from Cask::SystemCommand.run

* stderr and stdout are now separated, though both are available
* :print_stderr is made the default, closer to previous behavior
* exit status can be read from the result object
* plist parsing is more naturally handled in the result object.
  The :plist argument to the run method was removed.
* whitespace
2014-09-27 08:59:08 -04:00
Roland Walker
49e6e6eb10 refactor :stderr => :silence
replace with :print_stderr => false

The double test on options[:print_stderr] in system_command.rb
is intentional, and temporary.
2014-09-25 09:23:27 -04:00
Roland Walker
d156cbfcb2 add --force option for brew cask uninstall
also update some related docs for verbs `install` and `uninstall`
2014-09-16 10:59:44 -04:00
Roland Walker
5ae6e2f773 doc new app stanza and update tests to use it
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.
2014-09-13 13:03:46 -04:00
Roland Walker
ce64b38723 Merge pull request #6155 from rolandwalker/add_zap_stanza
functionality and docs for zap stanza and verb
2014-09-13 12:55:57 -04:00
Roland Walker
0f664ca78a Fix brew cask alfred for Yosemite/Alfred 2.4
Closes #5820
References: #6059
2014-09-13 12:34:12 -04:00
Roland Walker
00921dd513 functionality and docs for zap stanza
* `zap` was previously supported as a noop for forward-compatibility
* Also adds restrictions against relative paths in `uninstall :files`
* Also documents safety conventions for `uninstall :files`
2014-09-13 10:21:17 -04:00
Roland Walker
31b778f702 Merge pull request #5923 from rolandwalker/internet_plugin_artifact
add support for internet_plugin artifact
2014-08-26 15:36:33 -04:00
Roland Walker
1b05d18a3b add support for internet_plugin artifact
closes #5909
2014-08-26 11:22:25 -04:00
Federico Bond
b6cc94a8a2 Show correct GitHub file for casks with similar names
Fixes #5915
2014-08-26 11:21:21 -03:00
Federico Bond
4fe1bd76d4 Add support for long format in list command 2014-08-20 18:07:39 -03:00
rochefort
5d61bb42a5 Implement list -1 2014-08-11 21:24:17 +09:00
Roland Walker
dffed9999a add internal command _stanza
to extract the compiled/interpolated values for a given stanza.
2014-06-21 16:23:53 -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
Roland Walker
a0e061b2d6 add _help internal command 2014-06-21 09:37:39 -04:00
Roland Walker
204bbe8927 add _dump internal-use verb 2014-06-21 09:37:39 -04:00
Roland Walker
8163745d4a create "internal use" command verbs
- based on abstract class `Cask::CLI::InternalUseBase`
- interal-use class file names follow `internal_<verb>.rb`, but the "internal" is dropped for the CLI
- internal-use verbs start with underscore at CLI
- internal-use verbs are invisible in the usage document
2014-06-21 09:37:39 -04:00
Vladimír Kriška
71f3a0d968 Show file contents instead of commits 2014-06-21 01:19:07 +02:00
Roland Walker
b7573b3838 create abstract Cask::CLI::Base
from which all commands inherit.  Add `visible` method
for future use.
2014-06-20 15:06:29 -04:00
Roland Walker
de1858d905 conform all command verbs to a Class (not Module) 2014-06-20 15:06:29 -04:00
Roland Walker
bd6ebf85a4 doc: tracker symlinks are in download cache
At least mention tracker symlinks in the docs, since they
are displayed in the feedback messages.

References: #4995
2014-06-19 17:46:17 -04:00
Roland Walker
bfc07561e5 detect cached downloads in doctor
and recommend "brew cask cleanup" if present.

Closes #4857
2014-06-19 14:51:32 -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
a0a5ba44df Merge pull request #4965 from rolandwalker/doctor_load_path_annotation
Annotatate unexpected $LOAD_PATH in doctor
2014-06-18 17:45:09 -04:00
Roland Walker
1e9c5de1dc Annotatate unexpected $LOAD_PATH in doctor
Warning if first element is not Homebrew-cask's own lib dir
2014-06-18 17:26:40 -04:00
Roland Walker
e0dc8b4497 Merge pull request #4970 from rolandwalker/no_backtick_in_error_messages
don't use Markdown-style backtick in error msgs
2014-06-18 16:35:34 -04:00
Roland Walker
79e17ae450 Merge pull request #4963 from rolandwalker/doctor_brew_cleanup_needed
detect need for "brew cleanup" in doctor
2014-06-18 16:29:02 -04:00
Roland Walker
0954ca4c8f don't use Markdown-style backtick in error msgs
Because backtick has a different meaning in the shell, and the user
may copy-and-paste such text.

Some light re-wording included as well, and a reference to "brew cask edit"
changed to "brew cask cat" for simplicity.
2014-06-18 15:16:26 -04:00
Roland Walker
b37e34e2c3 detect need for "brew cleanup" in doctor
User will receive a warning if more than one copy of Homebrew-cask
is installed.

References: #4857
2014-06-18 11:31:12 -04:00
Roland Walker
4c8e530570 move utility methods inside module namespace
Cask::Utils
2014-06-18 11:21:18 -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
bd30615a88 collect_concat is not available in Ruby 1.8
`collect` is fine here. References #4719.
plus bugfix: join into a string so that `render_with_none`
knows to substitute "<NONE>"
2014-06-06 21:48:37 -04:00
Roland Walker
abe4428cb6 add $SHELL to doctor 2014-06-06 14:15:48 -04:00
Roland Walker
40215968ef add $CHRUBY_VERSION to doctor 2014-06-06 14:15:34 -04:00
Roland Walker
50841d3f86 whitespace 2014-06-06 11:34:45 -04:00
Roland Walker
c857f11965 add PATH to doctor 2014-06-06 11:33:15 -04:00
Roland Walker
a9121320f8 add render_env_var in doctor
add quoting
2014-06-06 11:32:15 -04:00
Roland Walker
e6e5626bbc warning on old-style tap paths in doctor 2014-06-06 11:25:35 -04:00
Roland Walker
796104b786 move homebrew_origin to method in doctor 2014-06-06 11:08:19 -04:00
Roland Walker
6a7cda5c24 move default_cask_count to method in doctor 2014-06-06 11:08:19 -04:00
Roland Walker
8388d1c3ac move alt_taps to method in doctor 2014-06-06 11:08:18 -04:00
Roland Walker
c354e53cc3 move fq_default_tap to method in doctor 2014-06-06 11:08:18 -04:00
Roland Walker
8a5ad08dc8 move privledged_uid to method in doctor 2014-06-06 11:08:18 -04:00
Roland Walker
9f2c773ed6 move notfound_string to method 2014-06-06 11:00:32 -04:00
Roland Walker
fc9e7299ed add locale variables to doctor
references: #4677
2014-06-06 11:00:32 -04:00
Roland Walker
f6011c85c9 render empty doctor values with <NONE> 2014-06-06 10:37:01 -04:00
Roland Walker
1400b61acf abstract error_string in doctor 2014-06-06 10:36:56 -04:00