11Changelog
22=========
33
4- 31.0.0 (next, future )
4+ 31.0.0 (next, roadmap )
55-----------------------
66
77
88Important API changes:
99~~~~~~~~~~~~~~~~~~~~~~~~
1010
11- - The data structure of the JSON output is now versioned and the next version
12- is available with a new command line option. We are also documenting a new
13- and clear API policy and backward compatibility policy.
14-
1511- The data structure of the JSON output has changed for copyrights, authors
1612 and holders: we now use proper name for attributes and not a generic "value".
1713
1814- The data structure of the JSON output has changed for licenses: we now
1915 return match details once for each matched license expression rather than
2016 once for each license in a matched expression. There is a new top-level
21- "licenses " attributes that contains the data details for each detected
22- licenses only once. This data can contain the reference license text
17+ "license_references " attributes that contains the data details for each
18+ detected licenses only once. This data can contain the reference license text
2319 as an option.
2420
2521- The data structure of the JSON output has changed for packages: we now
@@ -40,112 +36,176 @@ Copyright detection:
4036- Several copyright detection bugs have been fixed.
4137
4238
39+ License detection:
40+ ~~~~~~~~~~~~~~~~~~~
41+
42+ - There have been significant license detection rules and licenses updates:
43+
44+ - XX new licenses have been added,
45+ - XX existing license metadata have been updated,
46+ - XXXX new license detection rules have been added, and
47+ - XXXX existing license rules have been updated.
48+
49+
4350Package detection:
4451~~~~~~~~~~~~~~~~~~
4552
46- - Add support for OpenWRT packages.
47- - Add support for Yocto/BitBake .bb recipes.
48- - Add support to track installed files for each Package type.
53+ - We now support new package manifest formats:
54+ - OpenWRT packages.
55+ - Yocto/BitBake .bb recipes.
56+
57+ - We now support track the files of Package types.
4958
5059
5160Outputs:
5261~~~~~~~~
5362
54- - There is a new CycloneDX output.
63+ - There is a new CycloneDX 1.2 output as XML and JSON .
5564
56- 30.0.0 - 2021-09-19
57- --------------------
5865
59- This is a major release with new features, and several bug fixes and improvements
6066
61- We have droped using calendar-based versions and are now switched back to semver.
62- We also have introduced a new JSON format version based on semver to version
63- the JSON output format data structure.
67+ 30.0.0 - 2021-09-23
68+ --------------------
6469
70+ This is a major release with new features, and several bug fixes and
71+ improvements including major updates to the license detection.
6572
66- Outputs:
67- ~~~~~~~~
73+ We have droped using calendar-based versions and are now switched back to semver
74+ versioning. To ensure that there is no ambiguity, the new major version has been
75+ updated from 21 to 30. The primary reason is that calver was not helping
76+ integrators to track major version changes like semver does.
6877
69- - The SPDX output now has the mandatory ids attribute per SPDX spec. And we support
70- SPDX 2.2
71- - There is a new CycloneDX output .
78+ We also have introduced a new JSON output format version based on semver to
79+ version the JSON output format data structure and have documented the new
80+ versioning approach .
7281
7382
7483Package detection:
7584~~~~~~~~~~~~~~~~~~
7685
77- - The Debian packages declared license detection in machine readable copyright files
78- and unstructured copyright has been significantly improved with the tracking of
79- the detection start and end line of a license match. This is not yet exposed outside
80- of tests.
86+ - The Debian packages declared license detection in machine readable copyright
87+ files and unstructured copyright has been significantly improved with the
88+ tracking of the detection start and end line of a license match. This is not
89+ yet exposed outside of tests but has been essential to help improve detection .
8190
8291- Debian copyright license detection has been significantly improved with new
8392 license detection rules.
8493
94+ - Support for Windows packages has been improved (and in particular the handling
95+ of Windows packages detection in the Windows registry).
96+
97+ - Support for Cocoapod packages has been significantly revamped and is now
98+ working as expected.
99+
100+ - Support for PyPI packages has been refined, in particular package descriptions.
101+
102+
85103
86104Copyright detection:
87105~~~~~~~~~~~~~~~~~~~~
88106
89- - The copyright detection accuracy has been improved and several bugs fixed.
107+ - The copyright detection accuracy has been improved and several bugs have been
108+ fixed.
90109
91110
92111License detection:
93112~~~~~~~~~~~~~~~~~~~
94113
95- - There have been XXX new licenses added, YYY new license detection rules added
96- and ZZZ updated license or rules.
114+ There have been some significant updates in license detection. We now track
115+ 34,164 license and license notices:
116+
117+ - 84 new licenses have been added,
118+ - 34 existing license metadata have been updated,
119+ - 2765 new license detection rules have been added, and
120+ - 2041 existing license rules have been updated.
121+
97122
98123- Several license detection bugs have fixed.
99124
100- - The SPDX license list 3.14 is now supported. We also include the version
101- of the SPDX license list in the ScanCode JSON and SPDX outputs, as well as
102- display it with the --version command line option.
125+ - The SPDX license list 3.14 is now supported and has been synced with the
126+ licensedb. We also include the version of the SPDX license list in the
127+ ScanCode YAML, JSON and the SPDX outputs, as well as display it with the
128+ "--version" command line option.
103129
104- - Unknown licenses have a new flag "is_unknown" to identify them
105- beyond just the naming convention of having "unknown" as part of their name.
130+ - Unknown licenses have a new flag "is_unknown" in their metadata to identify
131+ them explicitly. Before that we were just relying on the naming convention of
132+ having "unknown" as part of a license key.
106133
107134- Rules that match at least one unknown license have a flag "has_unknown" set
108- in the returned match results.
135+ and returned in the match results.
109136
110- - Experimental: License detection can now "follow" license mentions that reference another
111- file such as "see license in COPYING". Use the the new --unknown-licenses command line
112- option to test this new feature. It will evolve significantly
137+ - Experimental: License detection can now "follow" license mentions that
138+ reference another file such as "see license in COPYING" where we can relate
139+ this mention to the actual license detected in the COPYING file. Use the new
140+ "--unknown-licenses" command line option to test this new feature.
141+ This feature will evolve significantly in the next version(s).
113142
114143
144+ Outputs:
145+ ~~~~~~~~
146+
147+ - The SPDX output now has the mandatory ids attribute per SPDX spec. And we
148+ support SPDX 2.2 and SPDX license list 3.14.
149+
115150
116151Miscellaneous
117152~~~~~~~~~~~~~~~
118153
119- - Add "--no-check-version" CLI option to scancode to bypass live new version
120- check on PyPI
154+ - There is a new "--no-check-version" CLI option to scancode to bypass live,
155+ remote outdated version check on PyPI
156+
157+ - The scan results and the CLI now display an outdated version warning when
158+ the installed ScanCode version is older than 90 days. This is to warn users
159+ that they are relying on outdated, likely buggy, insecure and inaccurate scan
160+ results and encourage them to update to a newer version. This is made entirely
161+ locally based on date comparisons.
121162
122163- We now display again the command line progressbar counters correctly.
123164
124- - Fix bug in summarization
165+ - A bug has been fixed in summarization.
125166
167+ - Generated code detection has been improved with several new keywords.
126168
127- Many thanks to every contributors that made this possible and in particular:
169+
170+ Thank you!
171+ ~~~~~~~~~~~~
172+
173+ Many thanks to the many contributors that made this release possible and in
174+ particular:
128175
129176- Akanksha Garg @akugarg
130- - Ayan Sinha Mahapatra @AyanSinhaMahapatra
131- - Jono Yang @JonoYang
132- - Philippe Ombredanne @pombredanne
133- - John M. Horan @johnmhoran
134- - Yunus Rahbar @yns88
135- - Henrik Sandklef @hesa
136177- Armijn Hemel @armijnhemel
137- - Nishchith Shetty @inishchith
138- - Soim Kim @soimkim
178+ - Ayan Sinha Mahapatra @AyanSinhaMahapatra
139179- Bryan Sutula @sutula
180+ - Chin-Yeung Li @chinyeungli
181+ - Dennis Clark @DennisClark
140182- dyh @yunhua-deng
141- - Mikko Murto @mmurto
183+ - Dr. Frank Heimes @FrankHeimes
184+ - gunaztar @gunaztar
185+ - Helio Chissini de Castro @heliocastro
186+ - Henrik Sandklef @hesa
187+ - Jiyeong Seok @dd-jy
188+ - John M. Horan @johnmhoran
189+ - Jono Yang @JonoYang
190+ - Joseph Heck @heckj
191+ - Luis Villa @tieguy
192+ - Konrad Weihmann @priv-kweihmann
142193- mapelpapel @mapelpapel
194+ - Maximilian Huber @maxhbr
195+ - Michael Herzog @mjherzog
196+ - MMarwedel @MMarwedel
197+ - Mikko Murto @mmurto
198+ - Nishchith Shetty @inishchith
199+ - Peter Gardfjäll @petergardfjall
200+ - Philippe Ombredanne @pombredanne
143201- Rainer Bieniek @rbieniek
144- - gunaztar @gunaztar
202+ - Roshan Thomas @Thomshan
203+ - Sadhana @s4-2
204+ - Sarita Singh @itssingh
145205- Siddhant Khare @Siddhant-K-code
146- - Dennis Clark @DennisClark
147- - Chin-Yeung Li @chinyeungli
148- - Helio Chissini de Castro @heliocastro
206+ - Soim Kim @soimkim
207+ - Thorsten Godau @tgodau
208+ - Yunus Rahbar @yns88
149209
150210
151211v21.8.4
0 commit comments