You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<imgsrc="https://img.shields.io/pypi/l/fosslight_dependency"alt="FOSSLight Dependency is released under the Apache-2.0 License." /> <imgsrc="https://img.shields.io/pypi/v/fosslight_dependency"alt="Current python package version." /> <imgsrc="https://img.shields.io/pypi/pyversions/fosslight_dependency" />
This is the tool that supports the analysis of dependencies for multiple package managers. It detects the manifest file of package managers automatically and analyzes the dependencies with using open source tools. Then, it generates the report file that contains OSS information of dependencies.
8
8
9
9
Currently, it supports the following package managers.
@@ -15,25 +15,15 @@ Currently, it supports the following package managers.
Please see the [User Guide](/docs/user-guide.md) for more information on how to run each package manager.
18
+
## 📖 User Guide
19
+
Please see the [**User Guide**](https://github.com/fosslight/fosslight_dependency/blob/main/docs/user-guide.md) for more information on how to install and run it.
20
20
21
21
22
-
## Contributing Guide
23
-
We always welcome your contributions.
24
-
Please see the [CONTRIBUTING guide](/CONTRIBUTING.md) for how to contribute.
25
-
26
-
## License
27
-
Unless otherwise specified, all content, including all source code files and documentation files in this repository are:
28
-
29
-
Copyright (c) 2020 LG Electronics, Inc.
30
-
31
-
All content, including all source code files and documentation files in this repository except otherwise noted are: Licensed under the Apache License, Version 2.0 (the "License"); you may not use this content except in compliance with the License. You may obtain a copy of the License at
32
-
33
-
http://www.apache.org/licenses/LICENSE-2.0
34
-
35
-
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
36
-
37
-
SPDX-License-Identifier: Apache-2.0
22
+
## 👏 Contributing Guide
23
+
We always welcome your contributions.
24
+
Please see the [CONTRIBUTING guide](https://github.com/fosslight/fosslight_dependency/blob/main/CONTRIBUTING.md) for how to contribute.
38
25
26
+
## 📄 License
39
27
28
+
Copyright (c) 2020 LG Electronics, Inc.
29
+
FOSSLight Dependency is licensed under Apache-2.0, as found in the [LICENSE](https://github.com/fosslight/fosslight_dependency/blob/main/LICENSE) file.
-[How to analyze the dependencies](#-how-to-analyze-the-dependencies)
9
+
-[Prerequisite](#-prerequisite)
10
+
-[NPM](#npm)
11
+
-[Gradle](#gradle)
12
+
-[Pypi](#pypi)
13
+
-[Maven](#maven-optional)
14
+
-[Pub](#pub)
15
+
-[Cocoapods](#cocoapods)
16
+
-[How to install](#-how-to-install)
17
+
-[How to run](#-how-to-run)
18
+
-[Result](#-result)
19
+
2
20
<br>
3
21
4
-
## 1. Prerequisite
5
-
### How to analyze the dependencies
6
-
FOSSLight dependency utilizes the open source software for analyzing each package manager dependencies. We choose the open source software for each package manager that shows not only the direct dependencies but also the transitive dependencies including the information of dependencies such as oss name, oss version and license name.
22
+
## 🧐 How to analyze the dependencies
23
+
FOSSLight Dependency utilizes the open source software for analyzing each package manager dependencies. We choose the open source software for each package manager that shows not only the direct dependencies but also the transitive dependencies including the information of dependencies such as oss name, oss version and license name.
7
24
8
25
Each package manager uses the results of the following software:
Because we utilizes the different open source software to analyze the dependencies of each package manager, you need to set up the below steps according to package manager to analyze.
32
+
Because we utilizes the different open source software to analyze the dependencies of each package manager, you need to set up the below [Prerequisite](#-prerequisite) steps according to package manager to analyze.
33
+
34
+
<br>
16
35
36
+
## 📋 Prerequisite
17
37
### NPM
18
-
1. Install the NPM License Checker to ananlyze the npm dependencies. (required)
38
+
1. Install the NPM License Checker to ananlyze the npm dependencies.
19
39
```
20
40
$ npm install -g license-checker
21
41
```
22
-
2. Run the command to install the dependencies (optional)
42
+
2. Run the command to install the dependencies. (optional)
23
43
```
24
44
$ npm install
25
45
```
46
+
> - If the 'package.json' file exists in the input directory, it will be executed automatically by FOSSLight Dependency. So you can skip it.
47
+
> - If the 'node_modules' directory already exists, you can run FOSSLight dependency by setting the input directory to the path where node_modules is located.
26
48
27
-
### Gradle (required)
49
+
<br>
50
+
51
+
### Gradle
28
52
1. Add the License Gradle Plugin in build.gradle file.
29
53
```
30
54
plugins {
@@ -33,29 +57,40 @@ plugins {
33
57
34
58
downloadLicenses {
35
59
includeProjectDependencies = true
36
-
dependencyConfiguration = 'runtimeClasspath' // If the gradle version is 4.6 or lower, then add the 'runtime' instead of 'runtimeClasspath'.
60
+
dependencyConfiguration = 'runtimeClasspath'
37
61
}
38
62
```
39
-
2. Run the task.
63
+
> - If the gradle version is 4.6 or lower, then add the 'runtime' instead of 'runtimeClasspath' in the dependencyConfiguration.
64
+
65
+
2. Run the 'downloadLicenses' task.
40
66
```
41
67
$ gradle downloadLicenses
42
68
```
43
69
44
-
### Pypi (required)
45
-
You can run this tool with virtualenv environment for separating the project dependencies from system dependencies.
46
-
1. Create the virtualenv environment
70
+
<br>
71
+
72
+
### Pypi
73
+
You can run this tool with virtual environment for separating the project dependencies from system global dependencies.
74
+
1. Create and activate the virtual environment
47
75
```
76
+
// virtualenv example
77
+
$ virtualenv -p /usr/bin/python3.6 venv
78
+
$ source venv/bin/activate
79
+
48
80
// conda example
49
81
$ conda create --name {venv name}
50
82
$ conda activate {venv name}
51
83
```
52
-
2. Install the dependencies
84
+
2. Install the dependencies in the virtual environment.
53
85
```
54
86
// If you install the dependencies with requirements.txt...
55
87
$ pip install -r requirements.txt
56
88
```
57
89
90
+
<br>
91
+
58
92
### Maven (optional)
93
+
> - If the 'pom.xml' is located in the input directory, FOSSLight dependency will automatically add and execute the license-maven-plugin. So you can skip the prerequisites below.
59
94
1. Add the license-maven-plugin into pom.xml file.
In other words, the input directory('-p' option) should be designated as the top directory of the project where the package manager's manifest file exists as above.
147
186
148
187
<br>
149
188
150
-
## 4. How to generate Result file
151
-
FOSSLight dependency creates the result file that has xlsx extension (Microsoft Excel file).
189
+
## 📁 Result
190
+
FOSSLight Dependency creates the result file that has xlsx extension (Microsoft Excel file).
152
191
153
192
It prints the OSS information based on manifest file(package.json, pom.xml) of dependencies (including transitive dependenices).
154
193
For a unique OSS name, OSS name is printed such as (package_manager):(oss name) or (group id):(artifact id).
0 commit comments