Skip to content

Commit

Permalink
licensecheck: add support for wildcards in license text
Browse files Browse the repository at this point in the history
In license text the sequence ___ now denotes a wildcard
that can be filled in by up to 70 words.
That's long enough for a handful of copyright lines
in a row (see testdata/MIT.t2) but short enough that
it can't skip over an entire license. (Our shortest two
recognized licenses are Apache-2.0-User at 80 and
BSD-0-Clause at 99.)

This commit updates the licenses to use ___ where appropriate.
This fixes #6.

This commit also removes removeCopyrightLines (d686698),
which turns out to have been removing quite a few lines in
actual license text (see diffs in testdata/CC*) and did not
handle other cases now handled by the wildcards
(for example, testdata/MIT.t2). This fixes #12.

Fixes #6.
Fixes #12.
  • Loading branch information
rsc authored and pombredanne committed Nov 17, 2020
1 parent 8189eeb commit 4a0d5ec
Show file tree
Hide file tree
Showing 11 changed files with 49 additions and 35 deletions.
8 changes: 4 additions & 4 deletions testdata/Apache-2.0.t1
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# BUG: https://github.com/google/licensecheck/issues/12
94.3%
ECL-2.0 82.0% 74,9183
Apache-2.0 100.0% 9734,$
# BUG: URL matched in match
100%
Apache-2.0 100% 0,$
Apache-2.0 100% 9904,9942 URL

Apache License Version 2.0, January 2004
http://www.apache.org/licenses/
Expand Down
6 changes: 2 additions & 4 deletions testdata/Artistic-2.0.t1
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
# BUG: Mismatch around "Copyright Holder".
98.5%
Artistic-2.0 3.4% 0,288
Artistic-2.0 96.5% 452,$
100%
Artistic-2.0 100% 0,$

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.
Expand Down
6 changes: 2 additions & 4 deletions testdata/CC-BY-4.0.t1
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
# BUG: Mismatch around "Copyright and Similar".
96.1%
CC-BY-4.0 5.2% 0,676
CC-BY-4.0 94.8% 1192,$
100%
CC-BY-4.0 100.0% 0,$

Creative Commons Attribution 4.0 International Public License

Expand Down
6 changes: 2 additions & 4 deletions testdata/CC-BY-NC-4.0.t1
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
# BUG: Mismatch around "Copyright and Similar".
96.2%
CC-BY-NC-4.0 5.0% 0,704
CC-BY-NC-4.0 94.3% 1221,$
100%
CC-BY-NC-4.0 100% 0,$

Creative Commons Attribution-NonCommercial 4.0 International Public
License
Expand Down
6 changes: 2 additions & 4 deletions testdata/CC-BY-NC-SA-4.0.t1
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
# BUG: Mismatch around "Copyright and Similar".
96.3%
CC-BY-4.0 5.0% 58,726
CC-BY-NC-SA-4.0 94.8% 1243,$
100%
CC-BY-NC-SA-4.0 100% 0,$

Creative Commons Attribution-NonCommercial-ShareAlike 4.0
International Public License
Expand Down
3 changes: 1 addition & 2 deletions testdata/CC-BY-SA-3.0.t1
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
# BUG: Why not 100% for the match?
100%
CC-BY-SA-3.0 99.7% 0,$
CC-BY-SA-3.0 100% 0,$

Creative Commons Attribution-ShareAlike 3.0 International Public
License
Expand Down
6 changes: 2 additions & 4 deletions testdata/CC-BY-SA-4.0.t1
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
# BUG: Mismatch around "Copyright and Similar".
96.3%
CC-BY-4.0 5.0% 44,698
CC-BY-SA-4.0 95.2% 1214,$
100%
CC-BY-SA-4.0 100% 0,$

Creative Commons Attribution-ShareAlike 4.0 International Public
License
Expand Down
5 changes: 2 additions & 3 deletions testdata/GPL2.t1
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
# BUG: Mismatch around leading Copyright line.
99.8%
GPL2 99.8% 135,$
100%
GPL2 100% 0,$

GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Expand Down
5 changes: 2 additions & 3 deletions testdata/LGPL-2.0.t1
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
# BUG: Mismatch around Copyright line.
99.8%
LGPL-2.0 99.8% 142,$
100%
LGPL-2.0 100% 0,$

GNU LIBRARY GENERAL PUBLIC LICENSE
Version 2, June 1991
Expand Down
5 changes: 2 additions & 3 deletions testdata/LGPL-2.1.t1
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
# BUG: Mismatch around Copyright line.
99.8%
LGPL-2.1 99.8% 145,$
100%
LGPL-2.1 100% 0,$

GNU LESSER GENERAL PUBLIC LICENSE
Version 2.1, February 1999
Expand Down
28 changes: 28 additions & 0 deletions testdata/MIT.t2
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# This notice appears in go/src/runtime/vlrt.go.
90.9%
MIT 100.0% 124,$

// Inferno's libkern/vlrt-arm.c
// https://bitbucket.org/inferno-os/inferno-os/src/default/libkern/vlrt-arm.c
//
// Copyright © 1994-1999 Lucent Technologies Inc. All rights reserved.
// Revisions Copyright © 2000-2007 Vita Nuova Holdings Limited (www.vitanuova.com). All rights reserved.
// Portions Copyright 2009 The Go Authors. All rights reserved.
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.

0 comments on commit 4a0d5ec

Please sign in to comment.