287 Commits

Author SHA1 Message Date
Mike McQuaid
c4f72312ce
Fixup brew style failures. 2019-04-30 09:19:18 +01:00
Mike McQuaid
36dbad3922
Add frozen_string_literal to all files. 2019-04-20 13:27:36 +09:00
Vítor Galvão
0ee226769a hbc: remove all *_to_slashes 2019-04-17 16:31:35 +01:00
Mike McQuaid
8229e592d7
cask/cmd/info_spec: needs network connection.
Tag it accordingly.
2019-04-17 17:34:33 +09:00
Mike McQuaid
1281c4a663
Merge pull request #5983 from zachauten/continue-upgrading-casks-after-failure
'brew cask upgrade' will continue upgrading casks after a failure
2019-04-14 10:01:32 +01:00
Mike McQuaid
0750971870
Merge pull request #5893 from reitermarkus/version-unstable
Add `#unstable?` method for cask versions.
2019-04-14 10:00:57 +01:00
Mike McQuaid
3b842ef41f
Merge pull request #6014 from vitorgalvao/caskroom-home
cask home: update to brew.sh
2019-04-14 10:00:15 +01:00
EricFromCanada
e0558dc7c7 trim line breaks 2019-04-13 21:37:48 -04:00
EricFromCanada
fa6404e0f5 grammar fixes 2019-04-13 21:29:32 -04:00
Vítor Galvão
67ca3d372a cask home cmd: update homepage to brew.sh 2019-04-13 19:47:14 +01:00
Zach Auten
41b5b788d5 'brew cask upgrade' will continue upgrading casks after a failure
'cask upgrade' command collects all exceptions thrown
from individual casks during the upgrade process. If
there were more than one cask that raised exceptions
during the upgrade process, a MultipleCaskErrors
exception will be thrown.

Issue #5203
2019-04-12 19:26:33 -04:00
Michael
2fbe4fe3b7
Update create_spec.rb 2019-04-07 02:10:01 +02:00
Mike McQuaid
75257886f2
Cleanup some RSpec tests
Fix some Rubocop RSpec checks, update some values and improve
documentation.
2019-03-28 19:16:56 +00:00
Markus Reiter
2a3b7d072d Add #unstable? method for cask versions. 2019-03-27 13:48:03 +01:00
Markus Reiter
42d90f8bd9 Use same logic for installer script: and uninstall script:. 2019-03-03 06:21:11 +01:00
Mike McQuaid
17f3ee1957
Improve Bundler cleanup
Rather than trying to be smart and doing this ourselves in `brew cleanup` let’s just installed Bundler somewhere it doesn’t try to clean itself up and use `bundle install --cleanup` when we need cleanup done.

Also, use `ohai` and `odie` when possible as they look nicer.
2019-02-27 14:02:46 +00:00
Markus Reiter
707cb33346 Add tests for Cask::Config. 2019-02-15 10:09:14 +01:00
Markus Reiter
190ff7558a Use saved cask config for reinstall/upgrade/uninstall. 2019-02-15 10:09:14 +01:00
Markus Reiter
fda6e0cab3 Split cask config into three tiers. 2019-02-15 10:09:14 +01:00
Markus Reiter
1e1ce1c471 Save config file for casks. 2019-02-15 10:09:14 +01:00
Mike McQuaid
3060125c45
rubocop: autofix problems. 2019-02-11 09:50:09 +00:00
Markus Reiter
0fcc62db31 Run uninstall rmdir: after uninstalling artifacts. 2019-02-08 01:09:48 +01:00
Danny Weinberg
b0124c4fb0 Cask handle already downloaded file
The current logic for curl_download tries to restart any existing
partial download, but this fails for some servers when the file is
already fully downloaded, returning a status code 416. This updates the
function to check for the file being already downloaded and if so bails
early.

The following command used to fail when run more than once but now works
as expected:
```
brew cask info https://raw.githubusercontent.com/homebrew/homebrew-cask/master/Casks/docker.rb
```
2019-02-01 14:57:50 -08:00
Markus Reiter
d22c2eca9e Refactor ConflictsWith to be a DelegateClass(Hash). 2019-01-27 21:48:12 +01:00
Mike McQuaid
5c7fbaf259
Update RuboCop RSpec rules
Create a new, seperate RuboCop file that uses our RSpec rule
configuration if a specified tap has a `spec` directory.

Also, while we're here, fix up the various rules so that we don't have
any outdated TODOs, disable some rules for good and fix `brew style`
for Homebrew/bundle.
2019-01-21 13:39:11 +00:00
Claudia
5be80a78f6
Use Homebrew-controlled domain for Cask dummy URLs
In a number of Cask specs, the value of the `homepage` stanza is currently set
to https://example.com. As of 2018-11-28, the TLS certificate served by
example.com seems to be expired, possibly due to an oversight on ICANN’s side.

While the certificate is certainly going to be renewed soon, it would be
desirable for Homebrew’s test result to be less dependent on ICANN’s actions.
This commit changes the homepages of all test Casks to http://brew.sh, whose
domain and TLS certificate are both controlled by Homebrew.
2018-11-28 20:51:55 +01:00
L. E. Segovia
5a2743b50d
Merge branch 'master' into gitjiro-improved 2018-11-24 01:01:40 +00:00
Mike McQuaid
109e974c38
Cleanup rubocop-cask references. 2018-11-08 15:54:47 +00:00
Claudia
35b8c3d6e2
Increase timeout tolerance.
Co-Authored-By: reitermarkus <me@reitermark.us>
2018-11-07 21:13:12 +01:00
Markus Reiter
785ffb1b2c Refactor tests for uninstall stanza. 2018-11-07 18:44:52 +01:00
Markus Reiter
f61b963744 Improve application quitting. 2018-11-07 18:44:52 +01:00
Claudia
7b320fc03b
Move shared Cask examples closer to its clients
In Cask specs, we have recently introduced a couple of specialized
`shared_examples` directories. Those new directories are organized
below their respective packages (for instance,
`cask/artifact/shared_examples` and `cask/cmd/shared_examples`).

This commit moves the rest of the shared examples accordingly.

See also:
https://github.com/Homebrew/brew/pull/5247
2018-11-06 07:19:41 +01:00
Mike McQuaid
737b84b54b
brew style --fix fixes. 2018-11-02 17:29:23 +00:00
Mike McQuaid
4231197437
Merge pull request #5119 from javian/fixtodo1
rubocop: fix some rubocop offences
2018-10-20 11:56:52 +01:00
Markus Reiter
a838b372de Fix brew cask style with relative paths. 2018-10-17 13:51:51 +02:00
Jan Viljanen
96e5b8d9b1 fix rubocop offences 2018-10-16 22:44:07 +02:00
Alec Clarke
3a8e87134b Use the all matcher to check the existence of each path.
This change allows us to remove the `RSpec/IteratedExpectation` rule from `.rubocop_todo.yml` as we no longer iterate over each path to check existence.

Note: We this PR didn't change the subsequent test checking for the negative expectations as this isn't part of the rule (see: https://github.com/rubocop-hq/rubocop-rspec/issues/278).
2018-10-13 07:23:57 -07:00
L. E. Segovia
70fc2af647
Cask: fix all homepages now that they are audited 2018-10-10 21:36:06 +00:00
commitay
5024efa506
Merge pull request #5059 from commitay/remove-checkpoint
remove appcast checkpoint audit
2018-10-09 15:21:24 +10:00
Markus Reiter
711bb4977f
Merge pull request #5056 from reitermarkus/accessibility_access
Remove the `accessibility_access` stanza.
2018-10-08 18:24:18 +02:00
commitay
da7d46aa14 remove appcast checkpoint audit 2018-10-08 10:54:30 +10:00
Markus Reiter
c4d418e126 Use ActiveSupport’s #second. 2018-10-07 23:10:56 +02:00
Markus Reiter
b7cf925da8 Remove unused methods in Staged module. 2018-10-07 22:00:07 +02:00
Markus Reiter
59e3a532ff Remove the accessibility_access stanza. 2018-10-07 21:53:31 +02:00
Markus Reiter
2308f0c571 Skip quitting applications when not logged into GUI. 2018-10-02 16:27:45 +02:00
Mike McQuaid
78eba5b815
Autofix RuboCop RSpec failures 2018-09-20 13:36:42 +01:00
L. E. Segovia
ab31af2b4b
Cask: fixes for quarantining
Gatekeeper's Path Randomization is currently making automated
installation a nightmare. Let's manually toggle the (undocumented) app
translocation bit in the `com.apple.quarantine` extended attribute.

While we're at it, let's also toss in some fixes:

- zip downloads with improper permissions that prevent us from
quarantining
- quarantine/release/skip downloads as requested by the user
2018-09-07 15:37:31 +00:00
Markus Reiter
a84a1c63db Rename Hbc module to Cask. 2018-09-06 09:30:52 +02:00
Markus Reiter
78d4db2755 Use classes for instance doubles. 2018-09-06 09:13:21 +02:00
Markus Reiter
cf49788d3a Rename test/cask/cli to test/cask/cmd. 2018-09-06 08:33:51 +02:00