Skip to content

Commit 61c3283

Browse files
committed
Merge latest develop
Signed-off-by: Philippe Ombredanne <pombredanne@nexb.com>
2 parents ba11f05 + 566baa5 commit 61c3283

101 files changed

Lines changed: 11291 additions & 1084 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
/src/*.egg-info
1212
*.egg-info
1313
!tests/packagedcode/data/pypi/source-package/pip-22.0.4/src/pip.egg-info
14+
!tests/packagedcode/data/pypi/unpacked_sdist/prefer-egg-info-pkg-info/celery/celery.egg-info
1415
/dist
1516
/build
1617
/bin

CHANGELOG.rst

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,30 @@ Package detection:
1414
- OpenWRT packages.
1515
- Yocto/BitBake .bb recipes.
1616

17+
- Update ``GemfileLockParser`` to track the gem which the Gemfile.lock is for,
18+
which we assign to the new ``GemfileLockParser.primary_gem`` field. Update
19+
``GemfileLockHandler.parse()`` to handle the case where there is a primary gem
20+
detected from a gemfile.lock. If there is a primary gem, a single ``Package``
21+
is created and the detected gem data within the gemfile.lock are assigned as
22+
dependencies. If there is no primary gem, then all of the dependencies are
23+
collected into Package with no name and yielded.
24+
25+
https://github.com/nexB/scancode-toolkit/issues/3072
26+
27+
- Fix issue where dependencies were not reported when scanning an extracted
28+
Python project by modifying ``BaseExtractedPythonLayout.assemble()`` to favor
29+
using package data from a PKG-INFO file from an egg-info directory. Package
30+
data from a PKG-INFO file from an egg-info directory contains the dependency
31+
information collected from the requirements.txt file along side PKG-INFO.
32+
33+
https://github.com/nexB/scancode-toolkit/issues/3083
34+
35+
- Fix issue where we were returning incorrect purl package ``type`` for cocoapods.
36+
``pods`` was being returned as a purl type for cocoapods, it should be
37+
``cocoapods`` instead.
38+
https://github.com/package-url/purl-spec/blob/master/PURL-TYPES.rst#cocoapods
39+
40+
https://github.com/nexB/scancode-toolkit/issues/3081
1741

1842
License detection:
1943
~~~~~~~~~~~~~~~~~~~

docs/source/explanations/overview.rst

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -27,18 +27,18 @@ ScanCode-Toolkit performs the scan on a codebase in the following steps :
2727

2828
Scan results are provided in various formats:
2929

30-
- a JSON file simple or pretty-printed,
31-
- SPDX tag value or XML, RDF formats,
32-
- CSV,
33-
- a simple unformatted HTML file that can be opened in browser or as a spreadsheet.
30+
* a JSON file simple or pretty-printed,
31+
* SPDX tag value or XML, RDF formats,
32+
* CSV,
33+
* a simple unformatted HTML file that can be opened in browser or as a spreadsheet.
3434

3535
For each scanned file, the result contains:
3636

37-
- its location in the codebase,
38-
- the detected licenses and copyright statements,
39-
- the start and end line numbers identifying where the license or copyright was found in the
37+
* its location in the codebase,
38+
* the detected licenses and copyright statements,
39+
* the start and end line numbers identifying where the license or copyright was found in the
4040
scanned file, and
41-
- reference information for the detected license.
41+
* reference information for the detected license.
4242

4343
For archive extraction, ScanCode uses a combination of Python modules, 7zip and libarchive/bsdtar
4444
to detect archive types and extract these recursively.
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
Common Cure Rights Commitment
2+
Version 1.0
3+
4+
Before filing or continuing to prosecute any legal proceeding or claim
5+
(other than a Defensive Action) arising from termination of a Covered
6+
License, we commit to extend to the person or entity ('you') accused
7+
of violating the Covered License the following provisions regarding
8+
cure and reinstatement, taken from GPL version 3. As used here, the
9+
term 'this License' refers to the specific Covered License being
10+
enforced.
11+
12+
However, if you cease all violation of this License, then your
13+
license from a particular copyright holder is reinstated (a)
14+
provisionally, unless and until the copyright holder explicitly
15+
and finally terminates your license, and (b) permanently, if the
16+
copyright holder fails to notify you of the violation by some
17+
reasonable means prior to 60 days after the cessation.
18+
19+
Moreover, your license from a particular copyright holder is
20+
reinstated permanently if the copyright holder notifies you of the
21+
violation by some reasonable means, this is the first time you
22+
have received notice of violation of this License (for any work)
23+
from that copyright holder, and you cure the violation prior to 30
24+
days after your receipt of the notice.
25+
26+
We intend this Commitment to be irrevocable, and binding and
27+
enforceable against us and assignees of or successors to our
28+
copyrights.
29+
30+
Definitions
31+
32+
'Covered License' means the GNU General Public License, version 2
33+
(GPLv2), the GNU Lesser General Public License, version 2.1
34+
(LGPLv2.1), or the GNU Library General Public License, version 2
35+
(LGPLv2), all as published by the Free Software Foundation.
36+
37+
'Defensive Action' means a legal proceeding or claim that We bring
38+
against you in response to a prior proceeding or claim initiated by
39+
you or your affiliate.
40+
41+
'We' means each contributor to this repository as of the date of
42+
inclusion of this file, including subsidiaries of a corporate
43+
contributor.
44+
45+
This work is available under a Creative Commons Attribution-ShareAlike
46+
4.0 International license (https://creativecommons.org/licenses/by-sa/4.0/).
47+
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
This library is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version.
2+
3+
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
4+
5+
You should have received a copy of the GNU General Public License along with this library; see the file COPYING. If not, write to the Free Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
6+
7+
Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination.
8+
9+
As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
This library is free software; you can redistribute it and/or modify it
2+
under the terms of the GNU General Public License as published by the
3+
Free Software Foundation; either version 2, or (at your option) any
4+
later version.
5+
6+
This library is distributed in the hope that it will be useful, but
7+
WITHOUT ANY WARRANTY; without even the implied warranty of
8+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
9+
General Public License for more details.
10+
11+
You should have received a copy of the GNU General Public License along
12+
with this library; see the file COPYING. If not, write to the Free
13+
Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA
14+
02110-1301, USA.
15+
16+
The library is released under the GPL with the following exception:
17+
18+
Linking this library statically or dynamically with other modules is
19+
making a combined work based on this library. Thus, the terms and
20+
conditions of the GNU General Public License cover the whole
21+
combination.
22+
23+
As a special exception, the copyright holders of this library give you
24+
permission to link this library with independent modules to produce an
25+
executable, regardless of the license terms of these independent
26+
modules, and to copy and distribute the resulting executable under terms
27+
of your choice, provided that you also meet, for each linked independent
28+
module, the terms and conditions of the license of that module. An
29+
independent module is a module which is not derived from or based on
30+
this library. If you modify this library, you may extend this exception
31+
to your version of the library, but you are not obligated to do so. If
32+
you do not wish to do so, delete this exception statement from your
33+
version.
34+
35+
Note The exception is changed to reflect the latest GNU Classpath
36+
exception. Older versions of #ziplib did have another exception, but the
37+
new one is clearer and it doesn't break compatibility with the old one.
38+
39+
Bottom line In plain English this means you can use this library in
40+
commercial closed-source applications.
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
The software in this package is distributed under the GNU General Public
2+
License with the "Library Exception" described below. A copy of GNU
3+
General Public License (GPL) is included in this distribution, in the
4+
file LICENSE-GPL.txt. All the files distributed under GPL also include
5+
the following special exception:
6+
7+
As a special exception, the copyright holders of this library give you
8+
permission to link this library with independent modules to produce an
9+
executable, regardless of the license terms of these independent
10+
modules, and to copy and distribute the resulting executable under terms
11+
of your choice, provided that you also meet, for each linked independent
12+
module, the terms and conditions of the license of that module. An
13+
independent module is a module which is not derived from or based on
14+
this library. If you modify this library, you may extend this exception
15+
to your version of the library, but you are not obligated to do so. If
16+
you do not wish to do so, delete this exception statement from your
17+
version.
18+
19+
As such, this software can be used to run free as well as proprietary
20+
applications and applets. Modifications made to the classes in this
21+
distribution must however be distributed under the GPL, optionally with
22+
the same exception as above.
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
This library is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version.
2+
3+
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
4+
5+
You should have received a copy of the GNU General Public License along with this library; see the file COPYING. If not, write to the Free Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
6+
7+
"CLASSPATH" EXCEPTION TO THE GPL VERSION 2
8+
9+
Certain source files distributed by Sun Microsystems, Inc. are subject to the following clarification and special exception to the GPL Version 2, but only where Sun has expressly included in the particular source file's header the words
10+
11+
"Sun designates this particular file as subject to the "Classpath" exception as provided by Sun in the License file that accompanied this code."
12+
13+
Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License Version 2 cover the whole combination.
14+
15+
As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.
16+
17+
OPENJDK ASSEMBLY EXCEPTION
18+
19+
The OpenJDK source code made available openjdk.dev.java.net ("OpenJDK Code") is distributed under the terms of the GNU General Public License <http://www.gnu.org/copyleft/gpl.html> version 2 only ("GPL2"), with the following clarification and special exception.
20+
21+
Linking this OpenJDK Code statically or dynamically with other code is making a combined work based on this library. Thus, the terms and conditions of GPL2 cover the whole combination.
22+
23+
As a special exception, Sun gives you permission to link this OpenJDK Code with certain code licensed by Sun as indicated at http://openjdk.java.net/legal/exception-modules-2007-05-08.html ("Designated Exception Modules") to produce an executable, regardless of the license terms of the Designated Exception Modules, and to copy and distribute the resulting executable under GPL2, provided that the Designated Exception Modules continue to be governed by the licenses under which they were offered by Sun.
24+
25+
As such, it allows licensees and sublicensees of Sun's GPL2 OpenJDK Code to build an executable that includes those portions of necessary code that Sun could not provide under GPL2 (or that Sun has provided under GPL2 with the Classpath exception). If you modify or add to the OpenJDK code, that new GPL2 code may still be combined with Designated Exception Modules if the new code is made subject to this exception by its copyright holder.
26+
27+
from http://openjdk.java.net/legal/exception-modules-2007-05-08.html
28+
OpenJDK Designated Exception Modules
29+
8 May 2007
30+
For purposes of those files in the OpenJDK distribution that are subject to the Assembly Exception, the following shall be deemed Designated Exception Modules:
31+
32+
Those files in the OpenJDK distribution available at openjdk.java.net, openjdk.dev.java.net, and download.java.net to which Sun has applied the Classpath Exception,
33+
34+
Any of your derivative works of #1 above, to the extent you license them under the GPLv2 with the Classpath Exception as defined in the OpenJDK distribution available at openjdk.java.net, openjdk.dev.java.net, or download.java.net,
35+
36+
Any files in the OpenJDK distribution that are made available at openjdk.java.net, openjdk.dev.java.net, or download.java.net under a binary code license, and
37+
38+
Any files in the OpenJDK distribution that are made available at openjdk.java.net, openjdk.dev.java.net, or download.java.net under an open source license other than GPL, and your derivatives thereof that are in compliance with the applicable open source license.
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
This library is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version.
2+
3+
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
4+
5+
You should have received a copy of the GNU General Public License along with this library; see the file COPYING. If not, write to the Free Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
6+
7+
"CLASSPATH" EXCEPTION TO THE GPL
8+
9+
Certain source files distributed by Oracle America and/or its affiliates are
10+
subject to the following clarification and special exception to the GPL, but
11+
only where Oracle has expressly included in the particular source file's header
12+
the words "Oracle designates this particular file as subject to the "Classpath"
13+
exception as provided by Oracle in the LICENSE file that accompanied this code."
14+
15+
Linking this library statically or dynamically with other modules is making
16+
a combined work based on this library. Thus, the terms and conditions of
17+
the GNU General Public License cover the whole combination.
18+
19+
As a special exception, the copyright holders of this library give you
20+
permission to link this library with independent modules to produce an
21+
executable, regardless of the license terms of these independent modules,
22+
and to copy and distribute the resulting executable under terms of your
23+
choice, provided that you also meet, for each linked independent module,
24+
the terms and conditions of the license of that module. An independent
25+
module is a module which is not derived from or based on this library. If
26+
you modify this library, you may extend this exception to your version of
27+
the library, but you are not obligated to do so. If you do not wish to do
28+
so, delete this exception statement from your version.
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
This license governs use of the accompanying software. If you use the software, you accept this license. If you do not accept the license, do not use the software.
2+
3+
1. Definitions
4+
The terms "reproduce," "reproduction" and "distribution" have the same meaning here as under U.S. copyright law.
5+
6+
"You" means the licensee of the software.
7+
8+
"Your company" means the company you worked for when you downloaded the software.
9+
10+
"Reference use" means use of the software within your company as a reference, in read only form, for the sole purposes of debugging your products, maintaining your products, or enhancing the interoperability of your products with the software, and specifically excludes the right to distribute the software outside of your company.
11+
12+
"Licensed patents" means any Licensor patent claims which read directly on the software as distributed by the Licensor under this license.
13+
14+
2. Grant of Rights
15+
(A) Copyright Grant- Subject to the terms of this license, the Licensor grants you a non-transferable, non-exclusive, worldwide, royalty-free copyright license to reproduce the software for reference use.
16+
17+
(B) Patent Grant- Subject to the terms of this license, the Licensor grants you a non-transferable, non-exclusive, worldwide, royalty-free patent license under licensed patents for reference use.
18+
19+
3. Limitations
20+
(A) No Trademark License- This license does not grant you any rights to use the Licensor's name,
21+
logo, or trademarks.
22+
23+
(B) If you begin patent litigation against the Licensor over patents that you think may apply to the software (including a cross-claim or counterclaim in a lawsuit), your license to the software ends automatically.
24+
25+
(C) The software is licensed "as-is." You bear the risk of using it. The Licensor gives no express warranties, guarantees or conditions. You may have additional consumer rights under your local laws which this license cannot change. To the extent permitted under your local laws, the Licensor excludes the implied warranties of merchantability, fitness for a particular purpose and non-infringement.

0 commit comments

Comments
 (0)