licensed 2.0.0 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -1
- data/lib/licensed/commands/cache.rb +4 -0
- data/lib/licensed/commands/command.rb +9 -3
- data/lib/licensed/dependency.rb +17 -14
- data/lib/licensed/reporters/cache_reporter.rb +16 -0
- data/lib/licensed/reporters/reporter.rb +4 -0
- data/lib/licensed/version.rb +1 -1
- data/licensed.gemspec +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c0f8ca7a1d4607f4051c9347ce5d9de2b42fa46f
|
4
|
+
data.tar.gz: 9a0aee1b3d112ca9c57ea0ec74db1c91e62048cd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3e9c5fcd573bbe2bd7a275ac60ae90423d207b87673d900e95322404081f2aefd7db237aef8f582a5bf51b9e007e271e49a28b8cb73e7df612c5e5559b8c9954
|
7
|
+
data.tar.gz: ea703164f15583a9eb0728055a2443ddde2e14e53a0b93fae2dcada23ca64b926f8e4821ad1c76edf0397a3af8abd0540790084e3d93e741b2cb1fadaff7f4d8
|
data/CHANGELOG.md
CHANGED
@@ -6,6 +6,13 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
|
|
6
6
|
|
7
7
|
## [Unreleased]
|
8
8
|
|
9
|
+
## 2.0.1 - 2019-02-14
|
10
|
+
|
11
|
+
### Changes
|
12
|
+
- Dependency paths that don't exist on the local disk are reported as warnings
|
13
|
+
- Cache, status and list output is sorted by app name, source type and dependency name
|
14
|
+
- Bumped `licensee` gem requirement
|
15
|
+
|
9
16
|
## 2.0.0 - 2019-02-09
|
10
17
|
|
11
18
|
**This is a major release and includes breaking changes to the configuration and cached record file formats**
|
@@ -133,4 +140,4 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
|
|
133
140
|
|
134
141
|
Initial release :tada:
|
135
142
|
|
136
|
-
[Unreleased]: https://github.com/github/licensed/compare/2.0.
|
143
|
+
[Unreleased]: https://github.com/github/licensed/compare/2.0.1...HEAD
|
@@ -20,7 +20,9 @@ module Licensed
|
|
20
20
|
@options = options
|
21
21
|
begin
|
22
22
|
result = reporter.report_run(self) do
|
23
|
-
config.apps.
|
23
|
+
config.apps.sort_by { |app| app["name"] }
|
24
|
+
.map { |app| run_app(app) }
|
25
|
+
.all?
|
24
26
|
end
|
25
27
|
ensure
|
26
28
|
@options = nil
|
@@ -41,7 +43,9 @@ module Licensed
|
|
41
43
|
reporter.report_app(app) do |report|
|
42
44
|
Dir.chdir app.source_path do
|
43
45
|
begin
|
44
|
-
app.sources.select(&:enabled?)
|
46
|
+
app.sources.select(&:enabled?)
|
47
|
+
.sort_by { |source| source.class.type }
|
48
|
+
.map { |source| run_source(app, source) }.all?
|
45
49
|
rescue Licensed::Shell::Error => err
|
46
50
|
report.errors << err.message
|
47
51
|
false
|
@@ -60,7 +64,9 @@ module Licensed
|
|
60
64
|
def run_source(app, source)
|
61
65
|
reporter.report_source(source) do |report|
|
62
66
|
begin
|
63
|
-
source.dependencies.
|
67
|
+
source.dependencies.sort_by { |dependency| dependency.name }
|
68
|
+
.map { |dependency| run_dependency(app, source, dependency) }
|
69
|
+
.all?
|
64
70
|
rescue Licensed::Shell::Error => err
|
65
71
|
report.errors << err.message
|
66
72
|
false
|
data/lib/licensed/dependency.rb
CHANGED
@@ -23,9 +23,8 @@ module Licensed
|
|
23
23
|
def initialize(name:, version:, path:, search_root: nil, metadata: {}, errors: [])
|
24
24
|
# check the path for default errors if no other errors
|
25
25
|
# were found when loading the dependency
|
26
|
-
if errors.empty?
|
27
|
-
|
28
|
-
errors.push(path_error) if path_error
|
26
|
+
if errors.empty? && path.to_s.empty?
|
27
|
+
errors.push("dependency path not found")
|
29
28
|
end
|
30
29
|
|
31
30
|
@name = name
|
@@ -47,6 +46,21 @@ module Licensed
|
|
47
46
|
super(path, search_root: search_root, detect_readme: true, detect_packages: true)
|
48
47
|
end
|
49
48
|
|
49
|
+
# Returns whether the dependency exists locally
|
50
|
+
def exist?
|
51
|
+
# some types of dependencies won't necessarily have a path that exists,
|
52
|
+
# but they can still find license contents between the given path and
|
53
|
+
# the search root
|
54
|
+
# @root is defined
|
55
|
+
path.exist? || File.exist?(@root)
|
56
|
+
end
|
57
|
+
|
58
|
+
# Returns the location of this dependency on the local disk
|
59
|
+
def path
|
60
|
+
# exposes the private method Licensee::Projects::FSProject#dir_path
|
61
|
+
dir_path
|
62
|
+
end
|
63
|
+
|
50
64
|
# Returns true if the dependency has any errors, false otherwise
|
51
65
|
def errors?
|
52
66
|
errors.any?
|
@@ -96,17 +110,6 @@ module Licensed
|
|
96
110
|
|
97
111
|
private
|
98
112
|
|
99
|
-
def path_error(path, search_root)
|
100
|
-
return "dependency path not found" if path.to_s.empty?
|
101
|
-
return if File.exist?(path)
|
102
|
-
return if search_root && File.exist?(search_root)
|
103
|
-
|
104
|
-
# if the given path doesn't exist
|
105
|
-
# AND a search root isn't given, or the search root doesn't exist
|
106
|
-
# then set an error that the expected dependency path doesn't exist
|
107
|
-
"expected dependency path #{path} does not exist"
|
108
|
-
end
|
109
|
-
|
110
113
|
# Returns the sources for a group of license or notice file contents
|
111
114
|
#
|
112
115
|
# Sources are returned as a single string with sources separated by ", "
|
@@ -27,6 +27,22 @@ module Licensed
|
|
27
27
|
shell.info " #{source.class.type}"
|
28
28
|
result = yield report
|
29
29
|
|
30
|
+
warning_reports = report.all_reports.select { |report| report.warnings.any? }.to_a
|
31
|
+
if warning_reports.any?
|
32
|
+
shell.newline
|
33
|
+
shell.warn " * Warnings:"
|
34
|
+
warning_reports.each do |report|
|
35
|
+
display_metadata = report.map { |k, v| "#{k}: #{v}" }.join(", ")
|
36
|
+
|
37
|
+
shell.warn " * #{report.name}"
|
38
|
+
shell.warn " #{display_metadata}" unless display_metadata.empty?
|
39
|
+
report.warnings.each do |warning|
|
40
|
+
shell.warn " - #{warning}"
|
41
|
+
end
|
42
|
+
shell.newline
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
30
46
|
errored_reports = report.all_reports.select { |report| report.errors.any? }.to_a
|
31
47
|
if errored_reports.any?
|
32
48
|
shell.newline
|
data/lib/licensed/version.rb
CHANGED
data/licensed.gemspec
CHANGED
@@ -23,7 +23,7 @@ Gem::Specification.new do |spec|
|
|
23
23
|
|
24
24
|
spec.required_ruby_version = ">= 2.3.0"
|
25
25
|
|
26
|
-
spec.add_dependency "licensee", "~> 9.
|
26
|
+
spec.add_dependency "licensee", "~> 9.10"
|
27
27
|
spec.add_dependency "thor", "~> 0.19"
|
28
28
|
spec.add_dependency "pathname-common_prefix", "~> 0.0.1"
|
29
29
|
spec.add_dependency "tomlrb", "~> 1.2"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: licensed
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- GitHub
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-02-
|
11
|
+
date: 2019-02-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: licensee
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '9.
|
19
|
+
version: '9.10'
|
20
20
|
type: :runtime
|
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: '9.
|
26
|
+
version: '9.10'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: thor
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|