license_finder 4.0.2 → 5.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (145) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +4 -2
  3. data/CHANGELOG.md +16 -1
  4. data/CONTRIBUTING.md +23 -5
  5. data/Gemfile +0 -1
  6. data/README.md +6 -1
  7. data/Rakefile +2 -2
  8. data/ci/pipelines/pipeline.yml.erb +1 -1
  9. data/ci/pipelines/release.yml +14 -23
  10. data/ci/scripts/pushscript.sh +1 -2
  11. data/ci/scripts/run-rubocop.sh +1 -1
  12. data/ci/scripts/updateChangelog.sh +77 -0
  13. data/ci/tasks/build.yml +1 -1
  14. data/ci/tasks/update-changelog.yml +15 -0
  15. data/lib/license_finder/cli/base.rb +19 -13
  16. data/lib/license_finder/cli/main.rb +54 -37
  17. data/lib/license_finder/cli/makes_decisions.rb +3 -2
  18. data/lib/license_finder/configuration.rb +68 -15
  19. data/lib/license_finder/core.rb +17 -7
  20. data/lib/license_finder/decisions_factory.rb +11 -0
  21. data/lib/license_finder/license/templates/SimplifiedBSD.txt +1 -1
  22. data/lib/license_finder/license_aggregator.rb +11 -6
  23. data/lib/license_finder/logger.rb +2 -2
  24. data/lib/license_finder/package.rb +18 -16
  25. data/lib/license_finder/package_manager.rb +40 -47
  26. data/lib/license_finder/package_managers/bower.rb +8 -4
  27. data/lib/license_finder/package_managers/bundler.rb +8 -5
  28. data/lib/license_finder/package_managers/carthage.rb +4 -4
  29. data/lib/license_finder/package_managers/cocoa_pods.rb +2 -2
  30. data/lib/license_finder/package_managers/conan.rb +1 -1
  31. data/lib/license_finder/package_managers/gradle.rb +1 -1
  32. data/lib/license_finder/package_managers/maven.rb +1 -3
  33. data/lib/license_finder/package_managers/mix.rb +8 -4
  34. data/lib/license_finder/package_managers/npm.rb +5 -1
  35. data/lib/license_finder/package_managers/pip.rb +2 -2
  36. data/lib/license_finder/package_managers/rebar.rb +4 -4
  37. data/lib/license_finder/package_managers/yarn.rb +2 -2
  38. data/lib/license_finder/{packages → package_utils}/activation.rb +0 -0
  39. data/lib/license_finder/{package_managers → package_utils}/conan_info_parser.rb +1 -1
  40. data/lib/license_finder/{package_managers → package_utils}/gradle_dependency_finder.rb +0 -0
  41. data/lib/license_finder/{packages → package_utils}/license_files.rb +1 -1
  42. data/lib/license_finder/{packages → package_utils}/licensing.rb +1 -1
  43. data/lib/license_finder/{package_managers → package_utils}/maven_dependency_finder.rb +0 -0
  44. data/lib/license_finder/{packages → package_utils}/possible_license_file.rb +0 -0
  45. data/lib/license_finder/{package_managers → packages}/bower_package.rb +0 -0
  46. data/lib/license_finder/{package_managers → packages}/bundler_package.rb +0 -0
  47. data/lib/license_finder/{package_managers → packages}/carthage_package.rb +0 -0
  48. data/lib/license_finder/{package_managers → packages}/cocoa_pods_package.rb +0 -0
  49. data/lib/license_finder/{package_managers → packages}/conan_package.rb +0 -0
  50. data/lib/license_finder/{package_managers → packages}/go_package.rb +0 -0
  51. data/lib/license_finder/{package_managers → packages}/gradle_package.rb +0 -0
  52. data/lib/license_finder/{package_managers → packages}/maven_package.rb +0 -0
  53. data/lib/license_finder/packages/merged_package.rb +42 -0
  54. data/lib/license_finder/{package_managers → packages}/mix_package.rb +0 -0
  55. data/lib/license_finder/{package_managers → packages}/npm_package.rb +0 -0
  56. data/lib/license_finder/{package_managers → packages}/nuget_package.rb +0 -0
  57. data/lib/license_finder/{package_managers → packages}/pip_package.rb +0 -0
  58. data/lib/license_finder/{package_managers → packages}/rebar_package.rb +0 -0
  59. data/lib/license_finder/packages/yarn_package.rb +7 -0
  60. data/lib/license_finder/project_finder.rb +1 -1
  61. data/lib/license_finder/reports/csv_report.rb +1 -0
  62. data/lib/license_finder/reports/merged_report.rb +2 -0
  63. data/lib/license_finder/reports/templates/html_report.erb +8 -0
  64. data/lib/license_finder/reports/templates/markdown_report.erb +7 -0
  65. data/lib/license_finder/scanner.rb +38 -0
  66. data/lib/license_finder/version.rb +1 -1
  67. data/license_finder.gemspec +9 -2
  68. metadata +37 -101
  69. data/ci/tasks/get-version-and-tag.yml +0 -20
  70. data/features/features/cli/cli_spec.rb +0 -63
  71. data/features/features/configure/add_dependencies_spec.rb +0 -54
  72. data/features/features/configure/approve_dependencies_spec.rb +0 -61
  73. data/features/features/configure/assign_licenses_spec.rb +0 -35
  74. data/features/features/configure/blacklist_licenses_spec.rb +0 -30
  75. data/features/features/configure/ignore_dependencies_spec.rb +0 -35
  76. data/features/features/configure/ignore_groups_spec.rb +0 -46
  77. data/features/features/configure/name_project_spec.rb +0 -33
  78. data/features/features/configure/set_project_path_spec.rb +0 -17
  79. data/features/features/configure/whitelist_licenses_spec.rb +0 -38
  80. data/features/features/package_managers/bower_spec.rb +0 -14
  81. data/features/features/package_managers/carthage_spec.rb +0 -14
  82. data/features/features/package_managers/cocoapods_spec.rb +0 -14
  83. data/features/features/package_managers/conan_spec.rb +0 -11
  84. data/features/features/package_managers/dep_spec.rb +0 -15
  85. data/features/features/package_managers/glide_spec.rb +0 -26
  86. data/features/features/package_managers/godep_spec.rb +0 -17
  87. data/features/features/package_managers/govendor_spec.rb +0 -15
  88. data/features/features/package_managers/gradle_spec.rb +0 -34
  89. data/features/features/package_managers/gvt_spec.rb +0 -14
  90. data/features/features/package_managers/maven_spec.rb +0 -22
  91. data/features/features/package_managers/mix_spec.rb +0 -16
  92. data/features/features/package_managers/npm_spec.rb +0 -14
  93. data/features/features/package_managers/nuget_spec.rb +0 -14
  94. data/features/features/package_managers/pip_spec.rb +0 -14
  95. data/features/features/package_managers/rebar_spec.rb +0 -14
  96. data/features/features/package_managers/yarn_spec.rb +0 -14
  97. data/features/features/report/composite_spec.rb +0 -28
  98. data/features/features/report/csv_spec.rb +0 -18
  99. data/features/features/report/diff_spec.rb +0 -203
  100. data/features/features/report/html_spec.rb +0 -51
  101. data/features/features/report/java_groups_spec.rb +0 -11
  102. data/features/features/report/subproject_spec.rb +0 -63
  103. data/features/fixtures/Cartfile +0 -1
  104. data/features/fixtures/Podfile +0 -3
  105. data/features/fixtures/alternate-build-file-gradle/build-alt.gradle +0 -16
  106. data/features/fixtures/alternate-build-file-gradle/settings.gradle +0 -1
  107. data/features/fixtures/build.gradle +0 -16
  108. data/features/fixtures/conanfile.txt +0 -11
  109. data/features/fixtures/file-based-libs-gradle/build.gradle +0 -16
  110. data/features/fixtures/file-based-libs-gradle/libs/data.json-0.2.3.jar +0 -0
  111. data/features/fixtures/gopath/src/github.com/pivotal/foo/Godeps/Godeps.json +0 -16
  112. data/features/fixtures/gopath/src/github.com/pivotal/foo/Godeps/Readme +0 -5
  113. data/features/fixtures/gopath/src/github.com/pivotal/foo/foo.go +0 -6
  114. data/features/fixtures/gopath_dep/src/foo-dep/Gopkg.lock +0 -14
  115. data/features/fixtures/gopath_dep/src/foo-dep/Gopkg.toml +0 -7
  116. data/features/fixtures/gopath_dep/src/foo-dep/bar/bar.go +0 -10
  117. data/features/fixtures/gopath_dep/src/foo-dep/foo.go +0 -7
  118. data/features/fixtures/gopath_dep/src/foo-dep/vendor/a/b/LICENSE +0 -1
  119. data/features/fixtures/gopath_glide/src/glide.lock +0 -9
  120. data/features/fixtures/gopath_glide/src/glide.yaml +0 -6
  121. data/features/fixtures/gopath_glide_without_src/glide.lock +0 -9
  122. data/features/fixtures/gopath_glide_without_src/glide.yaml +0 -6
  123. data/features/fixtures/gopath_govendor/src/vendor/vendor.json +0 -19
  124. data/features/fixtures/gopath_gvt/src/vendor/manifest +0 -22
  125. data/features/fixtures/gradle-wrapper/build.gradle +0 -16
  126. data/features/fixtures/gradle-wrapper/gradlew +0 -8
  127. data/features/fixtures/gradle-wrapper/gradlew.bat +0 -9
  128. data/features/fixtures/maven-wrapper/mvnw +0 -3
  129. data/features/fixtures/maven-wrapper/mvnw.cmd +0 -7
  130. data/features/fixtures/maven-wrapper/pom.xml +0 -37
  131. data/features/fixtures/mix.exs +0 -22
  132. data/features/fixtures/multi-module-gradle/build.gradle +0 -12
  133. data/features/fixtures/multi-module-gradle/module1/build.gradle +0 -3
  134. data/features/fixtures/multi-module-gradle/module2/build.gradle +0 -3
  135. data/features/fixtures/multi-module-gradle/settings.gradle +0 -1
  136. data/features/fixtures/nuget/.nuget/.keep +0 -0
  137. data/features/fixtures/nuget/Fun.Test/packages.config +0 -4
  138. data/features/fixtures/nuget/Fun/packages.config +0 -5
  139. data/features/fixtures/pom.xml +0 -19
  140. data/features/fixtures/rebar.config +0 -12
  141. data/features/fixtures/single-module-gradle/build.gradle +0 -16
  142. data/features/support/feature_helper.rb +0 -15
  143. data/features/support/testing_dsl.rb +0 -564
  144. data/lib/license_finder/package_managers/merged_package.rb +0 -95
  145. data/license_finder-2.1.2.gem +0 -0
@@ -1 +0,0 @@
1
- github "dmrschmidt/DSWaveformImage" ~> 1.0
@@ -1,3 +0,0 @@
1
- platform :ios, '7.0'
2
- pod 'JSONKit', '~> 1.4'
3
- pod 'ABTest', '~> 0.0.5'
@@ -1,16 +0,0 @@
1
- plugins {
2
- id 'com.github.hierynomus.license' version '0.14.0'
3
- }
4
-
5
- apply plugin: 'java'
6
-
7
- sourceCompatibility = 1.5
8
- version = '1.0'
9
-
10
- repositories {
11
- mavenCentral()
12
- }
13
-
14
- dependencies {
15
- compile 'junit:junit:4.11'
16
- }
@@ -1 +0,0 @@
1
- rootProject.buildFileName = 'build-alt.gradle'
@@ -1,16 +0,0 @@
1
- plugins {
2
- id 'com.github.hierynomus.license' version '0.14.0'
3
- }
4
-
5
- apply plugin: 'java'
6
-
7
- sourceCompatibility = 1.5
8
- version = '1.0'
9
-
10
- repositories {
11
- mavenCentral()
12
- }
13
-
14
- dependencies {
15
- compile 'junit:junit:4.11'
16
- }
@@ -1,11 +0,0 @@
1
- [requires]
2
- range-v3/0.3.0@ericniebler/stable
3
-
4
- [generators]
5
- txt
6
- cmake
7
-
8
- [options]
9
-
10
- [imports]
11
- ., license* -> ./licenses @ folder=True, ignore_case=True
@@ -1,16 +0,0 @@
1
- plugins {
2
- id 'com.github.hierynomus.license' version '0.14.0'
3
- }
4
-
5
- repositories {
6
- mavenCentral()
7
- }
8
-
9
- apply plugin: 'java'
10
-
11
- dependencies {
12
- compile 'com.google.guava:guava:18.0'
13
-
14
- // Import external libraries that are **not** available to download via repo
15
- compile fileTree(dir: 'libs', include: ['*.jar'])
16
- }
@@ -1,16 +0,0 @@
1
- {
2
- "ImportPath": "github.com/pivotal/foo",
3
- "GoVersion": "go1.4.2",
4
- "Deps": [
5
- {
6
- "ImportPath": "github.com/onsi/ginkgo",
7
- "Comment": "v1.2.0-6-gd981d36",
8
- "Rev": "d981d36e9884231afa909627b9c275e4ba678f90"
9
- },
10
- {
11
- "ImportPath": "github.com/onsi/gomega",
12
- "Comment": "v1.0-50-gd6c945f",
13
- "Rev": "d6c945f9fdbf6cad99e85b0feff591caa268e0db"
14
- }
15
- ]
16
- }
@@ -1,5 +0,0 @@
1
- This directory tree is generated automatically by godep.
2
-
3
- Please do not edit.
4
-
5
- See https://github.com/tools/godep for more information.
@@ -1,6 +0,0 @@
1
- package foo
2
-
3
- import (
4
- . "github.com/onsi/ginkgo"
5
- . "github.com/onsi/gomega"
6
- )
@@ -1,14 +0,0 @@
1
- # This file is autogenerated, do not edit; changes may be undone by the next 'dep ensure'.
2
-
3
- [[projects]]
4
- branch = "master"
5
- name = "a/b"
6
- packages = ["."]
7
- revision = "2269160ae1757f96bbb8c6475e6fa36c805e7234"
8
-
9
- [solve-meta]
10
- analyzer-name = "dep"
11
- analyzer-version = 1
12
- inputs-digest = "ab4fef131ee828e96ba67d31a7d690bd5f2f42040c6766b1b12fe856f87e0ff7"
13
- solver-name = "gps-cdcl"
14
- solver-version = 1
@@ -1,7 +0,0 @@
1
- [[constraint]]
2
- name = "github.com/Bowery/prompt"
3
- revision = "0f1139e9a1c74b57ccce6bdb3cd2f7cd04dd3449"
4
-
5
- [[constraint]]
6
- name = "github.com/dchest/safefile"
7
- revision = "855e8d98f1852d48dde521e0522408d1fe7e836a"
@@ -1,10 +0,0 @@
1
- package bar
2
-
3
- import (
4
- prompt "github.com/Bowery/prompt"
5
- safefile "github.com/dchest/safefile"
6
- )
7
-
8
- func FooBar() {
9
-
10
- }
@@ -1,7 +0,0 @@
1
- package foo
2
-
3
- import "fmt"
4
-
5
- func Foo() {
6
- fmt.Println("foo")
7
- }
@@ -1 +0,0 @@
1
- features/fixtures/gopath_dep/src/foo-dep/vendor/a/b/LICENSE
@@ -1,9 +0,0 @@
1
- hash: 4765849129e9fbb9f7ebc620df51f27b6999f1a06bba4ecf92193ffffcf1d684
2
- updated: 2017-09-27T22:42:02.817609367Z
3
- imports:
4
- - name: github.com/Masterminds/cookoo
5
- version: 78aa11ce75e257c51be7ea945edb84cf19c4a6de
6
- repo: https://github.com/Masterminds/cookoo.git
7
- - name: github.com/Masterminds/semver
8
- version: 517734cc7d6470c0d07130e40fd40bdeb9bcd3fd
9
- testImports: []
@@ -1,6 +0,0 @@
1
- package: github.com/Masterminds/glide
2
- import:
3
- - package: github.com/Masterminds/semver
4
- - package: github.com/Masterminds/cookoo
5
- version: ^1.2.0
6
- repo: https://github.com/Masterminds/cookoo.git
@@ -1,9 +0,0 @@
1
- hash: 4765849129e9fbb9f7ebc620df51f27b6999f1a06bba4ecf92193ffffcf1d684
2
- updated: 2017-09-27T22:42:02.817609367Z
3
- imports:
4
- - name: github.com/Masterminds/cookoo
5
- version: 78aa11ce75e257c51be7ea945edb84cf19c4a6de
6
- repo: https://github.com/Masterminds/cookoo.git
7
- - name: github.com/Masterminds/semver
8
- version: 517734cc7d6470c0d07130e40fd40bdeb9bcd3fd
9
- testImports: []
@@ -1,6 +0,0 @@
1
- package: github.com/Masterminds/glide
2
- import:
3
- - package: github.com/Masterminds/semver
4
- - package: github.com/Masterminds/cookoo
5
- version: ^1.2.0
6
- repo: https://github.com/Masterminds/cookoo.git
@@ -1,19 +0,0 @@
1
- {
2
- "comment": "",
3
- "ignore": "test",
4
- "package": [
5
- {
6
- "checksumSHA1": "4Tc07iR3HloUYC4HNT4xc0875WY=",
7
- "path": "github.com/Bowery/prompt",
8
- "revision": "0f1139e9a1c74b57ccce6bdb3cd2f7cd04dd3449",
9
- "revisionTime": "2017-02-19T07:16:37Z"
10
- },
11
- {
12
- "checksumSHA1": "6VGFARaK8zd23IAiDf7a+gglC8k=",
13
- "path": "github.com/dchest/safefile",
14
- "revision": "855e8d98f1852d48dde521e0522408d1fe7e836a",
15
- "revisionTime": "2015-10-22T12:31:44+02:00"
16
- }
17
- ],
18
- "rootPath": "github.com/kardianos/govendor"
19
- }
@@ -1,22 +0,0 @@
1
- {
2
- "version": 0,
3
- "dependencies": [
4
- {
5
- "importpath": "github.com/aws/aws-sdk-go",
6
- "repository": "https://github.com/aws/aws-sdk-go",
7
- "vcs": "git",
8
- "revision": "ea4ed6c6aec305f9c990547f16141b3591493516",
9
- "branch": "master",
10
- "notests": true
11
- },
12
- {
13
- "importpath": "github.com/golang/protobuf/proto",
14
- "repository": "https://github.com/golang/protobuf",
15
- "vcs": "git",
16
- "revision": "8ee79997227bf9b34611aee7946ae64735e6fd93",
17
- "branch": "master",
18
- "path": "/proto",
19
- "notests": true
20
- }
21
- ]
22
- }
@@ -1,16 +0,0 @@
1
- plugins {
2
- id 'com.github.hierynomus.license' version '0.14.0'
3
- }
4
-
5
- apply plugin: 'java'
6
-
7
- sourceCompatibility = 1.5
8
- version = '1.0'
9
-
10
- repositories {
11
- mavenCentral()
12
- }
13
-
14
- dependencies {
15
- compile 'junit:junit:4.11'
16
- }
@@ -1,8 +0,0 @@
1
- #!/bin/sh
2
-
3
- if which gradle; then
4
- gradle "$@"
5
- else
6
- echo "No Gradle installation found. Please install it from https://gradle.org/install/." >&2
7
- exit 1
8
- fi
@@ -1,9 +0,0 @@
1
- @echo off
2
-
3
- where /q gradle.bat
4
- if %ERRORLEVEL% equ 0 (
5
- call gradle.bat %*
6
- ) else (
7
- echo No Gradle installation found. Please install it from https://gradle.org/install/. >&2
8
- exit /b 1
9
- )
@@ -1,3 +0,0 @@
1
- #!/bin/sh
2
-
3
- mvn "$@"
@@ -1,7 +0,0 @@
1
- @echo off
2
- where /q mvn.cmd
3
- if %ERRORLEVEL% equ 0 (
4
- mvn.cmd %*
5
- ) else (
6
- mvn.bat %*
7
- )
@@ -1,37 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <project xmlns="http://maven.apache.org/POM/4.0.0"
3
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5
- <modelVersion>4.0.0</modelVersion>
6
-
7
- <groupId>dummy</groupId>
8
- <artifactId>dummy</artifactId>
9
- <version>1.0-SNAPSHOT</version>
10
-
11
- <dependencies>
12
- <dependency>
13
- <groupId>junit</groupId>
14
- <artifactId>junit</artifactId>
15
- <version>4.11</version>
16
- <scope>test</scope>
17
- </dependency>
18
- </dependencies>
19
-
20
- <build>
21
- <plugins>
22
- <plugin>
23
- <groupId>org.codehaus.mojo</groupId>
24
- <artifactId>license-maven-plugin</artifactId>
25
- <version>1.10</version>
26
- <executions>
27
- <execution>
28
- <id>download-licenses</id>
29
- <goals>
30
- <goal>download-licenses</goal>
31
- </goals>
32
- </execution>
33
- </executions>
34
- </plugin>
35
- </plugins>
36
- </build>
37
- </project>
@@ -1,22 +0,0 @@
1
-
2
- defmodule Awesome.Mixfile do
3
- use Mix.Project
4
-
5
- def project do
6
- [app: :awesome,
7
- version: "0.1.0",
8
- elixir: "~> 1.2",
9
- build_embedded: Mix.env == :prod,
10
- start_permanent: Mix.env == :prod,
11
- deps: deps()]
12
- end
13
-
14
- def application do
15
- [applications: []]
16
- end
17
-
18
- defp deps do
19
- [{:fs, "0.9.1"},
20
- {:uuid, "1.1.5"}]
21
- end
22
- end
@@ -1,12 +0,0 @@
1
- plugins {
2
- id 'com.github.hierynomus.license' version '0.14.0' apply false
3
- }
4
-
5
- allprojects {
6
- apply plugin: 'java'
7
- apply plugin: 'license'
8
-
9
- repositories {
10
- mavenCentral()
11
- }
12
- }
@@ -1,3 +0,0 @@
1
- dependencies {
2
- compile 'junit:junit:4.12'
3
- }
@@ -1,3 +0,0 @@
1
- dependencies {
2
- compile 'org.mockito:mockito-core:1.9.5'
3
- }
@@ -1 +0,0 @@
1
- include ':module1', ':module2'
File without changes
@@ -1,4 +0,0 @@
1
- <?xml version="1.0" encoding="utf-8"?>
2
- <packages>
3
- <package id="NUnit" version="2.6.4" targetFramework="net45" />
4
- </packages>
@@ -1,5 +0,0 @@
1
- <?xml version="1.0" encoding="utf-8"?>
2
- <packages>
3
- <package id="Microsoft.AspNet.Mvc" version="4.0.30506.0" targetFramework="net45" />
4
- <package id="Ninject.MVC4" version="3.2.1.0" targetFramework="net45" />
5
- </packages>
@@ -1,19 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <project xmlns="http://maven.apache.org/POM/4.0.0"
3
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5
- <modelVersion>4.0.0</modelVersion>
6
-
7
- <groupId>dummy</groupId>
8
- <artifactId>dummy</artifactId>
9
- <version>1.0-SNAPSHOT</version>
10
-
11
- <dependencies>
12
- <dependency>
13
- <groupId>junit</groupId>
14
- <artifactId>junit</artifactId>
15
- <version>4.11</version>
16
- <scope>test</scope>
17
- </dependency>
18
- </dependencies>
19
- </project>
@@ -1,12 +0,0 @@
1
- %% -*- mode: erlang -*-
2
- %% -*- tab-width: 4;erlang-indent-level: 4;indent-tabs-mode: nil -*-
3
- %% ex: ts=4 sw=4 ft=erlang et
4
-
5
- {erl_opts, [warnings_as_errors, {parse_transform, lager_transform}, debug_info]}.
6
-
7
- {deps,
8
- [
9
- {envy, ".*",
10
- {git, "git://github.com/manderson26/envy.git", {branch, "master"}}}
11
- ]
12
- }.