getv 0.1.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: daa14a57206ce36f42d7373647539e9a3718422bade081044c4f6b38129fb23a
4
- data.tar.gz: a1bbbb5d1c6c5609611d12590760dad98cdb1f2e89a3d6ba92e05ba92d03d0eb
3
+ metadata.gz: 5a68d43a8a011bcf8f9dfe6da94fe08a3774dfaab5b0b00d2c8d879b9678487b
4
+ data.tar.gz: a58a0775503091b3721ae6098240575dad501100a587eb5a278d84a0ac6a5080
5
5
  SHA512:
6
- metadata.gz: a0329d396ff28c22ddaf272872298b80660d41ad44fe5504740721ae8f4797fcb009e30cda8c334e7f611589b34e82e5f050846865d9ba6a9b0c9c65e2d126ab
7
- data.tar.gz: 5463da5acef0fe03dd77dd54135ac393f34876c3108d957bd9016fafd2d903754ae725f34c1b41a50300c8c4ab3bd5752066560a59fa997bf6885ee3d25daaa4
6
+ metadata.gz: d80d95dff250b3a699327f747cd6cb59407f9ad42603731c239b0784f870f9622e01d50e3fe52c3eeab674575f8126a690837801e0ff73ce4e0bdf18953ea060
7
+ data.tar.gz: f517c35bbfaaab58456ce36da1629d66ef2390da980e60b98100d9f65f5c18d944eac678aa6c51993273d96656cbae934f8f0628a5006fed328a7d72ead81f58
data/.gitignore CHANGED
@@ -7,6 +7,8 @@
7
7
  /spec/reports/
8
8
  /tmp/
9
9
  /*.gem
10
+ /vendor
11
+ Gemfile.lock
10
12
 
11
13
  # rspec failure tracking
12
14
  .rspec_status
data/.rubocop.yml ADDED
@@ -0,0 +1,10 @@
1
+ ---
2
+ AllCops:
3
+ NewCops: enable
4
+
5
+ Metrics/BlockLength:
6
+ Exclude:
7
+ - 'Rakefile'
8
+ - '**/*.rake'
9
+ - 'test/**/*.rb'
10
+ - 'spec/**/*_spec.rb'
data/Gemfile CHANGED
@@ -1,13 +1,17 @@
1
- source "https://rubygems.org"
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
2
4
 
3
5
  # Specify your gem's dependencies in getv.gemspec
4
6
  gemspec
5
7
 
6
- gem "rake", "~> 12.0"
7
- gem "rspec", "~> 3.0"
8
- gem "nokogiri", "~> 1.13"
9
- gem "irb", "~> 1.4"
10
- gem "rdoc", "~> 6.4"
11
- gem "octokit", "~> 4.21"
12
- gem "semantic", "~> 1.6"
13
- gem "docker_registry2", "~> 1.10"
8
+ gem 'docker_registry2', '~> 1.10'
9
+ gem 'irb', '~> 1.4'
10
+ gem 'nokogiri', '~> 1.13'
11
+ gem 'octokit', '~> 4.21'
12
+ gem 'rake', '~> 12.0'
13
+ gem 'rdoc', '~> 6.4'
14
+ gem 'rspec', '~> 3.0'
15
+ gem 'semantic', '~> 1.6'
16
+ gem 'vcr', '~> 6.0'
17
+ gem 'webmock', '~> 3.0'
data/README.md CHANGED
@@ -21,13 +21,13 @@ Or install it yourself as:
21
21
  ## Usage
22
22
 
23
23
  ```
24
- irb(main):024:0> superset = Getv::Package.new('superset',{:type => 'docker', :owner => 'apache', :reject => '-'})
24
+ irb(main):024:0> superset = Getv::Package.new('superset', type: 'docker', owner: 'apache', reject: '-')
25
25
  =>
26
26
  #<Getv::Package:0x000055b6d2326f20
27
27
  ...
28
- irb(main):025:0> superset.get_versions
28
+ irb(main):025:0> superset.versions
29
29
  => ["1.0.0", "1.0.1", "1.1.0", "1.2.0", "1.3.0", "1.3.1", "1.3.2"]
30
- irb(main):026:0> superset.get_latest_version
30
+ irb(main):026:0> superset.latest_version
31
31
  => "1.3.2"
32
32
  irb(main):027:0> superset
33
33
  =>
data/bin/bundle CHANGED
@@ -60,16 +60,16 @@ m = Module.new do
60
60
  Regexp.last_match(1)
61
61
  end
62
62
 
63
- def bundler_version
64
- @bundler_version ||=
63
+ def bundler_requirement
64
+ @bundler_requirement ||=
65
65
  env_var_version || cli_arg_version ||
66
- lockfile_version
66
+ bundler_requirement_for(lockfile_version)
67
67
  end
68
68
 
69
- def bundler_requirement
70
- return "#{Gem::Requirement.default}.a" unless bundler_version
69
+ def bundler_requirement_for(version)
70
+ return "#{Gem::Requirement.default}.a" unless version
71
71
 
72
- bundler_gem_version = Gem::Version.new(bundler_version)
72
+ bundler_gem_version = Gem::Version.new(version)
73
73
 
74
74
  requirement = bundler_gem_version.approximate_recommendation
75
75
 
data/getv.gemspec CHANGED
@@ -1,31 +1,33 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require_relative 'lib/getv/version'
2
4
 
3
5
  Gem::Specification.new do |spec|
4
- spec.name = "getv"
6
+ spec.name = 'getv'
5
7
  spec.version = Getv::VERSION
6
- spec.authors = ["harbottle"]
7
- spec.email = ["harbottle@room3d3.com"]
8
+ spec.authors = ['harbottle']
9
+ spec.email = ['harbottle@room3d3.com']
8
10
 
9
- spec.summary = "Pull package version numbers from the web in various ways."
10
- spec.description = "Pull package version numbers from the web in various ways."
11
- spec.homepage = "https://github.com/liger1978/getv"
12
- spec.license = "MIT"
11
+ spec.summary = 'Pull package version numbers from the web in various ways.'
12
+ spec.description = 'Pull package version numbers from the web in various ways.'
13
+ spec.homepage = 'https://github.com/liger1978/getv'
14
+ spec.license = 'MIT'
13
15
 
14
- spec.metadata["homepage_uri"] = spec.homepage
15
- spec.metadata["source_code_uri"] = "https://github.com/liger1978/getv"
16
- spec.metadata["changelog_uri"] = "https://github.com/liger1978/getv"
16
+ spec.metadata['homepage_uri'] = spec.homepage
17
+ spec.metadata['source_code_uri'] = 'https://github.com/liger1978/getv'
18
+ spec.metadata['changelog_uri'] = 'https://github.com/liger1978/getv'
17
19
 
18
20
  # Specify which files should be added to the gem when it is released.
19
21
  # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
20
- spec.files = Dir.chdir(File.expand_path('..', __FILE__)) do
22
+ spec.files = Dir.chdir(File.expand_path(__dir__)) do
21
23
  `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
22
24
  end
23
- spec.bindir = "exe"
25
+ spec.bindir = 'exe'
24
26
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
25
- spec.require_paths = ["lib"]
27
+ spec.require_paths = ['lib']
26
28
 
27
- spec.add_dependency("nokogiri", ">= 1.0.0", "< 2.0.0")
28
- spec.add_dependency("octokit", ">= 3.0.0", "< 5.0.0")
29
- spec.add_dependency("semantic", ">= 1.0.0", "< 2.0.0")
30
- spec.add_dependency("docker_registry2", ">= 1.0.0", "< 2.0.0")
29
+ spec.add_dependency('docker_registry2', '>= 1.0.0', '< 2.0.0')
30
+ spec.add_dependency('nokogiri', '>= 1.0.0', '< 2.0.0')
31
+ spec.add_dependency('octokit', '>= 3.0.0', '< 5.0.0')
32
+ spec.add_dependency('semantic', '>= 1.0.0', '< 2.0.0')
31
33
  end
data/lib/getv/package.rb CHANGED
@@ -1,163 +1,164 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Getv
2
- class Package
4
+ # package class
5
+ class Package # rubocop:disable Metrics/ClassLength
3
6
  attr_accessor :name, :opts
4
7
 
5
- def initialize(name, opts={})
8
+ def initialize(name, opts = {}) # rubocop:disable Metrics/MethodLength,Metrics/CyclomaticComplexity,Metrics/AbcSize
6
9
  @name = name
7
- if /rubygem-.*/.match?(name)
8
- opts = {'type' => 'gem'}.merge(opts)
9
- elsif /nodejs-.*/.match?(name)
10
- opts = {'type' => 'npm'}.merge(opts)
11
- elsif /python.*-.*/.match?(name)
12
- opts = {'type' => 'pypi'}.merge(opts)
10
+ case name
11
+ when /rubygem-.*/
12
+ opts = { 'type' => 'gem' }.merge(opts)
13
+ when /nodejs-.*/
14
+ opts = { 'type' => 'npm' }.merge(opts)
15
+ when /python.*-.*/
16
+ opts = { 'type' => 'pypi' }.merge(opts)
17
+ end
18
+ if opts[:type] == 'github_commit'
19
+ opts = {
20
+ branch: 'master',
21
+ select_search: '^((\d{8})(\d{6}),(([a-z\d]{7})(.*)))$',
22
+ semantic_only: false
23
+ }.merge(opts)
13
24
  end
14
25
  opts = {
15
- :type => 'github_release',
16
- :select => {
17
- :search => '^\s*v?((0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?)\s*$',
18
- :replace => '\1'
19
- },
20
- :reject => nil,
21
- :semantic_only => true,
22
- :semantic_select => ['*'],
23
- :versions => nil,
24
- :latest_version => nil,
26
+ type: 'github_release',
27
+ select_search: '^\s*v?((0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?)\s*$', # rubocop:disable Layout/LineLength
28
+ select_replace: '\1',
29
+ reject: nil,
30
+ semantic_only: true,
31
+ semantic_select: ['*'],
32
+ versions: nil,
33
+ latest_version: nil
25
34
  }.merge(opts)
26
35
  case opts[:type]
27
36
  when 'docker'
28
- opts = {:owner => 'library', :repo => name, :url=> 'https://registry.hub.docker.com'}.merge(opts)
37
+ opts = { owner: 'library', repo: name, url: 'https://registry.hub.docker.com' }.merge(opts)
29
38
  when 'gem'
30
- opts = {:gem => name[/rubygem-(.*)/, 1] || name}.merge(opts)
39
+ opts = { gem: name[/rubygem-(.*)/, 1] || name }.merge(opts)
31
40
  when /github.*/
32
- opts = {:owner => name, :repo => name,}.merge(opts)
41
+ opts = { owner: name, repo: name }.merge(opts)
33
42
  when 'index'
34
- opts = {:link => 'content'}.merge(opts)
43
+ opts = { link: 'content' }.merge(opts)
35
44
  when 'npm'
36
- opts = {:npm => name[/nodejs-(.*)/, 1] || name}.merge(opts)
45
+ opts = { npm: name[/nodejs-(.*)/, 1] || name }.merge(opts)
37
46
  when 'pypi'
38
- opts = {:npm => name[/python.*-(.*)/, 1] || name}.merge(opts)
47
+ opts = { npm: name[/python.*-(.*)/, 1] || name }.merge(opts)
39
48
  end
40
49
  @opts = opts
41
50
  end
42
-
43
- def get_latest_version
44
- if opts[:latest_version] == nil
45
- self.update_versions
46
- end
51
+
52
+ def latest_version
53
+ update_versions if opts[:latest_version].nil?
47
54
  opts[:latest_version]
48
55
  end
49
56
 
50
- def get_versions
51
- if opts[:version] == nil
52
- self.update_versions
53
- end
57
+ def versions
58
+ update_versions if opts[:versions].nil?
54
59
  opts[:versions]
55
60
  end
56
61
 
57
- def update_versions
58
- case opts[:type]
59
- when 'docker'
60
- versions = get_versions_using_docker
61
- when 'gem'
62
- versions = get_versions_using_gem
63
- when 'get'
64
- versions = get_versions_using_get
65
- when 'github_release'
66
- versions = get_versions_using_github('release')
67
- when 'github_tag'
68
- versions = get_versions_using_github('tag')
69
- when 'index'
70
- versions = get_versions_using_index
71
- when 'npm'
72
- versions = get_versions_using_npm
73
- when 'pypi'
74
- versions = get_versions_using_pypi
75
- end
76
- select_pattern = Regexp.new(opts[:select][:search])
77
- versions.select! {|v| v =~ select_pattern}
78
- versions.map! {|v| v.sub(select_pattern, opts[:select][:replace])}
79
- unless opts[:reject].nil?
80
- versions.reject! {|v| v =~ Regexp.new(opts[:reject])}
81
- end
62
+ def update_versions # rubocop:disable Metrics/PerceivedComplexity,Metrics/MethodLength,Metrics/CyclomaticComplexity,Metrics/AbcSize
63
+ method = opts[:type].split('_')
64
+ method[0] = "versions_using_#{method[0]}"
65
+
66
+ versions = send(*method)
67
+ versions.sort! if opts[:type] == 'github_commit'
68
+ select_pattern = Regexp.new(opts[:select_search])
69
+ versions.select! { |v| v =~ select_pattern }
70
+ versions.map! { |v| v.sub(select_pattern, opts[:select_replace]) }
71
+ versions.reject! { |v| v =~ Regexp.new(opts[:reject]) } unless opts[:reject].nil?
82
72
  if opts[:semantic_only]
83
73
  require 'semantic'
84
74
  require 'semantic/core_ext'
85
- versions.select! {|v| v.is_version?}
75
+ versions.select!(&:is_version?)
86
76
  opts[:semantic_select].each do |comparator|
87
- versions.select! {|v| Semantic::Version.new(v).satisfies?(comparator)}
77
+ versions.select! { |v| Semantic::Version.new(v).satisfies?(comparator) }
88
78
  end
89
- versions.sort_by! {|v| Semantic::Version.new(v)}
79
+ versions.sort_by! { |v| Semantic::Version.new(v) }
90
80
  else
91
- versions.sort!
81
+ versions.sort! unless opts[:type] == 'github_commit'
92
82
  end
93
83
  opts[:versions] = versions
94
- unless opts[:versions].empty?
95
- opts[:latest_version] = opts[:versions][-1]
96
- end
84
+ opts[:latest_version] = opts[:versions][-1] unless opts[:versions].empty?
97
85
  end
98
86
 
99
87
  private
100
88
 
101
- def get_versions_using_docker
89
+ def versions_using_docker
102
90
  require 'docker_registry2'
103
91
  docker = DockerRegistry2.connect(opts[:url])
104
- return docker.tags("#{opts[:owner]}/#{opts[:repo]}")['tags']
92
+ docker.tags("#{opts[:owner]}/#{opts[:repo]}")['tags']
105
93
  end
106
94
 
107
- def get_versions_using_gem
95
+ def versions_using_gem
108
96
  require 'json'
109
97
  require 'open-uri'
110
98
  require 'net/http'
111
- return JSON.parse(Net::HTTP.get(URI("https://rubygems.org/api/v1/versions/#{opts[:gem]}.json"))).map {|v| v['number']}
99
+ JSON.parse(Net::HTTP.get(URI("https://rubygems.org/api/v1/versions/#{opts[:gem]}.json"))).map do |v|
100
+ v['number']
101
+ end
112
102
  end
113
103
 
114
- def get_versions_using_get
104
+ def versions_using_get
115
105
  require 'open-uri'
116
106
  require 'net/http'
117
- return Net::HTTP.get(URI(opts[:url])).split("\n")
107
+ Net::HTTP.get(URI(opts[:url])).split("\n")
118
108
  end
119
109
 
120
- def get_versions_using_github(method)
110
+ def github
121
111
  require 'octokit'
122
112
  if ENV['GITHUB_TOKEN']
123
- github = Octokit::Client.new(:access_token => ENV['GITHUB_TOKEN'])
113
+ github = Octokit::Client.new(access_token: ENV['GITHUB_TOKEN'])
124
114
  user = github.user
125
115
  user.login
126
116
  else
127
- github = Octokit::Client.new()
117
+ github = Octokit::Client.new
128
118
  end
129
- if method == 'release'
130
- return github.releases("#{opts[:owner]}/#{opts[:repo]}").map{|r| r.tag_name}
119
+ github.auto_paginate = true
120
+ github
121
+ end
122
+
123
+ def versions_using_github(method) # rubocop:disable Metrics/AbcSize
124
+ case method
125
+ when 'release'
126
+ github.releases("#{opts[:owner]}/#{opts[:repo]}").map(&:tag_name)
127
+ when 'commit'
128
+ github.commits("#{opts[:owner]}/#{opts[:repo]}", opts[:branch]).map do |c|
129
+ "#{DateTime.parse(c[:commit][:author][:date].to_s).strftime('%Y%m%d%H%M%S')},#{c[:sha]}"
130
+ end
131
131
  else
132
- return github.tags("#{opts[:owner]}/#{opts[:repo]}").map{|t| t[:name]}
132
+ github.tags("#{opts[:owner]}/#{opts[:repo]}").map { |t| t[:name] }
133
133
  end
134
134
  end
135
135
 
136
- def get_versions_using_index
136
+ def versions_using_index
137
137
  require 'open-uri'
138
138
  require 'net/http'
139
139
  require 'nokogiri'
140
- if opts[:link] == 'value'
141
- versions = Nokogiri::HTML(URI.open(opts[:url])).css('a').map{|a| a.values[0]}
142
- else
143
- versions = Nokogiri::HTML(URI.open(opts[:url])).css('a').map{|a| a.public_send(opts[:link])}
140
+
141
+ Nokogiri::HTML(URI.open(opts[:url])).css('a').map do |a| # rubocop:disable Security/Open
142
+ if opts[:link] == 'value'
143
+ a.values[0]
144
+ else
145
+ a.public_send(opts[:link])
146
+ end
144
147
  end
145
- return versions
146
148
  end
147
149
 
148
- def get_versions_using_npm
150
+ def versions_using_npm
149
151
  require 'json'
150
152
  require 'open-uri'
151
153
  require 'net/http'
152
- return JSON.parse(Net::HTTP.get(URI("https://registry.npmjs.org/#{opts[:npm]}")))['versions'].keys
154
+ JSON.parse(Net::HTTP.get(URI("https://registry.npmjs.org/#{opts[:npm]}")))['versions'].keys
153
155
  end
154
156
 
155
- def get_versions_using_pypi
157
+ def versions_using_pypi
156
158
  require 'json'
157
159
  require 'open-uri'
158
160
  require 'net/http'
159
- return JSON.parse(Net::HTTP.get(URI("https://pypi.org/pypi/#{opts[:pypi]}/json")))['releases'].keys
161
+ JSON.parse(Net::HTTP.get(URI("https://pypi.org/pypi/#{opts[:pypi]}/json")))['releases'].keys
160
162
  end
161
-
162
163
  end
163
164
  end
data/lib/getv/version.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Getv
2
- VERSION = "0.1.0"
4
+ VERSION = '1.0.0'
3
5
  end
data/lib/getv.rb CHANGED
@@ -1,5 +1,7 @@
1
- require "getv/version"
2
- require "getv/package"
1
+ # frozen_string_literal: true
2
+
3
+ require 'getv/version'
4
+ require 'getv/package'
3
5
 
4
6
  module Getv
5
7
  class Error < StandardError; end
metadata CHANGED
@@ -1,17 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: getv
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - harbottle
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-01-13 00:00:00.000000000 Z
11
+ date: 2022-01-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: nokogiri
14
+ name: docker_registry2
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - ">="
@@ -31,47 +31,47 @@ dependencies:
31
31
  - !ruby/object:Gem::Version
32
32
  version: 2.0.0
33
33
  - !ruby/object:Gem::Dependency
34
- name: octokit
34
+ name: nokogiri
35
35
  requirement: !ruby/object:Gem::Requirement
36
36
  requirements:
37
37
  - - ">="
38
38
  - !ruby/object:Gem::Version
39
- version: 3.0.0
39
+ version: 1.0.0
40
40
  - - "<"
41
41
  - !ruby/object:Gem::Version
42
- version: 5.0.0
42
+ version: 2.0.0
43
43
  type: :runtime
44
44
  prerelease: false
45
45
  version_requirements: !ruby/object:Gem::Requirement
46
46
  requirements:
47
47
  - - ">="
48
48
  - !ruby/object:Gem::Version
49
- version: 3.0.0
49
+ version: 1.0.0
50
50
  - - "<"
51
51
  - !ruby/object:Gem::Version
52
- version: 5.0.0
52
+ version: 2.0.0
53
53
  - !ruby/object:Gem::Dependency
54
- name: semantic
54
+ name: octokit
55
55
  requirement: !ruby/object:Gem::Requirement
56
56
  requirements:
57
57
  - - ">="
58
58
  - !ruby/object:Gem::Version
59
- version: 1.0.0
59
+ version: 3.0.0
60
60
  - - "<"
61
61
  - !ruby/object:Gem::Version
62
- version: 2.0.0
62
+ version: 5.0.0
63
63
  type: :runtime
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
67
  - - ">="
68
68
  - !ruby/object:Gem::Version
69
- version: 1.0.0
69
+ version: 3.0.0
70
70
  - - "<"
71
71
  - !ruby/object:Gem::Version
72
- version: 2.0.0
72
+ version: 5.0.0
73
73
  - !ruby/object:Gem::Dependency
74
- name: docker_registry2
74
+ name: semantic
75
75
  requirement: !ruby/object:Gem::Requirement
76
76
  requirements:
77
77
  - - ">="
@@ -100,9 +100,9 @@ files:
100
100
  - ".bundle/config"
101
101
  - ".gitignore"
102
102
  - ".rspec"
103
+ - ".rubocop.yml"
103
104
  - ".travis.yml"
104
105
  - Gemfile
105
- - Gemfile.lock
106
106
  - LICENSE.txt
107
107
  - README.md
108
108
  - Rakefile
@@ -145,7 +145,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
145
145
  - !ruby/object:Gem::Version
146
146
  version: '0'
147
147
  requirements: []
148
- rubygems_version: 3.0.3
148
+ rubygems_version: 3.2.22
149
149
  signing_key:
150
150
  specification_version: 4
151
151
  summary: Pull package version numbers from the web in various ways.
data/Gemfile.lock DELETED
@@ -1,113 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- getv (0.1.0)
5
- docker_registry2 (>= 1.0.0, < 2.0.0)
6
- nokogiri (>= 1.0.0, < 2.0.0)
7
- octokit (>= 3.0.0, < 5.0.0)
8
- semantic (>= 1.0.0, < 2.0.0)
9
-
10
- GEM
11
- remote: https://rubygems.org/
12
- specs:
13
- addressable (2.8.0)
14
- public_suffix (>= 2.0.2, < 5.0)
15
- diff-lcs (1.5.0)
16
- docker_registry2 (1.10.0)
17
- rest-client (>= 1.8.0)
18
- domain_name (0.5.20190701)
19
- unf (>= 0.0.5, < 1.0.0)
20
- faraday (1.9.3)
21
- faraday-em_http (~> 1.0)
22
- faraday-em_synchrony (~> 1.0)
23
- faraday-excon (~> 1.1)
24
- faraday-httpclient (~> 1.0)
25
- faraday-multipart (~> 1.0)
26
- faraday-net_http (~> 1.0)
27
- faraday-net_http_persistent (~> 1.0)
28
- faraday-patron (~> 1.0)
29
- faraday-rack (~> 1.0)
30
- faraday-retry (~> 1.0)
31
- ruby2_keywords (>= 0.0.4)
32
- faraday-em_http (1.0.0)
33
- faraday-em_synchrony (1.0.0)
34
- faraday-excon (1.1.0)
35
- faraday-httpclient (1.0.1)
36
- faraday-multipart (1.0.3)
37
- multipart-post (>= 1.2, < 3)
38
- faraday-net_http (1.0.1)
39
- faraday-net_http_persistent (1.2.0)
40
- faraday-patron (1.0.0)
41
- faraday-rack (1.0.0)
42
- faraday-retry (1.0.3)
43
- http-accept (1.7.0)
44
- http-cookie (1.0.4)
45
- domain_name (~> 0.5)
46
- io-console (0.5.11)
47
- irb (1.4.1)
48
- reline (>= 0.3.0)
49
- mime-types (3.4.1)
50
- mime-types-data (~> 3.2015)
51
- mime-types-data (3.2022.0105)
52
- mini_portile2 (2.7.1)
53
- multipart-post (2.1.1)
54
- netrc (0.11.0)
55
- nokogiri (1.13.0)
56
- mini_portile2 (~> 2.7.0)
57
- racc (~> 1.4)
58
- octokit (4.21.0)
59
- faraday (>= 0.9)
60
- sawyer (~> 0.8.0, >= 0.5.3)
61
- psych (4.0.3)
62
- stringio
63
- public_suffix (4.0.6)
64
- racc (1.6.0)
65
- rake (12.3.3)
66
- rdoc (6.4.0)
67
- psych (>= 4.0.0)
68
- reline (0.3.1)
69
- io-console (~> 0.5)
70
- rest-client (2.1.0)
71
- http-accept (>= 1.7.0, < 2.0)
72
- http-cookie (>= 1.0.2, < 2.0)
73
- mime-types (>= 1.16, < 4.0)
74
- netrc (~> 0.8)
75
- rspec (3.10.0)
76
- rspec-core (~> 3.10.0)
77
- rspec-expectations (~> 3.10.0)
78
- rspec-mocks (~> 3.10.0)
79
- rspec-core (3.10.1)
80
- rspec-support (~> 3.10.0)
81
- rspec-expectations (3.10.1)
82
- diff-lcs (>= 1.2.0, < 2.0)
83
- rspec-support (~> 3.10.0)
84
- rspec-mocks (3.10.2)
85
- diff-lcs (>= 1.2.0, < 2.0)
86
- rspec-support (~> 3.10.0)
87
- rspec-support (3.10.3)
88
- ruby2_keywords (0.0.5)
89
- sawyer (0.8.2)
90
- addressable (>= 2.3.5)
91
- faraday (> 0.8, < 2.0)
92
- semantic (1.6.1)
93
- stringio (3.0.1)
94
- unf (0.1.4)
95
- unf_ext
96
- unf_ext (0.0.8)
97
-
98
- PLATFORMS
99
- ruby
100
-
101
- DEPENDENCIES
102
- docker_registry2 (~> 1.10)
103
- getv!
104
- irb (~> 1.4)
105
- nokogiri (~> 1.13)
106
- octokit (~> 4.21)
107
- rake (~> 12.0)
108
- rdoc (~> 6.4)
109
- rspec (~> 3.0)
110
- semantic (~> 1.6)
111
-
112
- BUNDLED WITH
113
- 2.1.4