licensed 4.0.0 → 4.0.2
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 +13 -1
- data/docs/sources/gradle.md +11 -1
- data/lib/licensed/sources/gradle.rb +25 -21
- data/lib/licensed/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f4589c212dd085a4f62711a077b50ec04ee1ca398a1c4b39e29644caebd4795e
|
4
|
+
data.tar.gz: e2366f102dec2839fa56e3050ceedcba249ecc9fb8012a2cf5074356918a20f4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c40137a979df559cb8b3adeaf4645c453102b96b7b177fcf391276eb0b93154e10be855325021c231ea1ebd27fca55d43d858ba77b73051a07f1f783d122eeba
|
7
|
+
data.tar.gz: 856405d0edbd8dc18d29705004e361a3307fb52efbea60372d17adb941f0a8ebccc977548bae136b16e3956607354b1ab8a3a646fef44344d942e44b83be23f7
|
data/CHANGELOG.md
CHANGED
@@ -6,6 +6,18 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
|
|
6
6
|
|
7
7
|
## [Unreleased]
|
8
8
|
|
9
|
+
## 4.0.2
|
10
|
+
|
11
|
+
### Fixed
|
12
|
+
|
13
|
+
- The path to a gradlew executable can be configured when enumerating gradle dependencies (:tada: @LouisBoudreau https://github.com/github/licensed/pull/610)
|
14
|
+
|
15
|
+
## 4.0.1
|
16
|
+
|
17
|
+
### Fixed
|
18
|
+
|
19
|
+
- Running gradle tests will no longer fail when gradle is not available (https://github.com/github/licensed/pull/606)
|
20
|
+
|
9
21
|
## 4.0.0
|
10
22
|
|
11
23
|
### Added
|
@@ -677,4 +689,4 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
|
|
677
689
|
|
678
690
|
Initial release :tada:
|
679
691
|
|
680
|
-
[Unreleased]: https://github.com/github/licensed/compare/4.0.
|
692
|
+
[Unreleased]: https://github.com/github/licensed/compare/4.0.2...HEAD
|
data/docs/sources/gradle.md
CHANGED
@@ -14,6 +14,7 @@ gradle:
|
|
14
14
|
- runtime
|
15
15
|
- runtimeClassPath
|
16
16
|
```
|
17
|
+
|
17
18
|
### Multi-build projects
|
18
19
|
|
19
20
|
To run `licensed` for specific projects in a [multi-build project](https://docs.gradle.org/current/userguide/multi_project_builds.html) you must specify the [apps](../configuration/application_source.md) configuration key.
|
@@ -21,4 +22,13 @@ To run `licensed` for specific projects in a [multi-build project](https://docs.
|
|
21
22
|
```yml
|
22
23
|
apps:
|
23
24
|
- source_path: ./path/to/subproject
|
24
|
-
```
|
25
|
+
```
|
26
|
+
|
27
|
+
### Gradlew
|
28
|
+
|
29
|
+
The `gradle.gradlew` property is used to determine where the `gradlew` executable is. The default location the [configuration root](../configuration/configuration_root.md).
|
30
|
+
|
31
|
+
```yml
|
32
|
+
gradle:
|
33
|
+
gradlew: path/from/root/to/gradle/gradlew
|
34
|
+
```
|
@@ -42,7 +42,7 @@ module Licensed
|
|
42
42
|
end
|
43
43
|
|
44
44
|
def enabled?
|
45
|
-
|
45
|
+
!executable.to_s.empty? && File.exist?(config.pwd.join("build.gradle"))
|
46
46
|
end
|
47
47
|
|
48
48
|
def enumerate_dependencies
|
@@ -62,8 +62,18 @@ module Licensed
|
|
62
62
|
|
63
63
|
private
|
64
64
|
|
65
|
+
def executable
|
66
|
+
return @executable if defined?(@executable)
|
67
|
+
|
68
|
+
@executable = begin
|
69
|
+
return gradlew if File.executable?(gradlew)
|
70
|
+
|
71
|
+
"gradle" if Licensed::Shell.tool_available?("gradle")
|
72
|
+
end
|
73
|
+
end
|
74
|
+
|
65
75
|
def gradle_runner
|
66
|
-
@gradle_runner ||= Runner.new(config.pwd, configurations)
|
76
|
+
@gradle_runner ||= Runner.new(config.pwd, configurations, executable)
|
67
77
|
end
|
68
78
|
|
69
79
|
# Returns the configurations to include in license generation.
|
@@ -78,6 +88,14 @@ module Licensed
|
|
78
88
|
end
|
79
89
|
end
|
80
90
|
|
91
|
+
# Returns the path to the Gradle wrapper.
|
92
|
+
def gradlew
|
93
|
+
@gradlew ||= begin
|
94
|
+
gradlew = config.dig("gradle", "gradlew")
|
95
|
+
config.root.join(gradlew || "gradlew").to_s
|
96
|
+
end
|
97
|
+
end
|
98
|
+
|
81
99
|
# Returns a key to uniquely identify a name and version in the obtained CSV content
|
82
100
|
def csv_key(name:, version:)
|
83
101
|
"#{name}-#{version}"
|
@@ -116,8 +134,9 @@ module Licensed
|
|
116
134
|
# The Gradle::Runner class is a wrapper which provides
|
117
135
|
# an interface to run gradle commands with the init script initialized
|
118
136
|
class Runner
|
119
|
-
def initialize(root_path, configurations)
|
137
|
+
def initialize(root_path, configurations, executable)
|
120
138
|
@root_path = root_path
|
139
|
+
@executable = executable
|
121
140
|
@init_script = create_init_script(root_path, configurations)
|
122
141
|
end
|
123
142
|
|
@@ -126,28 +145,13 @@ module Licensed
|
|
126
145
|
# The configuration cache is an incubating feature that can be activated manually.
|
127
146
|
# The gradle plugin for licenses does not support it so we prevent it to run for gradle version supporting it.
|
128
147
|
args << "--no-configuration-cache" if gradle_version >= "6.6"
|
129
|
-
Licensed::Shell.execute(executable, "-q", "--init-script", @init_script.path, *args)
|
130
|
-
end
|
131
|
-
|
132
|
-
def enabled?
|
133
|
-
!executable.to_s.empty?
|
148
|
+
Licensed::Shell.execute(@executable, "-q", "--init-script", @init_script.path, *args)
|
134
149
|
end
|
135
150
|
|
136
151
|
private
|
137
152
|
|
138
153
|
def gradle_version
|
139
|
-
@gradle_version ||= Licensed::Shell.execute(executable, "--version").scan(/Gradle [\d+]\.[\d+]/).last.split(" ").last
|
140
|
-
end
|
141
|
-
|
142
|
-
def executable
|
143
|
-
return @executable if defined?(@executable)
|
144
|
-
|
145
|
-
@executable = begin
|
146
|
-
gradlew = File.join(@root_path, "gradlew")
|
147
|
-
return gradlew if File.executable?(gradlew)
|
148
|
-
|
149
|
-
"gradle" if Licensed::Shell.tool_available?("gradle")
|
150
|
-
end
|
154
|
+
@gradle_version ||= Licensed::Shell.execute(@executable, "--version").scan(/Gradle [\d+]\.[\d+]/).last.split(" ").last
|
151
155
|
end
|
152
156
|
|
153
157
|
def create_init_script(path, configurations)
|
@@ -202,7 +206,7 @@ module Licensed
|
|
202
206
|
# Prefixes the gradle command with the project name for multi-build projects.
|
203
207
|
def format_command(command, source_path)
|
204
208
|
Dir.chdir(source_path) do
|
205
|
-
path = Licensed::Shell.execute(executable, "properties", "-Dorg.gradle.logging.level=quiet").scan(/path:.*/).last.split(" ").last
|
209
|
+
path = Licensed::Shell.execute(@executable, "properties", "-Dorg.gradle.logging.level=quiet").scan(/path:.*/).last.split(" ").last
|
206
210
|
path == ":" ? command : "#{path}:#{command}"
|
207
211
|
end
|
208
212
|
end
|
data/lib/licensed/version.rb
CHANGED
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: 4.0.
|
4
|
+
version: 4.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- GitHub
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-01-
|
11
|
+
date: 2023-01-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: licensee
|