licensee 9.13.0 → 9.13.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (34) hide show
  1. checksums.yaml +4 -4
  2. data/bin/licensee +1 -1
  3. data/lib/licensee/content_helper.rb +2 -3
  4. data/lib/licensee/matchers/copyright.rb +2 -2
  5. data/lib/licensee/version.rb +1 -1
  6. data/licensee.gemspec +2 -2
  7. data/spec/fixtures/bsd-3-noendorseslash/LICENSE +30 -0
  8. data/spec/fixtures/detect.json +2 -2
  9. data/spec/fixtures/fixtures.yml +8 -0
  10. data/spec/fixtures/license-hashes.json +2 -1
  11. data/spec/fixtures/multiple-arrs/LICENSE +30 -0
  12. data/spec/integration_spec.rb +18 -0
  13. data/spec/licensee/license_meta_spec.rb +1 -1
  14. data/spec/licensee/license_spec.rb +2 -2
  15. data/spec/licensee/matchers/dice_matcher_spec.rb +2 -2
  16. data/spec/licensee/project_files/license_file_spec.rb +2 -2
  17. data/spec/licensee_spec.rb +1 -1
  18. data/vendor/choosealicense.com/_licenses/apache-2.0.txt +1 -1
  19. data/vendor/choosealicense.com/_licenses/artistic-2.0.txt +1 -1
  20. data/vendor/choosealicense.com/_licenses/bsl-1.0.txt +1 -0
  21. data/vendor/choosealicense.com/_licenses/cc0-1.0.txt +1 -1
  22. data/vendor/choosealicense.com/_licenses/cecill-2.1.txt +3 -3
  23. data/vendor/choosealicense.com/_licenses/ecl-2.0.txt +1 -1
  24. data/vendor/choosealicense.com/_licenses/epl-2.0.txt +2 -2
  25. data/vendor/choosealicense.com/_licenses/gpl-3.0.txt +1 -1
  26. data/vendor/choosealicense.com/_licenses/lgpl-3.0.txt +0 -1
  27. data/vendor/choosealicense.com/_licenses/lppl-1.3c.txt +1 -1
  28. data/vendor/choosealicense.com/_licenses/mit.txt +1 -1
  29. data/vendor/choosealicense.com/_licenses/ncsa.txt +21 -21
  30. data/vendor/choosealicense.com/_licenses/ofl-1.1.txt +1 -1
  31. data/vendor/choosealicense.com/_licenses/postgresql.txt +2 -2
  32. data/vendor/choosealicense.com/_licenses/upl-1.0.txt +1 -1
  33. data/vendor/choosealicense.com/_licenses/vim.txt +111 -0
  34. metadata +10 -7
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7aeb33320898c7e64f31f6ea15708f4e4c23a6856e10c54e004054ee6997200a
4
- data.tar.gz: dcbac4f8b08ff1d55e0ac7de2b603c67ce4f9a2b7d9486fbfccae3fa0dc6d304
3
+ metadata.gz: bd74e74f07c0dc4111b3cbbebf62ae3ab140a788ed511491b5995d45f2371de0
4
+ data.tar.gz: 90561b8b85ded55614a88e38b0469e80d110bd113e3a6ddfee9bdd840dec237a
5
5
  SHA512:
6
- metadata.gz: d92bb1d7662b504e92ad6a2fa3f0c8fa23716fa3825715333f8483085a8662d94d61032ec2e4155ae93b9bc0e71627f9e841268e1c7b2229078f13da216d0394
7
- data.tar.gz: 364fe3f78e38f703a1e7c9317453b598e4a4bc0b8db773efd4e6e701e7f3a730426698c3a4561e34ba09e839a35a24d4526d87595de31f687a7e83c932bf4ae2
6
+ metadata.gz: bc64456f4f05411ab8152ce3ade984aa52851f39399d0bffe1e6c51fa4f9de6b00fcd84008bed0d0b71b0569a9799ba0b539ce6323fee55b4436c583ae4ce92c
7
+ data.tar.gz: d797f174a17e2f91eb8f4e7c9eff9b3d4631f58531d4d57cc9da98e75e062345a52354a9ca3a8e1f991cb70a92b91e7b600814dddca345c3528742011e92c8ed
@@ -33,6 +33,6 @@ class LicenseeCLI < Thor
33
33
  end
34
34
 
35
35
  commands_dir = File.expand_path '../lib/licensee/commands/', __dir__
36
- Dir["#{commands_dir}/*.rb"].each { |c| require(c) }
36
+ Dir["#{commands_dir}/*.rb"].sort.each { |c| require(c) }
37
37
 
38
38
  LicenseeCLI.start(ARGV)
@@ -101,7 +101,6 @@ module Licensee
101
101
  block_markup
102
102
  span_markup
103
103
  link_markup
104
- all_rights_reserved
105
104
  developed_by
106
105
  end_of_terms
107
106
  whitespace
@@ -110,7 +109,7 @@ module Licensee
110
109
 
111
110
  # A set of each word in the license, without duplicates
112
111
  def wordset
113
- @wordset ||= content_normalized&.scan(/(?:\w(?:'s|(?<=s)')?)+/)&.to_set
112
+ @wordset ||= content_normalized&.scan(%r{(?:[\w\/](?:'s|(?<=s)')?)+})&.to_set
114
113
  end
115
114
 
116
115
  # Number of characteres in the normalized content
@@ -267,7 +266,7 @@ module Licensee
267
266
  end
268
267
 
269
268
  def strip_copyright
270
- regex = Matchers::Copyright::REGEX
269
+ regex = Regexp.union(Matchers::Copyright::REGEX, REGEXES[:all_rights_reserved])
271
270
  strip(regex) while _content =~ regex
272
271
  end
273
272
 
@@ -5,10 +5,10 @@ module Licensee
5
5
  class Copyright < Licensee::Matchers::Matcher
6
6
  attr_reader :file
7
7
 
8
- # rubocop:disable Metrics/LineLength
8
+ # rubocop:disable Layout/LineLength
9
9
  COPYRIGHT_SYMBOLS = Regexp.union([/copyright/i, /\(c\)/i, "\u00A9", "\xC2\xA9"])
10
10
  REGEX = /#{ContentHelper::START_REGEX}(?:portions )?(\s*#{COPYRIGHT_SYMBOLS}.*$)+$/i.freeze
11
- # rubocop:enable Metrics/LineLength
11
+ # rubocop:enable Layout/LineLength
12
12
 
13
13
  def match
14
14
  # Note: must use content, and not content_normalized here
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Licensee
4
- VERSION = '9.13.0'
4
+ VERSION = '9.13.1'
5
5
  end
@@ -21,7 +21,7 @@ Gem::Specification.new do |gem|
21
21
  gem.executables << 'licensee'
22
22
 
23
23
  gem.add_dependency('dotenv', '~> 2.0')
24
- gem.add_dependency('octokit', '~> 4.8')
24
+ gem.add_dependency('octokit', '~> 4.17')
25
25
  gem.add_dependency('reverse_markdown', '~> 1.0')
26
26
  gem.add_dependency('rugged', '~> 0.24')
27
27
  gem.add_dependency('thor', '~> 0.19')
@@ -30,7 +30,7 @@ Gem::Specification.new do |gem|
30
30
  gem.add_development_dependency('pry', '~> 0.9')
31
31
  gem.add_development_dependency('rake', '~> 10.3')
32
32
  gem.add_development_dependency('rspec', '~> 3.5')
33
- gem.add_development_dependency('rubocop', '~> 0.76')
33
+ gem.add_development_dependency('rubocop', '~> 0.80')
34
34
  gem.add_development_dependency('rubocop-performance', '~> 1.5')
35
35
  gem.add_development_dependency('rubocop-rspec', '~> 1.36')
36
36
  gem.add_development_dependency('simplecov', '~> 0.16')
@@ -0,0 +1,30 @@
1
+ Copyright © 2019, Person Person and contributors
2
+
3
+ All rights reserved.
4
+
5
+ * * *
6
+
7
+ Redistribution and use in source and binary forms, with or without
8
+ modification, are permitted provided that the following conditions are met:
9
+
10
+ * Redistributions of source code must retain the above copyright notice, this
11
+ list of conditions and the following disclaimer.
12
+
13
+ * Redistributions in binary form must reproduce the above copyright notice,
14
+ this list of conditions and the following disclaimer in the documentation
15
+ and/or other materials provided with the distribution.
16
+
17
+ * Neither the name of someorg/foo-bar-baz-quux nor the names of its
18
+ contributors may be used to endorse or promote products derived from
19
+ this software without specific prior written permission.
20
+
21
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
22
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
24
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
25
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
27
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
28
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
29
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
@@ -13,7 +13,7 @@
13
13
  "Babel": "https://github.com/babel/babel/blob/master/LICENSE"
14
14
  },
15
15
  {
16
- ".NET Core": "https://github.com/dotnet/corefx/blob/master/LICENSE.TXT"
16
+ ".NET Core": "https://github.com/dotnet/runtime/blob/master/LICENSE.TXT"
17
17
  },
18
18
  {
19
19
  "Rails": "https://github.com/rails/rails/blob/master/MIT-LICENSE"
@@ -99,7 +99,7 @@
99
99
  },
100
100
  {
101
101
  "filename": "licensee.gemspec",
102
- "content": "# frozen_string_literal: true\n\nrequire File.expand_path('lib/licensee/version', __dir__)\n\nGem::Specification.new do |gem|\n gem.name = 'licensee'\n gem.version = Licensee::VERSION\n\n gem.summary = 'A Ruby Gem to detect open source project licenses'\n gem.description = <<-DESC\n Licensee automates the process of reading LICENSE files and\n compares their contents to known licenses using a fancy maths.\n DESC\n\n gem.authors = ['Ben Balter']\n gem.email = 'ben.balter@github.com'\n gem.homepage = 'https://github.com/benbalter/licensee'\n gem.license = 'MIT'\n\n gem.bindir = 'bin'\n gem.executables << 'licensee'\n\n gem.add_dependency('dotenv', '~> 2.0')\n gem.add_dependency('octokit', '~> 4.8')\n gem.add_dependency('reverse_markdown', '~> 1.0')\n gem.add_dependency('rugged', '~> 0.24')\n gem.add_dependency('thor', '~> 0.19')\n\n gem.add_development_dependency('mustache', '>= 0.9', '< 2.0')\n gem.add_development_dependency('pry', '~> 0.9')\n gem.add_development_dependency('rake', '~> 10.3')\n gem.add_development_dependency('rspec', '~> 3.5')\n gem.add_development_dependency('rubocop', '~> 0.76')\n gem.add_development_dependency('rubocop-performance', '~> 1.5')\n gem.add_development_dependency('rubocop-rspec', '~> 1.36')\n gem.add_development_dependency('simplecov', '~> 0.16')\n gem.add_development_dependency('webmock', '~> 3.1')\n\n gem.required_ruby_version = '> 2.3'\n\n # ensure the gem is built out of versioned files\n gem.files = Dir[\n 'Rakefile',\n '{bin,lib,man,test,vendor,spec}/**/*',\n 'README*', 'LICENSE*'\n ] & `git ls-files -z`.split(\"\\0\")\nend\n",
102
+ "content": "# frozen_string_literal: true\n\nrequire File.expand_path('lib/licensee/version', __dir__)\n\nGem::Specification.new do |gem|\n gem.name = 'licensee'\n gem.version = Licensee::VERSION\n\n gem.summary = 'A Ruby Gem to detect open source project licenses'\n gem.description = <<-DESC\n Licensee automates the process of reading LICENSE files and\n compares their contents to known licenses using a fancy maths.\n DESC\n\n gem.authors = ['Ben Balter']\n gem.email = 'ben.balter@github.com'\n gem.homepage = 'https://github.com/benbalter/licensee'\n gem.license = 'MIT'\n\n gem.bindir = 'bin'\n gem.executables << 'licensee'\n\n gem.add_dependency('dotenv', '~> 2.0')\n gem.add_dependency('octokit', '~> 4.8')\n gem.add_dependency('reverse_markdown', '~> 1.0')\n gem.add_dependency('rugged', '~> 0.24')\n gem.add_dependency('thor', '~> 0.19')\n\n gem.add_development_dependency('mustache', '>= 0.9', '< 2.0')\n gem.add_development_dependency('pry', '~> 0.9')\n gem.add_development_dependency('rake', '~> 10.3')\n gem.add_development_dependency('rspec', '~> 3.5')\n gem.add_development_dependency('rubocop', '~> 0.80')\n gem.add_development_dependency('rubocop-performance', '~> 1.5')\n gem.add_development_dependency('rubocop-rspec', '~> 1.36')\n gem.add_development_dependency('simplecov', '~> 0.16')\n gem.add_development_dependency('webmock', '~> 3.1')\n\n gem.required_ruby_version = '> 2.3'\n\n # ensure the gem is built out of versioned files\n gem.files = Dir[\n 'Rakefile',\n '{bin,lib,man,test,vendor,spec}/**/*',\n 'README*', 'LICENSE*'\n ] & `git ls-files -z`.split(\"\\0\")\nend\n",
103
103
  "content_hash": null,
104
104
  "content_normalized": null,
105
105
  "matcher": {
@@ -8,6 +8,10 @@ bsd-3-lists:
8
8
  key: bsd-3-clause
9
9
  matcher:
10
10
  hash:
11
+ bsd-3-noendorseslash:
12
+ key: bsd-3-clause
13
+ matcher: dice
14
+ hash: 11df3173c40b87a9da370f3420372a310259b273
11
15
  bsd-plus-patents:
12
16
  key: other
13
17
  matcher:
@@ -100,6 +104,10 @@ mpl-without-hrs:
100
104
  key: mpl-2.0
101
105
  matcher: exact
102
106
  hash: b4db668fa7573bfdcae74eb51eafc961034f0a61
107
+ multiple-arrs:
108
+ key: bsd-3-clause
109
+ matcher: exact
110
+ hash: fa22c672927af9c7334874561198799cbf4bdf31
103
111
  multiple-license-files:
104
112
  key: other
105
113
  matcher:
@@ -28,13 +28,14 @@
28
28
  "mpl-2.0": "b4db668fa7573bfdcae74eb51eafc961034f0a61",
29
29
  "ms-pl": "c900293d66a241e54f7817367a8f32f7f94e12ff",
30
30
  "ms-rl": "402bf344e506a8d10175c1e516b396c060ffd823",
31
- "ncsa": "04c052b69de47ab0641068657a14632cdf9aa48d",
31
+ "ncsa": "da965ab8e2094b0f0ac97a8502272b5400c29508",
32
32
  "odbl-1.0": "4f4c0884535ebe8fdf1b93d2d3505e323144831f",
33
33
  "ofl-1.1": "1fb0563aa1250e18a6948afde286edc95761f461",
34
34
  "osl-3.0": "ab241ef932d3ac038e8ed62c860e9eba051ae7a0",
35
35
  "postgresql": "87550a6bb3409db00d8552b2ac07d373ea56a024",
36
36
  "unlicense": "853b375edc61b9e823da0fa5fead97c9460c3e45",
37
37
  "upl-1.0": "af9efb6f7b29f8c2d486ccb28223db0aa8372c29",
38
+ "vim": "76268065cdc78dd7f3677df936cb24aa93aa14b0",
38
39
  "wtfpl": "f8544c074f203d86cdcb24082fedfb2cf2fe411a",
39
40
  "zlib": "576139d1f785b8f3539099b9702fc68005ee2213"
40
41
  }
@@ -0,0 +1,30 @@
1
+ Copyright (c) 2018, Ben Balter
2
+ All rights reserved.
3
+
4
+ Copyright (c) 2020, Alice B. Carols
5
+ All rights reserved.
6
+
7
+ Redistribution and use in source and binary forms, with or without
8
+ modification, are permitted provided that the following conditions are met:
9
+
10
+ * Redistributions of source code must retain the above copyright notice, this
11
+ list of conditions and the following disclaimer.
12
+
13
+ * Redistributions in binary form must reproduce the above copyright notice,
14
+ this list of conditions and the following disclaimer in the documentation
15
+ and/or other materials provided with the distribution.
16
+
17
+ * Neither the name of the copyright holder nor the names of its
18
+ contributors may be used to endorse or promote products derived from
19
+ this software without specific prior written permission.
20
+
21
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
22
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
24
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
25
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
27
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
28
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
29
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
@@ -74,6 +74,15 @@ RSpec.describe 'integration test' do
74
74
  end
75
75
  end
76
76
 
77
+ context 'with multiple all rights reserved lines' do
78
+ let(:license) { Licensee::License.find('bsd-3-clause') }
79
+ let(:fixture) { 'multiple-arrs' }
80
+
81
+ it 'matches other' do
82
+ expect(subject.license).to eql(license)
83
+ end
84
+ end
85
+
77
86
  context 'with CC-BY-NC-SA' do
78
87
  let(:fixture) { 'cc-by-nc-sa' }
79
88
 
@@ -235,6 +244,15 @@ RSpec.describe 'integration test' do
235
244
  end
236
245
  end
237
246
 
247
+ context 'BSD-3-Clause no-endorsement name with slashes' do
248
+ let(:license) { Licensee::License.find('bsd-3-clause') }
249
+ let(:fixture) { 'bsd-3-noendorseslash' }
250
+
251
+ it 'determines the project is BSD-3-Clause' do
252
+ expect(subject.license).to eql(license)
253
+ end
254
+ end
255
+
238
256
  context 'HTML license file' do
239
257
  let(:license) { Licensee::License.find('epl-1.0') }
240
258
  let(:fixture) { 'html' }
@@ -120,7 +120,7 @@ RSpec.describe Licensee::LicenseMeta do
120
120
  'Babel' => 'https://github.com/babel/babel/blob/master/LICENSE'
121
121
  },
122
122
  {
123
- '.NET Core' => 'https://github.com/dotnet/corefx/blob/master/LICENSE.TXT'
123
+ '.NET Core' => 'https://github.com/dotnet/runtime/blob/master/LICENSE.TXT'
124
124
  },
125
125
  {
126
126
  'Rails' => 'https://github.com/rails/rails/blob/master/MIT-LICENSE'
@@ -1,8 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  RSpec.describe Licensee::License do
4
- let(:license_count) { 40 }
5
- let(:hidden_license_count) { 27 }
4
+ let(:license_count) { 41 }
5
+ let(:hidden_license_count) { 28 }
6
6
  let(:featured_license_count) { 3 }
7
7
  let(:pseudo_license_count) { 2 }
8
8
  let(:non_featured_license_count) do
@@ -25,12 +25,12 @@ RSpec.describe Licensee::Matchers::Dice do
25
25
 
26
26
  it 'sorts licenses by similarity' do
27
27
  expect(subject.matches_by_similarity[0]).to eql([gpl, 100.0])
28
- expect(subject.matches_by_similarity[1]).to eql([agpl, 95.67966280295047])
28
+ expect(subject.matches_by_similarity[1]).to eql([agpl, 95.6842105263158])
29
29
  end
30
30
 
31
31
  it 'returns a list of licenses above the confidence threshold' do
32
32
  expect(subject.matches_by_similarity[0]).to eql([gpl, 100.0])
33
- expect(subject.matches_by_similarity[1]).to eql([agpl, 95.67966280295047])
33
+ expect(subject.matches_by_similarity[1]).to eql([agpl, 95.6842105263158])
34
34
  end
35
35
 
36
36
  it 'returns the match confidence' do
@@ -47,7 +47,7 @@ RSpec.describe Licensee::ProjectFiles::LicenseFile do
47
47
  end
48
48
 
49
49
  it 'creates the wordset' do
50
- expect(subject.wordset.count).to be(91)
50
+ expect(subject.wordset.count).to be(92)
51
51
  expect(subject.wordset.first).to eql('permission')
52
52
  end
53
53
 
@@ -162,7 +162,7 @@ RSpec.describe Licensee::ProjectFiles::LicenseFile do
162
162
  expect(subject).not_to be_a_potential_false_positive
163
163
  end
164
164
 
165
- context 'a CC false positive without creative commons in the title' do
165
+ context 'a CC false positive with creative commons in the title' do
166
166
  let(:content) { 'Creative Commons Attribution-NonCommercial 4.0' }
167
167
 
168
168
  it "knows it's a potential false positive" do
@@ -4,7 +4,7 @@ RSpec.describe Licensee do
4
4
  let(:project_path) { fixture_path('mit') }
5
5
  let(:license_path) { fixture_path('mit/LICENSE.txt') }
6
6
  let(:mit_license) { Licensee::License.find('mit') }
7
- let(:hidden_license_count) { 40 }
7
+ let(:hidden_license_count) { 41 }
8
8
 
9
9
  it 'exposes licenses' do
10
10
  expect(described_class.licenses).to be_an(Array)
@@ -9,7 +9,7 @@ description: A permissive license whose main conditions require preservation of
9
9
 
10
10
  how: Create a text file (typically named LICENSE or LICENSE.txt) in the root of your source code and copy the text of the license into the file.
11
11
 
12
- note: The Apache Foundation recommends taking the additional step of adding a boilerplate notice to the header of each source file. You can find the notice at the very end of the license in the appendix.
12
+ note: The Apache Foundation recommends taking the additional step of adding a boilerplate notice to the header of each source file. You can find the notice in the appendix at the very end of the license text.
13
13
 
14
14
  using:
15
15
  - Kubernetes: https://github.com/kubernetes/kubernetes/blob/master/LICENSE
@@ -5,7 +5,7 @@ redirect_from: /licenses/artistic/
5
5
 
6
6
  description: Heavily favored by the Perl community, the Artistic license requires that modified versions of the software do not prevent users from running the standard version.
7
7
 
8
- how: Create a text file (typically named LICENSE or LICENSE.txt) in the root of your source code, and copy the text of the license into the file. Do not replace the copyright notice (year, author), which refers to the license itself, not the licensed project.
8
+ how: Create a text file (typically named LICENSE or LICENSE.txt) in the root of your source code and copy the text of the license into the file. Do not replace the copyright notice (year, author), which refers to the license itself, not the licensed project.
9
9
 
10
10
  using:
11
11
 
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  title: Boost Software License 1.0
3
3
  spdx-id: BSL-1.0
4
+ hidden: false
4
5
 
5
6
  description: A simple permissive license only requiring preservation of copyright and license notices for source (and not binary) distribution. Licensed works, modifications, and larger works may be distributed under different terms and without source code.
6
7
 
@@ -6,7 +6,7 @@ hidden: false
6
6
 
7
7
  description: The <a href="https://creativecommons.org/publicdomain/zero/1.0/">Creative Commons CC0 Public Domain Dedication</a> waives copyright interest in a work you've created and dedicates it to the world-wide public domain. Use CC0 to opt out of copyright entirely and ensure your work has the widest reach. As with the Unlicense and typical software licenses, CC0 disclaims warranties. CC0 is very similar to the Unlicense.
8
8
 
9
- how: Create a text file (typically named LICENSE or LICENSE.txt) in the root of your source code and copy the text of the CC0 into the file.
9
+ how: Create a text file (typically named LICENSE or LICENSE.txt) in the root of your source code and copy the text of the license into the file.
10
10
 
11
11
  note: Creative Commons recommends taking the additional step of adding a boilerplate notice to the top of each file. The boilerplate can be <a href="https://wiki.creativecommons.org/wiki/CC0_FAQ#May_I_apply_CC0_to_computer_software.3F_If_so.2C_is_there_a_recommended_implementation.3F">found on their website</a>.
12
12
 
@@ -4,7 +4,7 @@ spdx-id: CECILL-2.1
4
4
 
5
5
  description: Strong copyleft license made by three French public research organisations, CEA, CNRS, and Inria, compatible with AGPL-3.0, EUPL-1.1, and GPL-2.0, or later versions of those licenses.
6
6
 
7
- how: Create a text file (typically named LICENSE or LICENCE) in the root of your source code and copy the text of the license into the file.
7
+ how: Create a text file (typically named LICENSE or LICENCE) in the root of your source code and copy the text of the license into the file.
8
8
 
9
9
  using:
10
10
  - BMC-Tools: https://github.com/ANSSI-FR/bmc-tools/blob/master/LICENCE.txt
@@ -22,7 +22,7 @@ conditions:
22
22
  - include-copyright
23
23
  - disclose-source
24
24
  - same-license
25
-
25
+
26
26
  limitations:
27
27
  - liability
28
28
  - warranty
@@ -102,7 +102,7 @@ titulaire des droits patrimoniaux décide de soumettre l'exploitation aux
102
102
  dispositions qu'il contient.
103
103
 
104
104
  Une liste de questions fréquemment posées se trouve sur le site web
105
- officiel de la famille des licences CeCILL
105
+ officiel de la famille des licences CeCILL
106
106
  (http://www.cecill.info/index.fr.html) pour toute clarification qui
107
107
  serait nécessaire.
108
108
 
@@ -6,7 +6,7 @@ description: The Educational Community License version 2.0 ("ECL") consists of t
6
6
 
7
7
  how: Create a text file (typically named LICENSE or LICENSE.txt) in the root of your source code and copy the text of the license into the file.
8
8
 
9
- note: The Apereo Foundation recommends taking the additional step of adding a boilerplate notice to the header of each source file. You can find the notice at the very end of the license in the appendix.
9
+ note: The Apereo Foundation recommends taking the additional step of adding a boilerplate notice to the header of each source file. You can find the notice in the appendix at the very end of the license text.
10
10
 
11
11
  using:
12
12
  - Sakai: https://github.com/sakaiproject/sakai/blob/master/LICENSE
@@ -294,8 +294,8 @@ No third-party beneficiary rights are created under this Agreement.
294
294
 
295
295
  Exhibit A - Form of Secondary Licenses Notice
296
296
 
297
- "This Source Code may also be made available under the following
298
- Secondary Licenses when the conditions for such availability set forth
297
+ "This Source Code may also be made available under the following
298
+ Secondary Licenses when the conditions for such availability set forth
299
299
  in the Eclipse Public License, v. 2.0 are satisfied: {name license(s),
300
300
  version(s), and exceptions or additional permissions here}."
301
301
 
@@ -8,7 +8,7 @@ hidden: false
8
8
 
9
9
  description: Permissions of this strong copyleft license are conditioned on making available complete source code of licensed works and modifications, which include larger works using a licensed work, under the same license. Copyright and license notices must be preserved. Contributors provide an express grant of patent rights.
10
10
 
11
- how: Create a text file in the root of your source code, typically named COPYING (a GNU convention), LICENSE or LICENSE.txt. Then copy the text of the license into that file.
11
+ how: Create a text file (typically named COPYING, as per GNU conventions) in the root of your source code and copy the text of the license into the file.
12
12
 
13
13
  note: The Free Software Foundation recommends taking the additional step of adding a boilerplate notice to the top of each file. The boilerplate can be found at the end of the license.
14
14
 
@@ -3,7 +3,6 @@ title: GNU Lesser General Public License v3.0
3
3
  spdx-id: LGPL-3.0
4
4
  nickname: GNU LGPLv3
5
5
  redirect_from: /licenses/lgpl-v3/
6
- hidden: false
7
6
 
8
7
  description: Permissions of this copyleft license are conditioned on making available complete source code of licensed works and modifications under the same license or the GNU GPLv3. Copyright and license notices must be preserved. Contributors provide an express grant of patent rights. However, a larger work using the licensed work through interfaces provided by the licensed work may be distributed under different terms and without source code for the larger work.
9
8
 
@@ -4,7 +4,7 @@ spdx-id: LPPL-1.3c
4
4
 
5
5
  description: The LaTeX Project Public License (LPPL) is the primary license under which the LaTeX kernel and the base LaTeX packages are distributed.
6
6
 
7
- how: To use this license, place in each of the components of your work both an explicit copyright notice including your name and the year the work was authored and/or last substantially modified. Include also a statement that the distribution and/or modification of that component is constrained by the conditions in this license.
7
+ how: Place in each of the components of your work both an explicit copyright notice including your name, and the year the work was authored and/or last substantially modified. Include also a statement that the distribution and/or modification of that component is constrained by the conditions in this license.
8
8
 
9
9
  note: An example boilerplate and more information about how to use the license can be found at the end of the license.
10
10
 
@@ -10,7 +10,7 @@ how: Create a text file (typically named LICENSE or LICENSE.txt) in the root of
10
10
 
11
11
  using:
12
12
  - Babel: https://github.com/babel/babel/blob/master/LICENSE
13
- - .NET Core: https://github.com/dotnet/corefx/blob/master/LICENSE.TXT
13
+ - .NET Core: https://github.com/dotnet/runtime/blob/master/LICENSE.TXT
14
14
  - Rails: https://github.com/rails/rails/blob/master/MIT-LICENSE
15
15
 
16
16
  permissions:
@@ -7,7 +7,7 @@ description: The University of Illinois/NCSA Open Source License, or UIUC licens
7
7
 
8
8
  how: Create a text file (typically named LICENSE or LICENSE.txt) in the root of your source code and copy the text of the license into the file. Replace [year] with the current year and [fullname] with the name (or names) of the copyright holders. Replace [project] with the project organization, if any, that sponsors this work.
9
9
 
10
- using:
10
+ using:
11
11
  - LLDB: https://github.com/llvm-mirror/lldb/blob/master/LICENSE.TXT
12
12
  - ROCR-Runtime: https://github.com/RadeonOpenCompute/ROCR-Runtime/blob/master/LICENSE.txt
13
13
  - RLTK: https://github.com/chriswailes/RLTK/blob/master/LICENSE
@@ -27,37 +27,37 @@ limitations:
27
27
 
28
28
  ---
29
29
 
30
- University of Illinois/NCSA Open Source License
30
+ University of Illinois/NCSA Open Source License
31
31
 
32
- Copyright (c) [year] [fullname]. All rights reserved.
32
+ Copyright (c) [year] [fullname]. All rights reserved.
33
33
 
34
- Developed by: [project]
35
- [fullname]
34
+ Developed by: [project]
35
+ [fullname]
36
36
  [projecturl]
37
-
38
- Permission is hereby granted, free of charge, to any person
39
- obtaining a copy of this software and associated documentation files
40
- (the "Software"), to deal with the Software without restriction,
37
+
38
+ Permission is hereby granted, free of charge, to any person
39
+ obtaining a copy of this software and associated documentation files
40
+ (the "Software"), to deal with the Software without restriction,
41
41
  including without limitation the rights to use, copy, modify, merge,
42
- publish, distribute, sublicense, and/or sell copies of the Software,
43
- and to permit persons to whom the Software is furnished to do so,
42
+ publish, distribute, sublicense, and/or sell copies of the Software,
43
+ and to permit persons to whom the Software is furnished to do so,
44
44
  subject to the following conditions:
45
45
 
46
- * Redistributions of source code must retain the above copyright notice,
46
+ * Redistributions of source code must retain the above copyright notice,
47
47
  this list of conditions and the following disclaimers.
48
48
 
49
- * Redistributions in binary form must reproduce the above copyright
50
- notice, this list of conditions and the following disclaimers in the
49
+ * Redistributions in binary form must reproduce the above copyright
50
+ notice, this list of conditions and the following disclaimers in the
51
51
  documentation and/or other materials provided with the distribution.
52
52
 
53
- * Neither the names of [fullname], [project] nor the names of its
53
+ * Neither the names of [fullname], [project] nor the names of its
54
54
  contributors may be used to endorse or promote products derived from
55
55
  this Software without specific prior written permission.
56
-
57
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
58
- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
59
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
60
- CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
61
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
56
+
57
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
58
+ OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
59
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
60
+ CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
61
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
62
62
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH
63
63
  THE SOFTWARE.
@@ -5,7 +5,7 @@ redirect_from: /licenses/ofl/
5
5
 
6
6
  description: The Open Font License (OFL) is maintained by SIL International. It attempts to be a compromise between the values of the free software and typeface design communities. It is used for almost all open source font projects, including those by Adobe, Google and Mozilla.
7
7
 
8
- how: Create a text file (typically named LICENSE or LICENSE.txt) in the root of your font source and copy the text of the license into the file. Replace [year] with the current year and [fullname] ([email]) with the name and contact email address of each copyright holder. You may take the additional step of appending a Reserved Font Name notice. This option requires anyone making modifications to change the font's name, and is not ideal for web fonts (which all users will modify by changing formats and subsetting for their own needs.)
8
+ how: Create a text file (typically named LICENSE or LICENSE.txt) in the root of your font's source code and copy the text of the license into the file. Replace [year] with the current year and [fullname] ([email]) with the name and contact email address of each copyright holder. You may take the additional step of appending a Reserved Font Name notice. This option requires anyone making modifications to change the font's name, and is not ideal for web fonts (which all users will modify by changing formats and subsetting for their own needs.)
9
9
 
10
10
  note: This license doesn't require source provision, but recommends it. All files derived from OFL files must remain licensed under the OFL.
11
11
 
@@ -2,9 +2,9 @@
2
2
  title: PostgreSQL License
3
3
  spdx-id: PostgreSQL
4
4
 
5
- description: A very short, BSD-style license, used specifically for PostgreSQL.
5
+ description: A very short, BSD-style license, used specifically for PostgreSQL.
6
6
 
7
- how: To use it, say that it is The PostgreSQL License, and then substitute the copyright year and name of the copyright holder into the body of the license. Then put the license into a prominent file ("COPYRIGHT", "LICENSE" or "COPYING" are common names for this file) in your software distribution.
7
+ how: Create a text file (typically named LICENSE or LICENSE.txt) in the root of your source code and copy the text of the license into the file. Replace [year] with the current year and [fullname] with the name (or names) of the copyright holders.
8
8
 
9
9
  using:
10
10
  - pgBadger: https://github.com/darold/pgbadger/blob/master/LICENSE
@@ -4,7 +4,7 @@ spdx-id: UPL-1.0
4
4
 
5
5
  description: A permissive, OSI and FSF approved, GPL compatible license, expressly allowing attribution with just a copyright notice and a short form link rather than the full text of the license. Includes an express grant of patent rights. Licensed works and modifications may be distributed under different terms and without source code, and the patent grant may also optionally be expanded to larger works to permit use as a contributor license agreement.
6
6
 
7
- how: Insert the license or a link to it along with a copyright notice into your source file(s), and/or create a text file (typically named LICENSE or LICENSE.txt) in the root of your source code and copy the text of the license and your copyright notice into the file.
7
+ how: Insert the license or a link to it along with a copyright notice into your source file(s), and/or create a text file (typically named LICENSE or LICENSE.txt) in the root of your source code and copy the text of the license into the file, replacing [year] with the current year and [fullname] with the name (or names) of the copyright holders.
8
8
 
9
9
  note: It is recommended to add a link to the license and copyright notice at the top of each source file, example text can be found at https://oss.oracle.com/licenses/upl/.
10
10
 
@@ -0,0 +1,111 @@
1
+ ---
2
+ title: Vim License
3
+ spdx-id: Vim
4
+
5
+ description: There are no restrictions on using or distributing an unmodified copy of the software. Parts of the software may also be distributed, but the license text must always be included. For modified versions a few restrictions apply. The license is GPL compatible, you may compile the software with GPL libraries and distribute it.
6
+
7
+ how: Create a text file (typically named LICENSE or LICENSE.txt) in the root of your source code and copy the text of the license into the file. Replace [project] with the project name.
8
+
9
+ using:
10
+ - Vim: https://github.com/vim/vim/blob/master/LICENSE
11
+ - Pathogen: https://github.com/tpope/vim-pathogen/blob/master/LICENSE
12
+ - vim-license-gen: https://github.com/othree/vim-license/blob/master/LICENSE
13
+
14
+ permissions:
15
+ - commercial-use
16
+ - modifications
17
+ - distribution
18
+ - private-use
19
+
20
+ conditions:
21
+ - include-copyright
22
+ - document-changes
23
+ - disclose-source
24
+ - same-license
25
+
26
+ limitations: []
27
+
28
+ ---
29
+
30
+ VIM LICENSE
31
+
32
+ I) There are no restrictions on distributing unmodified copies of [project]
33
+ except that they must include this license text. You can also distribute
34
+ unmodified parts of [project], likewise unrestricted except that they must
35
+ include this license text. You are also allowed to include executables
36
+ that you made from the unmodified [project] sources, plus your own usage
37
+ examples and Vim scripts.
38
+
39
+ II) It is allowed to distribute a modified (or extended) version of [project],
40
+ including executables and/or source code, when the following four
41
+ conditions are met:
42
+ 1) This license text must be included unmodified.
43
+ 2) The modified [project] must be distributed in one of the following five
44
+ ways:
45
+ a) If you make changes to [project] yourself, you must clearly describe
46
+ in the distribution how to contact you. When the maintainer asks
47
+ you (in any way) for a copy of the modified [project] you
48
+ distributed, you must make your changes, including source code,
49
+ available to the maintainer without fee. The maintainer reserves
50
+ the right to include your changes in the official version of
51
+ [project]. What the maintainer will do with your changes and under
52
+ what license they will be distributed is negotiable. If there has
53
+ been no negotiation then this license, or a later version, also
54
+ applies to your changes. The current maintainer is Bram Moolenaar
55
+ <Bram@vim.org>. If this changes it will be announced in appropriate
56
+ places (most likely vim.sf.net, www.vim.org and/or comp.editors).
57
+ When it is completely impossible to contact the maintainer, the
58
+ obligation to send him your changes ceases. Once the maintainer has
59
+ confirmed that he has received your changes they will not have to be
60
+ sent again.
61
+ b) If you have received a modified [project] that was distributed as
62
+ mentioned under a) you are allowed to further distribute it
63
+ unmodified, as mentioned at I). If you make additional changes the
64
+ text under a) applies to those changes.
65
+ c) Provide all the changes, including source code, with every copy of
66
+ the modified [project] you distribute. This may be done in the form
67
+ of a context diff. You can choose what license to use for new code
68
+ you add. The changes and their license must not restrict others
69
+ from making their own changes to the official version of [project].
70
+ d) When you have a modified [project] which includes changes as
71
+ mentioned under c), you can distribute it without the source code
72
+ for the changes if the following three conditions are met:
73
+ - The license that applies to the changes permits you to distribute
74
+ the changes to the Vim maintainer without fee or restriction, and
75
+ permits the Vim maintainer to include the changes in the official
76
+ version of [project] without fee or restriction.
77
+ - You keep the changes for at least three years after last
78
+ distributing the corresponding modified [project]. When the
79
+ maintainer or someone who you distributed the modified [project]
80
+ to asks you (in any way) for the changes within this period, you
81
+ must make them available to him.
82
+ - You clearly describe in the distribution how to contact you. This
83
+ contact information must remain valid for at least three years
84
+ after last distributing the corresponding modified [project], or
85
+ as long as possible.
86
+ e) When the GNU General Public License (GPL) applies to the changes,
87
+ you can distribute the modified [project] under the GNU GPL version
88
+ 2 or any later version.
89
+ 3) A message must be added, at least in the output of the ":version"
90
+ command and in the intro screen, such that the user of the modified
91
+ [project] is able to see that it was modified. When distributing as
92
+ mentioned under 2)e) adding the message is only required for as far as
93
+ this does not conflict with the license used for the changes.
94
+ 4) The contact information as required under 2)a) and 2)d) must not be
95
+ removed or changed, except that the person himself can make
96
+ corrections.
97
+
98
+ III) If you distribute a modified version of [project], you are encouraged to
99
+ use the Vim license for your changes and make them available to the
100
+ maintainer, including the source code. The preferred way to do this is
101
+ by e-mail or by uploading the files to a server and e-mailing the URL. If
102
+ the number of changes is small (e.g., a modified Makefile) e-mailing a
103
+ context diff will do. The e-mail address to be used is
104
+ <maintainer@vim.org>
105
+
106
+ IV) It is not allowed to remove this license from the distribution of the
107
+ [project] sources, parts of it or from a modified version. You may use
108
+ this license for previous [project] releases instead of the license that
109
+ they came with, at your option.
110
+
111
+
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: licensee
3
3
  version: !ruby/object:Gem::Version
4
- version: 9.13.0
4
+ version: 9.13.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ben Balter
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-11-25 00:00:00.000000000 Z
11
+ date: 2020-03-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dotenv
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '4.8'
33
+ version: '4.17'
34
34
  type: :runtime
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: '4.8'
40
+ version: '4.17'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: reverse_markdown
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -148,14 +148,14 @@ dependencies:
148
148
  requirements:
149
149
  - - "~>"
150
150
  - !ruby/object:Gem::Version
151
- version: '0.76'
151
+ version: '0.80'
152
152
  type: :development
153
153
  prerelease: false
154
154
  version_requirements: !ruby/object:Gem::Requirement
155
155
  requirements:
156
156
  - - "~>"
157
157
  - !ruby/object:Gem::Version
158
- version: '0.76'
158
+ version: '0.80'
159
159
  - !ruby/object:Gem::Dependency
160
160
  name: rubocop-performance
161
161
  requirement: !ruby/object:Gem::Requirement
@@ -268,6 +268,7 @@ files:
268
268
  - spec/fixtures/apache-with-readme-notice/README.md
269
269
  - spec/fixtures/bsd-3-lists/LICENSE.BULLETS
270
270
  - spec/fixtures/bsd-3-lists/LICENSE.NUMBERS
271
+ - spec/fixtures/bsd-3-noendorseslash/LICENSE
271
272
  - spec/fixtures/bsd-plus-patents/PATENTS
272
273
  - spec/fixtures/bsd-plus-patents/license.txt
273
274
  - spec/fixtures/bsl/LICENSE_1_0.txt
@@ -302,6 +303,7 @@ files:
302
303
  - spec/fixtures/mit/LICENSE.txt
303
304
  - spec/fixtures/mit/README.md
304
305
  - spec/fixtures/mpl-without-hrs/LICENSE
306
+ - spec/fixtures/multiple-arrs/LICENSE
305
307
  - spec/fixtures/multiple-license-files/LICENSE
306
308
  - spec/fixtures/multiple-license-files/LICENSE.txt
307
309
  - spec/fixtures/readme/README.md
@@ -381,6 +383,7 @@ files:
381
383
  - vendor/choosealicense.com/_licenses/postgresql.txt
382
384
  - vendor/choosealicense.com/_licenses/unlicense.txt
383
385
  - vendor/choosealicense.com/_licenses/upl-1.0.txt
386
+ - vendor/choosealicense.com/_licenses/vim.txt
384
387
  - vendor/choosealicense.com/_licenses/wtfpl.txt
385
388
  - vendor/choosealicense.com/_licenses/zlib.txt
386
389
  homepage: https://github.com/benbalter/licensee
@@ -402,7 +405,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
402
405
  - !ruby/object:Gem::Version
403
406
  version: '0'
404
407
  requirements: []
405
- rubygems_version: 3.0.6
408
+ rubygems_version: 3.1.2
406
409
  signing_key:
407
410
  specification_version: 4
408
411
  summary: A Ruby Gem to detect open source project licenses