brew-cask-tools 1.0.3 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 54e79300a1a94158ab3d9808ba88b8325277e43d
4
- data.tar.gz: 396206348befd0b098b884b165e018d8f8acf2db
3
+ metadata.gz: 69b3132783d2a2e29ca228d44598ccbfef53d5f9
4
+ data.tar.gz: f4d075a519e9b0f87f5728914e990ed064c9c71d
5
5
  SHA512:
6
- metadata.gz: 36056ca2108754e300401207c5478d94ffdbbf20aecb0dafadff0e55443fb674cbefc2306f90e4024a44d326135e89af3777bdaf08b1068a1666611d39273a5d
7
- data.tar.gz: e0b6014c24b9a69db83a45ad861f7897f5ce149e0015d8f1457cc9be6574a51bc83f937f31a06f6922ab73ab2458e414fb4b74ddb7d696b5bdac7bf2060dbce2
6
+ metadata.gz: 65744666d8fa3bbf845feed5a362e0964aaca2f99ffb0d6f17e055f0afd9f77625cd446f6419eec79c8daa213c0fa466d3c7b4710f920dd67e3e21e6cb98248e
7
+ data.tar.gz: 680db979070c6dffb5d6ccc80b459d0ca8f4df5cf29facc36b3b89a241fa70e87bb7a869f5a84ff05a3791fa93d73b9a764e71345ad2ea22aef0df19d0265f78
data/lib/bct/cask.rb CHANGED
@@ -3,9 +3,10 @@ require 'thor'
3
3
  require 'open3'
4
4
 
5
5
  require_relative './cask/info'
6
+ require_relative './cask/versions'
6
7
 
8
+ # Location of homebrew cask's caskroom
7
9
  CASKROOM = '/usr/local/Caskroom'.freeze
8
- DIR_BLACKLIST = ['.', '..', '.metadata'].freeze
9
10
 
10
11
  module BrewCaskTools
11
12
  # Cask control class. Implements operations on a single cask.
@@ -24,33 +25,33 @@ module BrewCaskTools
24
25
  info = `brew cask info #{name}`.split("\n")
25
26
  end
26
27
 
27
- @info = Info.new(info)
28
- @deprecated = deprecated?
28
+ @info = Casks::Info.new(info)
29
29
  @dir = File.join(CASKROOM, @name)
30
+ @versions = Casks::Versions.new(@dir, @info.short_name.sub("#{@name}: ", ''))
30
31
  end
31
32
 
32
- def filter_info
33
- @info.info.select! { |i| !i.end_with?('(does not exist)') }
33
+ def current
34
+ @versions.current
34
35
  end
35
36
 
36
- def current_version
37
- @info.short_name.sub("#{@name}: ", '')
37
+ def candidate
38
+ @versions.candidate
38
39
  end
39
40
 
40
- def installed_version
41
- local_versions.last
41
+ def versions
42
+ @versions.installed
42
43
  end
43
44
 
44
- def local_versions
45
- Dir.entries(@dir)
46
- .reject { |i| DIR_BLACKLIST.include?(i) }
47
- .sort
45
+ def old
46
+ @versions.old_installed
48
47
  end
49
48
 
50
- def local_metadata_versions
51
- Dir.entries(File.join(@dir, '.metadata'))
52
- .reject { |i| DIR_BLACKLIST.include?(i) }
53
- .sort
49
+ def metadata
50
+ @versions.metadata
51
+ end
52
+
53
+ def latest?
54
+ @versions.latest?
54
55
  end
55
56
 
56
57
  def deprecated?
@@ -58,71 +59,51 @@ module BrewCaskTools
58
59
  end
59
60
 
60
61
  def can_cleanup?
61
- return true if @deprecated
62
- (local_versions.length > 1 || local_metadata_versions.length > 1)
62
+ versions.length > 1 || metadata.length > 1
63
63
  end
64
64
 
65
65
  def outdated?
66
- current_version != installed_version
66
+ return false if latest?
67
+ candidate > current
67
68
  end
68
69
 
69
- def upgrade
70
- return say "You have the most recent version of #{@name}. " \
71
- 'It cannot be upgraded', :green unless outdated?
72
-
73
- say "Installing #{@name} (#{current_version})", :cyan
74
- cmd = "brew cask install #{@name} --force"
75
- Open3.popen2e(cmd) do |_stdin, stdout_err, _wait_thr|
76
- while line = stdout_err.gets
70
+ def exec
71
+ Open3.popen2e("brew cask install #{@name} --force") do |_stdin, stdout_err, _wait_thr|
72
+ line = ''
73
+ while line
74
+ line = stdout_err.gets
77
75
  puts line
78
76
  end
79
77
  end
80
- say "Upgraded #{@name} to version #{current_version}", :green
81
78
  end
82
79
 
83
- def old_versions
84
- old(local_versions)
85
- end
80
+ def upgrade
81
+ return say "#{@name} uses the `latest` convention. " \
82
+ 'Homebrew cask does not upgrade casks marked as ' \
83
+ '`latest`. Use another method of determining if ' \
84
+ 'this application has an upgrade', :green if latest?
86
85
 
87
- def old_metadata
88
- old(local_metadata_versions)
89
- end
86
+ return say "You have the most recent version of #{@name}. " \
87
+ 'It cannot be upgraded', :green unless outdated?
90
88
 
91
- def old(arr)
92
- _, *previous = arr.reverse
93
- previous
89
+ say "Installing #{@name} (#{candidate})", :cyan
90
+ exec
91
+ say "Upgraded #{@name} to version #{candidate}", :green
94
92
  end
95
93
 
96
94
  def cleanup
97
95
  return unless can_cleanup?
98
- if @deprecated == true
99
- yield self, local_versions
96
+
97
+ if deprecated?
98
+ yield self, versions
100
99
  # Delete the whole cask
101
- rm(@dir)
100
+ ::FileUtils.rm_rf(@dir, secure: true, verbose: true)
102
101
  return
103
102
  end
104
103
 
105
- yield self, old_versions
106
- rm_old(old_versions, method(:rm_version))
107
- rm_old(old_metadata, method(:rm_metadata))
108
- end
109
-
110
- def rm_old(versions, method)
111
- versions.each do |version|
112
- method.call(version)
113
- end
114
- end
115
-
116
- def rm_version(version)
117
- rm(File.join(@dir, version))
118
- end
119
-
120
- def rm_metadata(version)
121
- rm(File.join(@dir, '.metadata', version))
122
- end
104
+ yield self, old
123
105
 
124
- def rm(dir)
125
- ::FileUtils.rm_rf(dir, secure: true, verbose: true)
106
+ @versions.rm_old
126
107
  end
127
108
  end
128
109
  end
data/lib/bct/cask/info.rb CHANGED
@@ -1,34 +1,34 @@
1
- require 'pry'
2
-
3
1
  module BrewCaskTools
4
- # Class to keep brittle parsing of `brew cask info #{cask}` localized.
5
- class Info
6
- def initialize(arr)
7
- @info = arr.nil? ? [] : arr
8
- end
2
+ module Casks
3
+ # Class to keep brittle parsing of `brew cask info #{cask}` localized.
4
+ class Info
5
+ def initialize(arr)
6
+ @info = arr.nil? ? [] : arr
7
+ end
9
8
 
10
- def short_name
11
- @info[0]
12
- end
9
+ def short_name
10
+ @info[0]
11
+ end
13
12
 
14
- def url
15
- @info[1]
16
- end
13
+ def url
14
+ @info[1]
15
+ end
17
16
 
18
- def path
19
- @info[2]
20
- end
17
+ def path
18
+ @info[2]
19
+ end
21
20
 
22
- def cask_url
23
- @info[3]
24
- end
21
+ def cask_url
22
+ @info[3]
23
+ end
25
24
 
26
- def name
27
- @info[5]
28
- end
25
+ def name
26
+ @info[5]
27
+ end
29
28
 
30
- def app_name
31
- @info[7]
29
+ def app_name
30
+ @info[7]
31
+ end
32
32
  end
33
33
  end
34
34
  end
@@ -0,0 +1,54 @@
1
+ require 'versionomy'
2
+
3
+ module BrewCaskTools
4
+ module Casks
5
+ # Parent class for different types of Versions
6
+ class Version
7
+ DIR_BLACKLIST = ['.', '..', '.metadata'].freeze
8
+
9
+ def initialize(dir)
10
+ @dir = dir
11
+ end
12
+
13
+ def versions
14
+ @versions ||= latest? ? ['latest'] : all_versions.sort
15
+ end
16
+
17
+ def latest?
18
+ all_versions.select { |version| version.to_s == 'latest' }.length.positive?
19
+ end
20
+
21
+ def rm_old
22
+ old.each { |version| rm(version) }
23
+ end
24
+
25
+ def old
26
+ _, *previous = versions.reverse
27
+ previous
28
+ end
29
+
30
+ def self.parse_version(version)
31
+ Versionomy.parse(version)
32
+ rescue Versionomy::Errors::ParseError
33
+ version
34
+ end
35
+
36
+ private
37
+
38
+ def rm(version)
39
+ version_dir = File.join(@dir, version.to_s)
40
+ ::FileUtils.rm_rf(version_dir, secure: true, verbose: true)
41
+ end
42
+
43
+ def all_versions
44
+ Dir.entries(@dir)
45
+ .reject { |dir| DIR_BLACKLIST.include?(dir) }
46
+ .map do |version|
47
+ if File.directory?(File.join(@dir, version))
48
+ Version.parse_version(version)
49
+ end
50
+ end.compact
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,49 @@
1
+ require_relative './version'
2
+
3
+ module BrewCaskTools
4
+ module Casks
5
+ # Operations on a collection of Cask versions
6
+ class Versions
7
+ attr_reader :local, :meta
8
+
9
+ def initialize(dir, candidate)
10
+ @candidate = candidate
11
+ @local = Version.new(dir)
12
+ @meta = Version.new(File.join(dir, '.metadata'))
13
+ end
14
+
15
+ def installed
16
+ @local.versions
17
+ end
18
+
19
+ def metadata
20
+ @meta.versions
21
+ end
22
+
23
+ def candidate
24
+ Version.parse_version(@candidate)
25
+ end
26
+
27
+ def current
28
+ installed.last
29
+ end
30
+
31
+ def latest?
32
+ current.to_s == 'latest'
33
+ end
34
+
35
+ def old_installed
36
+ @local.old
37
+ end
38
+
39
+ def old_metadata
40
+ @meta.old
41
+ end
42
+
43
+ def rm_old
44
+ @local.rm_old
45
+ @meta.rm_old
46
+ end
47
+ end
48
+ end
49
+ end
data/lib/bct/caskroom.rb CHANGED
@@ -1,32 +1,30 @@
1
- require 'thor'
2
- require 'pry'
3
-
4
1
  require_relative './cask'
5
2
 
6
3
  module BrewCaskTools
7
4
  # Represents a list of Casks.
8
- class Caskroom < Thor::Shell::Basic
5
+ class Caskroom
9
6
  def initialize
10
7
  super
11
8
  end
12
9
 
10
+ # An array of installed casks
11
+ # @return [Array]
13
12
  def casks
14
13
  @casks ||= `brew cask ls`.split("\n")
15
14
  end
16
15
 
17
- def casklist
18
- @casklist ||= casks.map { |cask| yield cask }
19
- end
20
-
16
+ # @param [Proc]
21
17
  def enumerate
22
- casklist do |c|
23
- yield Cask.new(c)
18
+ casks.map do |cask|
19
+ yield Cask.new(cask)
24
20
  end
25
21
  end
26
22
 
23
+ # @param cask_name [String]
24
+ # @return [BrewCaskTools::Cask]
27
25
  def get(cask_name)
28
- c = casks.select { |e| e == cask_name }.first
29
- Cask.new(c)
26
+ cask = casks.select { |name| name == cask_name }
27
+ cask.empty? ? nil : Cask.new(cask.first)
30
28
  end
31
29
  end
32
30
  end
data/lib/bct/metadata.rb CHANGED
@@ -1,7 +1,5 @@
1
- require 'git-version-bump'
2
-
3
1
  # :nodoc:
4
2
  module BrewCaskTools
5
- VERSION = GVB.version
3
+ VERSION = `git describe --abbrev=0 --tags`.delete('v')
6
4
  DESCRIPTION = 'A tiny tool that provides some missing functionality in Homebrew Cask.'.freeze
7
5
  end
data/lib/bct/tasks.rb CHANGED
@@ -30,16 +30,16 @@ module BrewCaskTools
30
30
  Tasks::Outdated.new
31
31
  end
32
32
 
33
- desc 'upgrade CASK', 'Upgrade a specific cask.' \
33
+ desc 'upgrade CASKS', 'Upgrade a specific cask.' \
34
34
  ' If a cask name is omitted, this task will update all outdated casks.'
35
- def upgrade(cask_name = nil)
36
- Tasks::Upgrade.new(cask_name)
35
+ def upgrade(*casks)
36
+ Tasks::Upgrade.new(casks)
37
37
  end
38
38
 
39
- desc 'cleanup CASK', 'clean up old versions of a specific cask. If a ' \
39
+ desc 'cleanup CASKS', 'clean up old versions of a specific cask. If a ' \
40
40
  'cask name is omitted, this task will cleanup all outdated casks.'
41
- def cleanup(cask_name = nil)
42
- Tasks::Cleanup.new(cask_name)
41
+ def cleanup(*casks)
42
+ Tasks::Cleanup.new(casks)
43
43
  end
44
44
  end
45
45
  end
@@ -14,6 +14,21 @@ module BrewCaskTools
14
14
  def progressbar
15
15
  @progressbar ||= ProgressBar.create(title: ' Progress ')
16
16
  end
17
+
18
+ def handle(casks, adverb)
19
+ puts "#{adverb.capitalize} packages\n------------------"
20
+ yield casks
21
+ puts "\n"
22
+ end
23
+
24
+ def increment(cask)
25
+ progressbar.title = " #{cask.name.capitalize} "
26
+ progressbar.increment
27
+ end
28
+
29
+ def format(headers, output)
30
+ print_table(output.unshift(headers))
31
+ end
17
32
  end
18
33
  end
19
34
  end
@@ -1,55 +1,54 @@
1
1
  require 'thor'
2
- require 'pry'
3
2
 
4
3
  require_relative './caskroom'
5
4
 
6
5
  module BrewCaskTools
7
6
  module Tasks
8
- # Cleanup tasks
7
+ # Cleanup task
9
8
  class Cleanup < Caskroom
10
- def initialize(cask_name)
9
+ # @param optional casks [Array] array of cask names to cleanup
10
+ def initialize(casks)
11
11
  super()
12
12
 
13
- if cask_name.nil?
13
+ @cleaned = []
14
+
15
+ if casks.empty?
14
16
  progressbar.total = caskroom.casks.length
15
17
  progressbar.log "\nLooking for casks to cleanup..."
16
18
 
17
- return clean_all # Clean all casks
19
+ @cleaned = compile
20
+ else
21
+ @cleaned = casks.map { |c| caskroom.get(c) }
22
+ return say 'Invalid cask specified', :red if @cleaned.compact.empty?
18
23
  end
19
-
20
- cask = caskroom.get(cask_name)
21
- return say 'Invalid cask specified', :red if cask.nil?
22
-
23
- clean_one(cask)
24
- end
25
-
26
- def clean_one(cask)
27
- return say "#{cask.name.capitalize} does not have any outdated " \
28
- 'versions. No cleanup operations are necessary', :green unless cask.can_cleanup?
29
-
30
- cask.cleanup(&clean_block)
24
+ clean
31
25
  end
32
26
 
33
- def clean_all
34
- cleaned_casks = []
35
-
27
+ def compile
28
+ cleaned = []
36
29
  caskroom.enumerate do |cask|
37
- progressbar.title = " #{cask.name.capitalize} "
38
- progressbar.increment
30
+ increment(cask)
39
31
 
40
- cleaned_casks << cask if cask.can_cleanup?
32
+ cleaned << cask if cask.can_cleanup?
41
33
  end
34
+ cleaned
35
+ end
42
36
 
43
- return say "\nNo cleanup operations are necessary", :green if cleaned_casks.empty?
37
+ def clean
38
+ return say "\nNo cleanup operations are necessary", :green if @cleaned.empty?
44
39
 
45
- cleaned_casks.each { |c| c.cleanup(&clean_block) }
40
+ @cleaned.each do |cask|
41
+ cask.cleanup(&clean_block)
42
+ end
46
43
  end
47
44
 
48
45
  def clean_block
49
- proc do |c, versions|
50
- say "Cleaning up #{c.name}", :yellow
51
- dep_q = "#{c.name} has been deprecated. Ok to remove all versions?"
52
- if c.deprecated? && no?(dep_q, :red)
46
+ proc do |cask, versions|
47
+ name = cask.name
48
+ say "Cleaning up #{name}", :yellow
49
+ if cask.deprecated? &&
50
+ no?("#{name} has been deprecated. Ok to remove all versions?", :red)
51
+
53
52
  say 'No action taken.', :red
54
53
  next
55
54
  end
@@ -2,25 +2,23 @@ require_relative './caskroom'
2
2
 
3
3
  module BrewCaskTools
4
4
  module Tasks
5
- # Outdated cask tasks
5
+ # Outdated cask task
6
6
  class Outdated < Caskroom
7
7
  def initialize
8
8
  super
9
9
  progressbar.total = caskroom.casks.length
10
10
  progressbar.log "\nLooking for outdated casks..."
11
- outdated, deprecated = compile
11
+ @outdated, @deprecated = compile
12
12
 
13
- outdated(outdated)
14
- deprecated(deprecated)
13
+ outdated
14
+ deprecated
15
15
  end
16
16
 
17
17
  def compile
18
18
  outdated = []
19
19
  deprecated = []
20
-
21
20
  caskroom.enumerate do |cask|
22
- progressbar.title = " #{cask.name.capitalize} "
23
- progressbar.increment
21
+ increment(cask)
24
22
 
25
23
  outdated << cask if cask.outdated?
26
24
  deprecated << cask if cask.deprecated?
@@ -28,32 +26,26 @@ module BrewCaskTools
28
26
  [outdated, deprecated]
29
27
  end
30
28
 
31
- def outdated(casks)
32
- return say "\nThere are no outdated casks", :yellow if casks.empty?
33
- handle(casks, 'outdated') do |outdated_casks|
34
- outdated_casks.map! do |c|
35
- [c.name, c.installed_version, c.current_version]
36
- end
29
+ def outdated
30
+ return say "\nThere are no outdated casks", :yellow if @outdated.empty?
37
31
 
38
- headers = ['Package', 'Installed Version', 'New Version']
39
- output = outdated_casks.unshift(headers)
40
- print_table(output)
32
+ @outdated.map! do |cask|
33
+ [cask.name, cask.current, cask.candidate]
41
34
  end
42
- end
43
35
 
44
- def deprecated(casks)
45
- return if casks.empty?
46
- handle(casks, 'deprecated') do |dep_casks|
47
- dep_casks.map! { |c| [c.name] }
48
- output = dep_casks.unshift(['Package'])
49
- print_table(output)
36
+ handle(@outdated, 'outdated') do |outdated|
37
+ format(['Package', 'Installed Version', 'New Version'], outdated)
50
38
  end
51
39
  end
52
40
 
53
- def handle(casks, adverb)
54
- puts "#{adverb.capitalize} packages\n------------------"
55
- yield casks
56
- puts "\n"
41
+ def deprecated
42
+ return if @deprecated.empty?
43
+
44
+ @deprecated.map! { |cask| [cask.name] }
45
+
46
+ handle(@deprecated, 'deprecated') do |deprecated|
47
+ format(['Package'], deprecated)
48
+ end
57
49
  end
58
50
  end
59
51
  end
@@ -5,48 +5,50 @@ require_relative './cleanup'
5
5
 
6
6
  module BrewCaskTools
7
7
  module Tasks
8
- # Upgrade tasks
8
+ # Upgrade task
9
9
  class Upgrade < Caskroom
10
- def initialize(cask_name)
10
+ # @param optional casks [Array] array of cask names to upgrade
11
+ def initialize(casks)
11
12
  super()
12
13
 
13
- if cask_name.nil?
14
+ @upgrade = []
15
+
16
+ if casks.empty?
14
17
  progressbar.total = caskroom.casks.length
15
18
  progressbar.log "\nLooking for outdated casks..."
16
19
 
17
- return upgrade_all # Clean all casks
20
+ @upgrade = compile
21
+ else
22
+ @upgrade = casks.map { |c| caskroom.get(c) }
23
+ return say 'Invalid cask(s) specified', :red if @upgrade.compact.empty?
18
24
  end
19
25
 
20
- cask = caskroom.get(cask_name)
21
- return say 'Invalid cask specified', :red if cask.nil?
22
-
23
- upgrade_one(cask)
26
+ upgrade
24
27
  end
25
28
 
26
- def upgrade_all
27
- to_upgrade = []
28
-
29
+ # Get list of casks to upgrade
30
+ # @return [Array] an array of casks to upgrade
31
+ def compile
32
+ upgrade = []
29
33
  caskroom.enumerate do |cask|
30
- progressbar.title = " #{cask.name.capitalize} "
31
- progressbar.increment
34
+ increment(cask)
32
35
 
33
36
  next unless cask.outdated?
34
37
 
35
- to_upgrade << cask
38
+ upgrade << cask
36
39
  progressbar.log "#{cask.info.name}: " \
37
- "#{cask.installed_version} ==> #{cask.current_version}"
40
+ "#{cask.current} ==> #{cask.candidate}"
38
41
  end
39
-
40
- return say 'There are no casks to be upgraded', :green if to_upgrade.empty?
41
-
42
- to_upgrade.each(&:upgrade)
43
-
44
- Tasks::Cleanup.new(nil)
42
+ upgrade
45
43
  end
46
44
 
47
- def upgrade_one(cask)
48
- cask.upgrade
49
- Tasks::Cleanup.new(cask.name)
45
+ # Upgrade casks
46
+ def upgrade
47
+ return say 'There are no casks to be upgraded', :green if @upgrade.empty?
48
+ @upgrade.each(&:upgrade)
49
+
50
+ # Cleanup casks that we upgraded
51
+ Tasks::Cleanup.new(@upgrade.map(&:name))
50
52
  end
51
53
  end
52
54
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: brew-cask-tools
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.3
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dave Greene
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-09-03 00:00:00.000000000 Z
11
+ date: 2016-11-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -28,16 +28,16 @@ dependencies:
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: '10.0'
33
+ version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: '10.0'
40
+ version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: pry
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -66,6 +66,20 @@ dependencies:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
68
  version: '1.7'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rubocop
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '0.44'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '0.44'
69
83
  - !ruby/object:Gem::Dependency
70
84
  name: thor
71
85
  requirement: !ruby/object:Gem::Requirement
@@ -95,19 +109,19 @@ dependencies:
95
109
  - !ruby/object:Gem::Version
96
110
  version: '1.8'
97
111
  - !ruby/object:Gem::Dependency
98
- name: git-version-bump
112
+ name: versionomy
99
113
  requirement: !ruby/object:Gem::Requirement
100
114
  requirements:
101
115
  - - "~>"
102
116
  - !ruby/object:Gem::Version
103
- version: '0.15'
117
+ version: '0.5'
104
118
  type: :runtime
105
119
  prerelease: false
106
120
  version_requirements: !ruby/object:Gem::Requirement
107
121
  requirements:
108
122
  - - "~>"
109
123
  - !ruby/object:Gem::Version
110
- version: '0.15'
124
+ version: '0.5'
111
125
  description: A tiny tool that provides some missing functionality in Homebrew Cask.
112
126
  email:
113
127
  - davepgreene@gmail.com
@@ -122,6 +136,8 @@ files:
122
136
  - lib/bct.rb
123
137
  - lib/bct/cask.rb
124
138
  - lib/bct/cask/info.rb
139
+ - lib/bct/cask/version.rb
140
+ - lib/bct/cask/versions.rb
125
141
  - lib/bct/caskroom.rb
126
142
  - lib/bct/metadata.rb
127
143
  - lib/bct/tasks.rb
@@ -129,7 +145,6 @@ files:
129
145
  - lib/bct/tasks/cleanup.rb
130
146
  - lib/bct/tasks/outdated.rb
131
147
  - lib/bct/tasks/upgrade.rb
132
- - lib/bct/util.rb
133
148
  homepage: https://github.com/davepgreene/brew-cask-tools
134
149
  licenses:
135
150
  - MIT
@@ -142,7 +157,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
142
157
  requirements:
143
158
  - - ">="
144
159
  - !ruby/object:Gem::Version
145
- version: '0'
160
+ version: '2.1'
146
161
  required_rubygems_version: !ruby/object:Gem::Requirement
147
162
  requirements:
148
163
  - - ">="
data/lib/bct/util.rb DELETED
@@ -1,30 +0,0 @@
1
- require 'pathname'
2
-
3
- module BrewCaskTools
4
- ##
5
- # Shared helper methods
6
- ##
7
- module Util
8
- GEM_PATH = Pathname.new(__FILE__).join('../../..').expand_path
9
-
10
- class << self
11
- ##
12
- # Transform helpers
13
- ##
14
- def to_array(arg)
15
- arg.is_a?(Array) ? arg : [arg]
16
- end
17
-
18
- ##
19
- # Relative path from working directory
20
- ##
21
- def relative_path(*relative)
22
- Pathname.pwd.join(*relative.flatten.map(&:to_s)).expand_path
23
- end
24
-
25
- def source_path(*relative)
26
- GEM_PATH.join(*relative.flatten.map(&:to_s)).expand_path
27
- end
28
- end
29
- end
30
- end