gems-license-finder 0.0.8 → 0.0.11
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/Gemfile.lock +72 -46
- data/README.md +52 -1
- data/bin/gems-license-finder +6 -1
- data/lib/gems-license-finder/version.rb +1 -1
- data/lib/gems-license-finder.rb +34 -8
- metadata +68 -54
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: bc20743bac6f1311273501d69701f197bd2c144d267ed21271c4bad421c6920a
|
4
|
+
data.tar.gz: 7a26d48a3954b1e8ce2a3e5671353d0652150cc657dc47ca77963f288115faf8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: da3ee54712e560cd04b57b8699b2b4e72cf824230a5683f3c6509452ae809ca6cbd5b36aa9bf5296132cc87a29cac0458b84a8218b11618d2ccaa9a68e376258
|
7
|
+
data.tar.gz: fd132288f005d7c5ff528a4dd98abe8e243b4e53a28aa119d9204a480ff30c44149b1ba7e2dabcc0d0b1dc0bca600233a247ba7e244d69416549ce320573f9b0
|
data/Gemfile.lock
CHANGED
@@ -1,64 +1,90 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
gems-license-finder (0.0.
|
5
|
-
bluecloth
|
6
|
-
faraday (
|
7
|
-
github-markup
|
8
|
-
github_api
|
9
|
-
kramdown
|
10
|
-
maruku
|
11
|
-
posix-spawn
|
12
|
-
|
13
|
-
|
4
|
+
gems-license-finder (0.0.10)
|
5
|
+
bluecloth (~> 2.2.0)
|
6
|
+
faraday (~> 1)
|
7
|
+
github-markup (~> 3.0.5)
|
8
|
+
github_api (~> 0.19.0)
|
9
|
+
kramdown (~> 2.3.0)
|
10
|
+
maruku (~> 0.7.3)
|
11
|
+
posix-spawn (~> 0.3.15)
|
12
|
+
rack (~> 2.2.4)
|
13
|
+
rdiscount (~> 2.2.0)
|
14
|
+
redcarpet (~> 3.5.1)
|
14
15
|
|
15
16
|
GEM
|
16
17
|
remote: http://rubygems.org/
|
17
18
|
specs:
|
18
|
-
addressable (2.
|
19
|
+
addressable (2.8.0)
|
20
|
+
public_suffix (>= 2.0.2, < 5.0)
|
19
21
|
bluecloth (2.2.0)
|
20
|
-
descendants_tracker (0.0.
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
faraday (~>
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
22
|
+
descendants_tracker (0.0.4)
|
23
|
+
thread_safe (~> 0.3, >= 0.3.1)
|
24
|
+
faraday (1.10.0)
|
25
|
+
faraday-em_http (~> 1.0)
|
26
|
+
faraday-em_synchrony (~> 1.0)
|
27
|
+
faraday-excon (~> 1.1)
|
28
|
+
faraday-httpclient (~> 1.0)
|
29
|
+
faraday-multipart (~> 1.0)
|
30
|
+
faraday-net_http (~> 1.0)
|
31
|
+
faraday-net_http_persistent (~> 1.0)
|
32
|
+
faraday-patron (~> 1.0)
|
33
|
+
faraday-rack (~> 1.0)
|
34
|
+
faraday-retry (~> 1.0)
|
35
|
+
ruby2_keywords (>= 0.0.4)
|
36
|
+
faraday-em_http (1.0.0)
|
37
|
+
faraday-em_synchrony (1.0.0)
|
38
|
+
faraday-excon (1.1.0)
|
39
|
+
faraday-httpclient (1.0.1)
|
40
|
+
faraday-multipart (1.0.4)
|
41
|
+
multipart-post (~> 2)
|
42
|
+
faraday-net_http (1.0.1)
|
43
|
+
faraday-net_http_persistent (1.2.0)
|
44
|
+
faraday-patron (1.0.0)
|
45
|
+
faraday-rack (1.0.0)
|
46
|
+
faraday-retry (1.0.3)
|
47
|
+
github-markup (3.0.5)
|
48
|
+
github_api (0.19.0)
|
49
|
+
addressable (~> 2.4)
|
50
|
+
descendants_tracker (~> 0.0.4)
|
51
|
+
faraday (>= 0.8, < 2)
|
52
|
+
hashie (~> 3.5, >= 3.5.2)
|
53
|
+
oauth2 (~> 1.0)
|
54
|
+
hashie (3.6.0)
|
55
|
+
jwt (2.4.1)
|
56
|
+
kramdown (2.3.2)
|
57
|
+
rexml
|
58
|
+
maruku (0.7.3)
|
37
59
|
metaclass (0.0.4)
|
38
|
-
|
39
|
-
|
40
|
-
mocha (1.0.0)
|
60
|
+
minitest (5.11.3)
|
61
|
+
mocha (1.6.0)
|
41
62
|
metaclass (~> 0.0.1)
|
42
|
-
multi_json (1.
|
43
|
-
multi_xml (0.
|
44
|
-
multipart-post (
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
faraday (>= 0.8, < 0.10)
|
49
|
-
jwt (~> 0.1.8)
|
63
|
+
multi_json (1.15.0)
|
64
|
+
multi_xml (0.6.0)
|
65
|
+
multipart-post (2.2.3)
|
66
|
+
oauth2 (1.4.10)
|
67
|
+
faraday (>= 0.17.3, < 3.0)
|
68
|
+
jwt (>= 1.0, < 3.0)
|
50
69
|
multi_json (~> 1.3)
|
51
70
|
multi_xml (~> 0.5)
|
52
|
-
rack (
|
53
|
-
posix-spawn (0.3.
|
54
|
-
|
55
|
-
|
56
|
-
|
71
|
+
rack (>= 1.2, < 3)
|
72
|
+
posix-spawn (0.3.15)
|
73
|
+
public_suffix (4.0.7)
|
74
|
+
rack (2.2.4)
|
75
|
+
rdiscount (2.2.0.2)
|
76
|
+
redcarpet (3.5.1)
|
77
|
+
rexml (3.2.5)
|
78
|
+
ruby2_keywords (0.0.5)
|
79
|
+
thread_safe (0.3.6)
|
57
80
|
|
58
81
|
PLATFORMS
|
59
82
|
ruby
|
60
83
|
|
61
84
|
DEPENDENCIES
|
62
85
|
gems-license-finder!
|
63
|
-
minitest
|
64
|
-
mocha
|
86
|
+
minitest (~> 5.11.3)
|
87
|
+
mocha (~> 1.6.0)
|
88
|
+
|
89
|
+
BUNDLED WITH
|
90
|
+
1.17.3
|
data/README.md
CHANGED
@@ -18,10 +18,11 @@ or add this to your `Gemfile` and bundle
|
|
18
18
|
via command line
|
19
19
|
```
|
20
20
|
$ gems-license-finder --help
|
21
|
-
Usage: gems-license-finder gem-name [options]
|
21
|
+
Usage: gems-license-finder [gem-name | Gemfile.lock] [options]
|
22
22
|
|
23
23
|
-o, --output FORMAT output format [json, yaml]
|
24
24
|
-t, --token TOKEN github token string ( or by GITHUB_TOKEN environment variable )
|
25
|
+
-p, --parallel X number of threads to use
|
25
26
|
-v, --version Print version and exit
|
26
27
|
|
27
28
|
For more information about how to generate the github token please look at:
|
@@ -43,6 +44,56 @@ $ gems-license-finder bundler
|
|
43
44
|
"license": "https://github.com/bundler/bundler//blob/master/LICENSE.md",
|
44
45
|
"github_url": "https://github.com/bundler/bundler/"
|
45
46
|
}
|
47
|
+
```
|
48
|
+
|
49
|
+
finding licenses for gems listed in Gemfile.lock
|
50
|
+
```
|
51
|
+
$ cat /your/project/path/Gemfile.lock
|
52
|
+
GEM
|
53
|
+
remote: https://rubygems.org/
|
54
|
+
specs:
|
55
|
+
eventmachine (1.2.7)
|
56
|
+
zscheduler (0.0.8)
|
57
|
+
eventmachine
|
58
|
+
|
59
|
+
PLATFORMS
|
60
|
+
ruby
|
61
|
+
|
62
|
+
DEPENDENCIES
|
63
|
+
zscheduler!
|
64
|
+
|
65
|
+
BUNDLED WITH
|
66
|
+
1.17.3
|
67
|
+
|
68
|
+
$ gems-license-finder /your/project/path/Gemfile.lock
|
69
|
+
|
70
|
+
{
|
71
|
+
"eventmachine": {
|
72
|
+
"homepage": "http://rubyeventmachine.com",
|
73
|
+
"source_code": "https://github.com/eventmachine/eventmachine",
|
74
|
+
"documentation": "https://www.rubydoc.info/gems/eventmachine/1.2.7",
|
75
|
+
"bug_tracker": "https://github.com/eventmachine/eventmachine/issues",
|
76
|
+
"download": "/downloads/eventmachine-1.2.7.gem",
|
77
|
+
"reverse_dependencies": "/gems/eventmachine/reverse_dependencies",
|
78
|
+
"license_type": "Ruby",
|
79
|
+
"license_url": "https://www.ruby-lang.org/en/about/license.txt",
|
80
|
+
"description": "EventMachine implements a fast, single-threaded engine for arbitrary networkcommunications. It's extremely easy to use in Ruby. EventMachine wraps allinteractions with IP sockets, allowing programs to concentrate on theimplementation of network protocols. It can be used to create both networkservers and clients. To create a server or client, a Ruby program only needsto specify the IP address and port, and provide a Module that implements thecommunications protocol. Implementations of several standard network protocolsare provided with the package, primarily to serve as examples. The real goalof EventMachine is to enable programs to easily interface with other programsusing TCP/IP, especially if custom protocols are required.",
|
81
|
+
"license": "https://github.com/eventmachine/eventmachine/blob/master/LICENSE",
|
82
|
+
"github_url": "https://github.com/eventmachine/eventmachine"
|
83
|
+
},
|
84
|
+
"zscheduler": {
|
85
|
+
"homepage": "http://github.com/eranb/zscheduler",
|
86
|
+
"source_code": "https://github.com/eranb/zscheduler",
|
87
|
+
"documentation": "https://www.rubydoc.info/gems/zscheduler/0.0.8",
|
88
|
+
"download": "/downloads/zscheduler-0.0.8.gem",
|
89
|
+
"reverse_dependencies": "/gems/zscheduler/reverse_dependencies",
|
90
|
+
"license_type": "LGPL",
|
91
|
+
"license_url": "http://choosealicense.com/licenses/lgpl-v2.1/",
|
92
|
+
"description": "minimalistic scheduler on top of event-machine",
|
93
|
+
"license": "https://github.com/eranb/zscheduler/blob/master/LICENSE",
|
94
|
+
"github_url": "https://github.com/eranb/zscheduler"
|
95
|
+
}
|
96
|
+
}
|
46
97
|
|
47
98
|
```
|
48
99
|
|
data/bin/gems-license-finder
CHANGED
@@ -8,7 +8,8 @@ require 'yaml'
|
|
8
8
|
require 'json'
|
9
9
|
require 'optparse'
|
10
10
|
|
11
|
-
options = {
|
11
|
+
options = {output: ->(h) { JSON.pretty_generate h }}
|
12
|
+
|
12
13
|
options[:oauth_token] = ENV["GITHUB_TOKEN"] if ENV["GITHUB_TOKEN"]
|
13
14
|
|
14
15
|
OptionParser.new do |opts|
|
@@ -23,6 +24,10 @@ OptionParser.new do |opts|
|
|
23
24
|
options[:oauth_token] = v
|
24
25
|
end
|
25
26
|
|
27
|
+
opts.on("-p", "--parallel X", "number of threads to use") do |v|
|
28
|
+
options[:parallel] = v.to_i.zero? ? 1 : v.to_i
|
29
|
+
end
|
30
|
+
|
26
31
|
opts.on("-v", "--version","print current version and exit") do
|
27
32
|
puts GemsLicenseFinder.version
|
28
33
|
exit
|
data/lib/gems-license-finder.rb
CHANGED
@@ -3,6 +3,7 @@
|
|
3
3
|
require 'github_api'
|
4
4
|
require 'open-uri'
|
5
5
|
require 'uri'
|
6
|
+
require 'bundler'
|
6
7
|
require 'github/markup'
|
7
8
|
require 'gems-license-finder/version'
|
8
9
|
require 'cgi'
|
@@ -20,7 +21,7 @@ module GemsLicenseFinder
|
|
20
21
|
|
21
22
|
class Client
|
22
23
|
LICENSE_FILES = %w[LICENSE LICENSE.md LICENSE.markdown MIT-LICENSE
|
23
|
-
LICENSE.txt MIT-LICENSE.txt MIT.LICENSE MIT_LICENSE
|
24
|
+
LICENSE.txt MIT-LICENSE.txt MIT.LICENSE MIT_LICENSE
|
24
25
|
MIT-LICENSE.md LICENSE.rdoc License
|
25
26
|
COPYING License.txt COPYING.md GNU GNU.txt GNU.rdoc GNU.markdown]
|
26
27
|
|
@@ -41,15 +42,40 @@ module GemsLicenseFinder
|
|
41
42
|
}
|
42
43
|
|
43
44
|
def initialize options = {}
|
45
|
+
@parallel = options.delete(:parallel) || 1
|
44
46
|
@github = Github.new options.clone
|
45
47
|
end
|
46
48
|
|
47
49
|
def find name
|
48
|
-
|
50
|
+
lockfile?(name) ? find_from_lockfile(name) : find_single(name)
|
51
|
+
end
|
52
|
+
|
53
|
+
def find_single name
|
54
|
+
normalize github_info(name , rubygems_info(name))
|
55
|
+
end
|
56
|
+
|
57
|
+
def find_from_lockfile lockfile
|
58
|
+
Bundler::LockfileParser.new(Bundler.read_file lockfile).
|
59
|
+
specs.
|
60
|
+
map(&:name).
|
61
|
+
each_slice(@parallel).
|
62
|
+
reduce({}) {|acc, slice|
|
63
|
+
acc.merge(
|
64
|
+
slice.
|
65
|
+
map {|x| [x, Thread.new {find_single(x) rescue {}}]}.
|
66
|
+
map {|x, t| [x, t.value]}.
|
67
|
+
to_h
|
68
|
+
)
|
69
|
+
}
|
49
70
|
end
|
50
71
|
|
51
72
|
private
|
52
73
|
|
74
|
+
def lockfile? str
|
75
|
+
File.exists?(str) &&
|
76
|
+
File.basename(str).eql?("Gemfile.lock")
|
77
|
+
end
|
78
|
+
|
53
79
|
def rubygems_info name
|
54
80
|
begin
|
55
81
|
content = open("https://rubygems.org/gems/#{name}").read
|
@@ -57,18 +83,18 @@ module GemsLicenseFinder
|
|
57
83
|
raise e.io.status.first == "404" ? GemNotFound.new(e) : e
|
58
84
|
end
|
59
85
|
|
60
|
-
info = Hash[content.scan(/<a href
|
86
|
+
info = Hash[content.scan(/<a rel=\"nofollow\".*?href=\"(.*?)\".*?>(.*?)</)].invert
|
61
87
|
type, url = normalize_licence(
|
62
88
|
(utf8_match(content,'<h5>Licenses<\/h5>.*?<p>(.*?)<')[1] rescue ""))
|
63
89
|
description = (CGI.unescapeHTML utf8_match(content,'gem__desc.*?<p>(.*?)<')[1].
|
64
90
|
strip.squeeze(" ").gsub(/\n/,"") rescue nil)
|
65
91
|
|
66
|
-
info.merge
|
92
|
+
info.merge license_type: type, license_url: url, description: description
|
67
93
|
end
|
68
94
|
|
69
95
|
def github_info name, rubygems
|
70
96
|
url = rubygems["Source Code"] || rubygems["Homepage"]
|
71
|
-
if url.to_s =~
|
97
|
+
if url.to_s =~ /github\.com/
|
72
98
|
# Sometimes the homepage in rubygems.org is old, e.g:
|
73
99
|
# carlhuda/bundler => bundler/bundler
|
74
100
|
open(url.sub("http:","https:")) { |o| url = o.base_uri.to_s } # follow redirects
|
@@ -84,7 +110,7 @@ module GemsLicenseFinder
|
|
84
110
|
license = "#{url}/blob/master/#{file}" if content
|
85
111
|
|
86
112
|
if license
|
87
|
-
type, lurl = (file =~ /mit|gnu/i) ?
|
113
|
+
type, lurl = (file =~ /mit|gnu/i) ?
|
88
114
|
normalize_licence(file.split(".").first) : type_from_license_text(content)
|
89
115
|
break
|
90
116
|
end
|
@@ -95,7 +121,7 @@ module GemsLicenseFinder
|
|
95
121
|
end
|
96
122
|
|
97
123
|
README_FILES.each do |file|
|
98
|
-
break if license and type
|
124
|
+
break if license and type
|
99
125
|
content = GitHub::Markup.render(file,fetch_github_file(user,repo,file)) rescue next
|
100
126
|
type, lurl = normalize_licence(content) if type.nil?
|
101
127
|
|
@@ -105,7 +131,7 @@ module GemsLicenseFinder
|
|
105
131
|
to_s.downcase.gsub(/\s/,"-") rescue nil
|
106
132
|
|
107
133
|
if license.nil? and utf8_match(content,'licen[cs]e')
|
108
|
-
license = rurl
|
134
|
+
license = rurl
|
109
135
|
type, lurl = normalize_licence content
|
110
136
|
end
|
111
137
|
|
metadata
CHANGED
@@ -1,169 +1,183 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gems-license-finder
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.11
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
-
- Eran
|
8
|
-
autorequire:
|
7
|
+
- Eran
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-07-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: minitest
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: 5.11.3
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - "
|
24
|
+
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
26
|
+
version: 5.11.3
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: mocha
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - "
|
31
|
+
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version:
|
33
|
+
version: 1.6.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:
|
40
|
+
version: 1.6.0
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: github_api
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- - "
|
45
|
+
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
47
|
+
version: 0.19.0
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- - "
|
52
|
+
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version:
|
54
|
+
version: 0.19.0
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rack
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: 2.2.4
|
62
|
+
type: :runtime
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: 2.2.4
|
55
69
|
- !ruby/object:Gem::Dependency
|
56
70
|
name: github-markup
|
57
71
|
requirement: !ruby/object:Gem::Requirement
|
58
72
|
requirements:
|
59
|
-
- - "
|
73
|
+
- - "~>"
|
60
74
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
75
|
+
version: 3.0.5
|
62
76
|
type: :runtime
|
63
77
|
prerelease: false
|
64
78
|
version_requirements: !ruby/object:Gem::Requirement
|
65
79
|
requirements:
|
66
|
-
- - "
|
80
|
+
- - "~>"
|
67
81
|
- !ruby/object:Gem::Version
|
68
|
-
version:
|
82
|
+
version: 3.0.5
|
69
83
|
- !ruby/object:Gem::Dependency
|
70
84
|
name: posix-spawn
|
71
85
|
requirement: !ruby/object:Gem::Requirement
|
72
86
|
requirements:
|
73
|
-
- - "
|
87
|
+
- - "~>"
|
74
88
|
- !ruby/object:Gem::Version
|
75
|
-
version:
|
89
|
+
version: 0.3.15
|
76
90
|
type: :runtime
|
77
91
|
prerelease: false
|
78
92
|
version_requirements: !ruby/object:Gem::Requirement
|
79
93
|
requirements:
|
80
|
-
- - "
|
94
|
+
- - "~>"
|
81
95
|
- !ruby/object:Gem::Version
|
82
|
-
version:
|
96
|
+
version: 0.3.15
|
83
97
|
- !ruby/object:Gem::Dependency
|
84
98
|
name: redcarpet
|
85
99
|
requirement: !ruby/object:Gem::Requirement
|
86
100
|
requirements:
|
87
|
-
- - "
|
101
|
+
- - "~>"
|
88
102
|
- !ruby/object:Gem::Version
|
89
|
-
version:
|
103
|
+
version: 3.5.1
|
90
104
|
type: :runtime
|
91
105
|
prerelease: false
|
92
106
|
version_requirements: !ruby/object:Gem::Requirement
|
93
107
|
requirements:
|
94
|
-
- - "
|
108
|
+
- - "~>"
|
95
109
|
- !ruby/object:Gem::Version
|
96
|
-
version:
|
110
|
+
version: 3.5.1
|
97
111
|
- !ruby/object:Gem::Dependency
|
98
112
|
name: rdiscount
|
99
113
|
requirement: !ruby/object:Gem::Requirement
|
100
114
|
requirements:
|
101
|
-
- - "
|
115
|
+
- - "~>"
|
102
116
|
- !ruby/object:Gem::Version
|
103
|
-
version:
|
117
|
+
version: 2.2.0
|
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:
|
124
|
+
version: 2.2.0
|
111
125
|
- !ruby/object:Gem::Dependency
|
112
126
|
name: maruku
|
113
127
|
requirement: !ruby/object:Gem::Requirement
|
114
128
|
requirements:
|
115
|
-
- - "
|
129
|
+
- - "~>"
|
116
130
|
- !ruby/object:Gem::Version
|
117
|
-
version:
|
131
|
+
version: 0.7.3
|
118
132
|
type: :runtime
|
119
133
|
prerelease: false
|
120
134
|
version_requirements: !ruby/object:Gem::Requirement
|
121
135
|
requirements:
|
122
|
-
- - "
|
136
|
+
- - "~>"
|
123
137
|
- !ruby/object:Gem::Version
|
124
|
-
version:
|
138
|
+
version: 0.7.3
|
125
139
|
- !ruby/object:Gem::Dependency
|
126
140
|
name: kramdown
|
127
141
|
requirement: !ruby/object:Gem::Requirement
|
128
142
|
requirements:
|
129
|
-
- - "
|
143
|
+
- - "~>"
|
130
144
|
- !ruby/object:Gem::Version
|
131
|
-
version:
|
145
|
+
version: 2.3.0
|
132
146
|
type: :runtime
|
133
147
|
prerelease: false
|
134
148
|
version_requirements: !ruby/object:Gem::Requirement
|
135
149
|
requirements:
|
136
|
-
- - "
|
150
|
+
- - "~>"
|
137
151
|
- !ruby/object:Gem::Version
|
138
|
-
version:
|
152
|
+
version: 2.3.0
|
139
153
|
- !ruby/object:Gem::Dependency
|
140
154
|
name: bluecloth
|
141
155
|
requirement: !ruby/object:Gem::Requirement
|
142
156
|
requirements:
|
143
|
-
- - "
|
157
|
+
- - "~>"
|
144
158
|
- !ruby/object:Gem::Version
|
145
|
-
version:
|
159
|
+
version: 2.2.0
|
146
160
|
type: :runtime
|
147
161
|
prerelease: false
|
148
162
|
version_requirements: !ruby/object:Gem::Requirement
|
149
163
|
requirements:
|
150
|
-
- - "
|
164
|
+
- - "~>"
|
151
165
|
- !ruby/object:Gem::Version
|
152
|
-
version:
|
166
|
+
version: 2.2.0
|
153
167
|
- !ruby/object:Gem::Dependency
|
154
168
|
name: faraday
|
155
169
|
requirement: !ruby/object:Gem::Requirement
|
156
170
|
requirements:
|
157
|
-
- - "
|
171
|
+
- - "~>"
|
158
172
|
- !ruby/object:Gem::Version
|
159
|
-
version: '
|
173
|
+
version: '1'
|
160
174
|
type: :runtime
|
161
175
|
prerelease: false
|
162
176
|
version_requirements: !ruby/object:Gem::Requirement
|
163
177
|
requirements:
|
164
|
-
- - "
|
178
|
+
- - "~>"
|
165
179
|
- !ruby/object:Gem::Version
|
166
|
-
version: '
|
180
|
+
version: '1'
|
167
181
|
description: Poor man's license finder for rubygems, that might work
|
168
182
|
email: eran@kontera.com
|
169
183
|
executables:
|
@@ -180,9 +194,10 @@ files:
|
|
180
194
|
- lib/gems-license-finder.rb
|
181
195
|
- lib/gems-license-finder/version.rb
|
182
196
|
homepage: http://www.kontera.com
|
183
|
-
licenses:
|
197
|
+
licenses:
|
198
|
+
- MIT
|
184
199
|
metadata: {}
|
185
|
-
post_install_message:
|
200
|
+
post_install_message:
|
186
201
|
rdoc_options: []
|
187
202
|
require_paths:
|
188
203
|
- lib
|
@@ -190,16 +205,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
190
205
|
requirements:
|
191
206
|
- - ">="
|
192
207
|
- !ruby/object:Gem::Version
|
193
|
-
version: 1.
|
208
|
+
version: 2.1.0
|
194
209
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
195
210
|
requirements:
|
196
211
|
- - ">="
|
197
212
|
- !ruby/object:Gem::Version
|
198
213
|
version: '0'
|
199
214
|
requirements: []
|
200
|
-
|
201
|
-
|
202
|
-
signing_key:
|
215
|
+
rubygems_version: 3.0.8
|
216
|
+
signing_key:
|
203
217
|
specification_version: 4
|
204
218
|
summary: Poor man's license finder for rubygems
|
205
219
|
test_files: []
|