license_finder 3.0.2 → 3.0.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +31 -13
- data/Dockerfile +7 -7
- data/LICENSE +1 -1
- data/README.md +39 -13
- data/bin/license_finder_pip.py +2 -1
- data/ci/pipelines/pipeline.yml.erb +14 -2
- data/ci/pipelines/release.yml +60 -0
- data/ci/scripts/pushscript.sh +15 -0
- data/ci/tasks/build-and-push-gem.yml +9 -0
- data/ci/tasks/create-source-archives.yml +23 -0
- data/ci/tasks/get-version-and-tag.yml +20 -0
- data/dlf +8 -0
- data/lib/license_finder/cli/base.rb +1 -0
- data/lib/license_finder/cli/main.rb +1 -0
- data/lib/license_finder/configuration.rb +4 -0
- data/lib/license_finder/core.rb +1 -0
- data/lib/license_finder/package_managers/npm_package.rb +49 -51
- data/lib/license_finder/package_managers/pip.rb +11 -2
- data/lib/license_finder/version.rb +1 -1
- data/spec/fixtures/npm-stack-too-deep/npm-list.json +13464 -0
- data/spec/fixtures/npm-stack-too-deep/package.json +5 -0
- data/spec/lib/license_finder/core_spec.rb +1 -0
- data/spec/lib/license_finder/package_managers/npm_package_spec.rb +6 -5
- data/spec/lib/license_finder/package_managers/npm_spec.rb +36 -4
- metadata +12 -168
@@ -13,6 +13,7 @@ module LicenseFinder
|
|
13
13
|
"dependencies" => {
|
14
14
|
"coffee-script" => {
|
15
15
|
"name" => "coffee-script",
|
16
|
+
"version" => "1.2.3"
|
16
17
|
}
|
17
18
|
}
|
18
19
|
)
|
@@ -29,11 +30,11 @@ module LicenseFinder
|
|
29
30
|
its(:package_manager) { should eq 'Npm' }
|
30
31
|
|
31
32
|
describe '#license_names_from_spec' do
|
32
|
-
let(:node_module1) { {"license" => "MIT"} }
|
33
|
-
let(:node_module2) { {"licenses" => [{"type" => "BSD"}]} }
|
34
|
-
let(:node_module3) { {"license" => {"type" => "PSF"}} }
|
35
|
-
let(:node_module4) { {"licenses" => ["MIT"]} }
|
36
|
-
let(:misdeclared_node_module) { {"licenses" => {"type" => "MIT"}} }
|
33
|
+
let(:node_module1) { {"name" => "node_module1", "version" => "1", "license" => "MIT"} }
|
34
|
+
let(:node_module2) { {"name" => "node_module2", "version" => "2", "licenses" => [{"type" => "BSD"}]} }
|
35
|
+
let(:node_module3) { {"name" => "node_module3", "version" => "3", "license" => {"type" => "PSF"}} }
|
36
|
+
let(:node_module4) { {"name" => "node_module4", "version" => "4", "licenses" => ["MIT"]} }
|
37
|
+
let(:misdeclared_node_module) { {"name" => "node_module0", "version" => "0", "licenses" => {"type" => "MIT"}} }
|
37
38
|
|
38
39
|
it 'finds the license for both license structures' do
|
39
40
|
package = NpmPackage.new(node_module1)
|
@@ -32,7 +32,8 @@ module LicenseFinder
|
|
32
32
|
"path": "/path/to/thing",
|
33
33
|
"dependencies": {
|
34
34
|
"dependency1-1.js": {
|
35
|
-
"name": "dependency1-1.js"
|
35
|
+
"name": "dependency1-1.js",
|
36
|
+
"version": "1-1"
|
36
37
|
}
|
37
38
|
}
|
38
39
|
},
|
@@ -45,9 +46,11 @@ module LicenseFinder
|
|
45
46
|
"dependencies": {
|
46
47
|
"dependency2-1.js": {
|
47
48
|
"name": "dependency2-1.js",
|
49
|
+
"version": "2-1",
|
48
50
|
"dependencies": {
|
49
51
|
"dependency1-1.js": {
|
50
|
-
"name": "dependency1-1.js"
|
52
|
+
"name": "dependency1-1.js",
|
53
|
+
"version": "1-1"
|
51
54
|
}
|
52
55
|
}
|
53
56
|
}
|
@@ -61,10 +64,12 @@ module LicenseFinder
|
|
61
64
|
"path": "/path/to/thing3",
|
62
65
|
"dependencies": {
|
63
66
|
"dependency1-1.js": {
|
64
|
-
"name": "dependency1-1.js"
|
67
|
+
"name": "dependency1-1.js",
|
68
|
+
"version": "1-1"
|
65
69
|
},
|
66
70
|
"dependency3-1.js": {
|
67
|
-
"name": "dependency3-1.js"
|
71
|
+
"name": "dependency3-1.js",
|
72
|
+
"version": "3-1"
|
68
73
|
}
|
69
74
|
}
|
70
75
|
}
|
@@ -216,6 +221,33 @@ module LicenseFinder
|
|
216
221
|
end
|
217
222
|
end
|
218
223
|
end
|
224
|
+
|
225
|
+
context 'when packages have circular dependencies and the stack becomes too deep - GH#327' do
|
226
|
+
let(:package_json) do
|
227
|
+
FakeFS.without do
|
228
|
+
File.read fixture_path 'npm-stack-too-deep/package.json'
|
229
|
+
end
|
230
|
+
end
|
231
|
+
let(:dependency_json) do
|
232
|
+
FakeFS.without do
|
233
|
+
File.read fixture_path 'npm-stack-too-deep/npm-list.json'
|
234
|
+
end
|
235
|
+
end
|
236
|
+
|
237
|
+
|
238
|
+
describe '.current_packages' do
|
239
|
+
it 'should return package tree successfully' do
|
240
|
+
packages = npm.current_packages
|
241
|
+
expect(packages.count).to be > 1
|
242
|
+
expect(packages.select{|p| p.name == 'es6-iterator'}.count).to eq(1)
|
243
|
+
expect(packages.select{|p| p.name == 'es5-ext'}.count).to eq(1)
|
244
|
+
expect(packages.select{|p| p.name == 'd'}.count).to eq(1)
|
245
|
+
expect(packages.find{|p| p.name == 'es6-iterator'}.dependencies.count).to be > 0
|
246
|
+
expect(packages.find{|p| p.name == 'es5-ext'}.dependencies.count).to be > 0
|
247
|
+
expect(packages.find{|p| p.name == 'd'}.dependencies.count).to be > 0
|
248
|
+
end
|
249
|
+
end
|
250
|
+
end
|
219
251
|
end
|
220
252
|
end
|
221
253
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: license_finder
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.0.
|
4
|
+
version: 3.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jacob Maine
|
@@ -20,7 +20,7 @@ authors:
|
|
20
20
|
autorequire:
|
21
21
|
bindir: bin
|
22
22
|
cert_chain: []
|
23
|
-
date: 2017-
|
23
|
+
date: 2017-09-14 00:00:00.000000000 Z
|
24
24
|
dependencies:
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: bundler
|
@@ -120,20 +120,6 @@ dependencies:
|
|
120
120
|
- - "~>"
|
121
121
|
- !ruby/object:Gem::Version
|
122
122
|
version: 2.0.0
|
123
|
-
- !ruby/object:Gem::Dependency
|
124
|
-
name: cocoapods
|
125
|
-
requirement: !ruby/object:Gem::Requirement
|
126
|
-
requirements:
|
127
|
-
- - '='
|
128
|
-
- !ruby/object:Gem::Version
|
129
|
-
version: 0.34.0
|
130
|
-
type: :development
|
131
|
-
prerelease: false
|
132
|
-
version_requirements: !ruby/object:Gem::Requirement
|
133
|
-
requirements:
|
134
|
-
- - '='
|
135
|
-
- !ruby/object:Gem::Version
|
136
|
-
version: 0.34.0
|
137
123
|
- !ruby/object:Gem::Dependency
|
138
124
|
name: fakefs
|
139
125
|
requirement: !ruby/object:Gem::Requirement
|
@@ -288,8 +274,14 @@ files:
|
|
288
274
|
- bin/license_finder
|
289
275
|
- bin/license_finder_pip.py
|
290
276
|
- ci/pipelines/pipeline.yml.erb
|
277
|
+
- ci/pipelines/release.yml
|
278
|
+
- ci/scripts/pushscript.sh
|
291
279
|
- ci/scripts/test.sh
|
280
|
+
- ci/tasks/build-and-push-gem.yml
|
292
281
|
- ci/tasks/build.yml
|
282
|
+
- ci/tasks/create-source-archives.yml
|
283
|
+
- ci/tasks/get-version-and-tag.yml
|
284
|
+
- dlf
|
293
285
|
- features/features/cli/cli_spec.rb
|
294
286
|
- features/features/configure/add_dependencies_spec.rb
|
295
287
|
- features/features/configure/approve_dependencies_spec.rb
|
@@ -471,6 +463,8 @@ files:
|
|
471
463
|
- spec/fixtures/npm-licenses-string/package.json
|
472
464
|
- spec/fixtures/npm-recursive-dependencies/npm-list.json
|
473
465
|
- spec/fixtures/npm-recursive-dependencies/package.json
|
466
|
+
- spec/fixtures/npm-stack-too-deep/npm-list.json
|
467
|
+
- spec/fixtures/npm-stack-too-deep/package.json
|
474
468
|
- spec/fixtures/utf8_gem/README
|
475
469
|
- spec/lib/license_finder/cli/approvals_spec.rb
|
476
470
|
- spec/lib/license_finder/cli/blacklist_spec.rb
|
@@ -550,158 +544,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
550
544
|
version: '0'
|
551
545
|
requirements: []
|
552
546
|
rubyforge_project:
|
553
|
-
rubygems_version: 2.6.
|
547
|
+
rubygems_version: 2.6.12
|
554
548
|
signing_key:
|
555
549
|
specification_version: 4
|
556
550
|
summary: Audit the OSS licenses of your application's dependencies.
|
557
|
-
test_files:
|
558
|
-
- features/features/cli/cli_spec.rb
|
559
|
-
- features/features/configure/add_dependencies_spec.rb
|
560
|
-
- features/features/configure/approve_dependencies_spec.rb
|
561
|
-
- features/features/configure/assign_licenses_spec.rb
|
562
|
-
- features/features/configure/blacklist_licenses_spec.rb
|
563
|
-
- features/features/configure/ignore_dependencies_spec.rb
|
564
|
-
- features/features/configure/ignore_groups_spec.rb
|
565
|
-
- features/features/configure/name_project_spec.rb
|
566
|
-
- features/features/configure/set_project_path_spec.rb
|
567
|
-
- features/features/configure/whitelist_licenses_spec.rb
|
568
|
-
- features/features/package_managers/bower_spec.rb
|
569
|
-
- features/features/package_managers/cocoapods_spec.rb
|
570
|
-
- features/features/package_managers/godep_spec.rb
|
571
|
-
- features/features/package_managers/gradle_spec.rb
|
572
|
-
- features/features/package_managers/maven_spec.rb
|
573
|
-
- features/features/package_managers/npm_spec.rb
|
574
|
-
- features/features/package_managers/nuget_spec.rb
|
575
|
-
- features/features/package_managers/pip_spec.rb
|
576
|
-
- features/features/package_managers/rebar_spec.rb
|
577
|
-
- features/features/report/composite_spec.rb
|
578
|
-
- features/features/report/csv_spec.rb
|
579
|
-
- features/features/report/diff_spec.rb
|
580
|
-
- features/features/report/html_spec.rb
|
581
|
-
- features/features/report/java_groups_spec.rb
|
582
|
-
- features/features/report/subproject_spec.rb
|
583
|
-
- features/fixtures/Podfile
|
584
|
-
- features/fixtures/alternate-build-file-gradle/build-alt.gradle
|
585
|
-
- features/fixtures/alternate-build-file-gradle/settings.gradle
|
586
|
-
- features/fixtures/build.gradle
|
587
|
-
- features/fixtures/file-based-libs-gradle/build.gradle
|
588
|
-
- features/fixtures/file-based-libs-gradle/libs/data.json-0.2.3.jar
|
589
|
-
- features/fixtures/gopath/src/github.com/pivotal/foo/Godeps/Godeps.json
|
590
|
-
- features/fixtures/gopath/src/github.com/pivotal/foo/Godeps/Readme
|
591
|
-
- features/fixtures/gopath/src/github.com/pivotal/foo/foo.go
|
592
|
-
- features/fixtures/gradle-wrapper/build.gradle
|
593
|
-
- features/fixtures/gradle-wrapper/gradlew
|
594
|
-
- features/fixtures/gradle-wrapper/gradlew.bat
|
595
|
-
- features/fixtures/maven-wrapper/mvnw
|
596
|
-
- features/fixtures/maven-wrapper/mvnw.cmd
|
597
|
-
- features/fixtures/maven-wrapper/pom.xml
|
598
|
-
- features/fixtures/multi-module-gradle/build.gradle
|
599
|
-
- features/fixtures/multi-module-gradle/module1/build.gradle
|
600
|
-
- features/fixtures/multi-module-gradle/module2/build.gradle
|
601
|
-
- features/fixtures/multi-module-gradle/settings.gradle
|
602
|
-
- features/fixtures/nuget/.nuget/.keep
|
603
|
-
- features/fixtures/nuget/Fun.Test/packages.config
|
604
|
-
- features/fixtures/nuget/Fun/packages.config
|
605
|
-
- features/fixtures/pom.xml
|
606
|
-
- features/fixtures/rebar.config
|
607
|
-
- features/fixtures/single-module-gradle/build.gradle
|
608
|
-
- features/support/feature_helper.rb
|
609
|
-
- features/support/testing_dsl.rb
|
610
|
-
- spec/dummy_app/Gemfile
|
611
|
-
- spec/fixtures/all_pms/.envrc
|
612
|
-
- spec/fixtures/all_pms/.nuget/.keep
|
613
|
-
- spec/fixtures/all_pms/Gemfile
|
614
|
-
- spec/fixtures/all_pms/Godeps/Godeps.json
|
615
|
-
- spec/fixtures/all_pms/Podfile
|
616
|
-
- spec/fixtures/all_pms/bower.json
|
617
|
-
- spec/fixtures/all_pms/build.gradle
|
618
|
-
- spec/fixtures/all_pms/package.json
|
619
|
-
- spec/fixtures/all_pms/pom.xml
|
620
|
-
- spec/fixtures/all_pms/rebar.config
|
621
|
-
- spec/fixtures/all_pms/requirements.txt
|
622
|
-
- spec/fixtures/all_pms/vendor/.gitkeep
|
623
|
-
- spec/fixtures/composite/Gemfile
|
624
|
-
- spec/fixtures/composite/nested_project/.envrc
|
625
|
-
- spec/fixtures/composite/nested_project/src/github.com/pivotal/foo/Godeps/Godeps.json
|
626
|
-
- spec/fixtures/composite/nested_project/src/github.com/pivotal/foo/Godeps/Readme
|
627
|
-
- spec/fixtures/composite/nested_project/src/github.com/pivotal/foo/foo.go
|
628
|
-
- spec/fixtures/composite/not_a_project/DONTREADME.md
|
629
|
-
- spec/fixtures/composite/project1/Gemfile
|
630
|
-
- spec/fixtures/composite/project2/package.json
|
631
|
-
- spec/fixtures/config/license_finder.yml
|
632
|
-
- spec/fixtures/license_directory/COPYING
|
633
|
-
- spec/fixtures/license_directory/LICENSE/MIT.txt
|
634
|
-
- spec/fixtures/license_directory/LICENSE/lib/unrelated.txt
|
635
|
-
- spec/fixtures/license_names/COPYING.txt
|
636
|
-
- spec/fixtures/license_names/LICENSE
|
637
|
-
- spec/fixtures/license_names/Licence.rdoc
|
638
|
-
- spec/fixtures/license_names/Mit-License
|
639
|
-
- spec/fixtures/license_names/README.rdoc
|
640
|
-
- spec/fixtures/nested_gem/vendor/LICENSE
|
641
|
-
- spec/fixtures/npm-circular-dependencies/npm-list.json
|
642
|
-
- spec/fixtures/npm-circular-dependencies/package.json
|
643
|
-
- spec/fixtures/npm-circular-licenses/npm-list.json
|
644
|
-
- spec/fixtures/npm-circular-licenses/package.json
|
645
|
-
- spec/fixtures/npm-licenses-string/npm-list.json
|
646
|
-
- spec/fixtures/npm-licenses-string/package.json
|
647
|
-
- spec/fixtures/npm-recursive-dependencies/npm-list.json
|
648
|
-
- spec/fixtures/npm-recursive-dependencies/package.json
|
649
|
-
- spec/fixtures/utf8_gem/README
|
650
|
-
- spec/lib/license_finder/cli/approvals_spec.rb
|
651
|
-
- spec/lib/license_finder/cli/blacklist_spec.rb
|
652
|
-
- spec/lib/license_finder/cli/dependencies_spec.rb
|
653
|
-
- spec/lib/license_finder/cli/ignored_dependencies_spec.rb
|
654
|
-
- spec/lib/license_finder/cli/ignored_groups_spec.rb
|
655
|
-
- spec/lib/license_finder/cli/licenses_spec.rb
|
656
|
-
- spec/lib/license_finder/cli/main_spec.rb
|
657
|
-
- spec/lib/license_finder/cli/project_name_spec.rb
|
658
|
-
- spec/lib/license_finder/cli/whitelist_spec.rb
|
659
|
-
- spec/lib/license_finder/configuration_spec.rb
|
660
|
-
- spec/lib/license_finder/core_spec.rb
|
661
|
-
- spec/lib/license_finder/decision_applier_spec.rb
|
662
|
-
- spec/lib/license_finder/decisions_spec.rb
|
663
|
-
- spec/lib/license_finder/diff_spec.rb
|
664
|
-
- spec/lib/license_finder/license/definitions_spec.rb
|
665
|
-
- spec/lib/license_finder/license_aggregator_spec.rb
|
666
|
-
- spec/lib/license_finder/license_spec.rb
|
667
|
-
- spec/lib/license_finder/package_delta_spec.rb
|
668
|
-
- spec/lib/license_finder/package_manager_spec.rb
|
669
|
-
- spec/lib/license_finder/package_managers/bower_package_spec.rb
|
670
|
-
- spec/lib/license_finder/package_managers/bower_spec.rb
|
671
|
-
- spec/lib/license_finder/package_managers/bundler_package_spec.rb
|
672
|
-
- spec/lib/license_finder/package_managers/bundler_spec.rb
|
673
|
-
- spec/lib/license_finder/package_managers/cocoa_pods_package_spec.rb
|
674
|
-
- spec/lib/license_finder/package_managers/cocoa_pods_spec.rb
|
675
|
-
- spec/lib/license_finder/package_managers/go_dep_spec.rb
|
676
|
-
- spec/lib/license_finder/package_managers/go_package_spec.rb
|
677
|
-
- spec/lib/license_finder/package_managers/go_vendor_spec.rb
|
678
|
-
- spec/lib/license_finder/package_managers/go_workspace_spec.rb
|
679
|
-
- spec/lib/license_finder/package_managers/gradle_package_spec.rb
|
680
|
-
- spec/lib/license_finder/package_managers/gradle_spec.rb
|
681
|
-
- spec/lib/license_finder/package_managers/maven_package_spec.rb
|
682
|
-
- spec/lib/license_finder/package_managers/maven_spec.rb
|
683
|
-
- spec/lib/license_finder/package_managers/merged_package_spec.rb
|
684
|
-
- spec/lib/license_finder/package_managers/npm_package_spec.rb
|
685
|
-
- spec/lib/license_finder/package_managers/npm_spec.rb
|
686
|
-
- spec/lib/license_finder/package_managers/nuget_package_spec.rb
|
687
|
-
- spec/lib/license_finder/package_managers/nuget_spec.rb
|
688
|
-
- spec/lib/license_finder/package_managers/pip_package_spec.rb
|
689
|
-
- spec/lib/license_finder/package_managers/pip_spec.rb
|
690
|
-
- spec/lib/license_finder/package_managers/rebar_package_spec.rb
|
691
|
-
- spec/lib/license_finder/package_managers/rebar_spec.rb
|
692
|
-
- spec/lib/license_finder/package_spec.rb
|
693
|
-
- spec/lib/license_finder/packages/activation_spec.rb
|
694
|
-
- spec/lib/license_finder/packages/license_files_spec.rb
|
695
|
-
- spec/lib/license_finder/packages/licensing_spec.rb
|
696
|
-
- spec/lib/license_finder/packages/possible_license_file_spec.rb
|
697
|
-
- spec/lib/license_finder/project_finder_spec.rb
|
698
|
-
- spec/lib/license_finder/reports/csv_report_spec.rb
|
699
|
-
- spec/lib/license_finder/reports/diff_report_spec.rb
|
700
|
-
- spec/lib/license_finder/reports/html_report_spec.rb
|
701
|
-
- spec/lib/license_finder/reports/markdown_report_spec.rb
|
702
|
-
- spec/lib/license_finder/reports/merged_report_spec.rb
|
703
|
-
- spec/lib/license_finder/reports/text_report_spec.rb
|
704
|
-
- spec/spec_helper.rb
|
705
|
-
- spec/support/shared_examples_for_package_manager.rb
|
706
|
-
- spec/support/stdout_helpers.rb
|
707
|
-
- spec/support/test_fixtures.rb
|
551
|
+
test_files: []
|