App-Licensecheck

 view release on metacpan or  search on metacpan

Changes  view on Meta::CPAN

 - improve detection of GNU 'or-newer' usage grant version
 - improve logging and comments
 - logging: avoid undefined version for custom agpl grant detection
 - logging: generally resolve positions
 - logging: stepwise: log whole version string (not only number)
 - logging: stepwise: resolve positions
 - optimize: atomic: skip a few scans if grant already detected
 - optimize: track incomplete patterns (not subset of complete ones) -
   speed boost of %25!
 - optimize: use optimized regex with /g (apparently supported by
   re::engine::RE2)
 - pre-compile left-anchored trait pattern version
 - scan for GNU 'or-newer' usage version before singleversion grant version
 - sort or'ed parts of expressions
 - stepwise: detect 'or-later' usage grant also as versioned grant
 - stepwise: detect prepended version
 - stepwise: explicitly (regardless of list @L_tidy) avoid gpl
 - stepwise: relax to use wider window for license name
 - stepwise: track start and end position, and a moving current position
   (not additional static ones)
 - stepwise: use named (not numbered) capture for version
 - track examined files
 - use both custom and atomic patterns (not only custom) for agpl fsful
   fsfullr gpl lgpl

v3.0.45	2020-02-21

 [ Bug Fixes ]
 - fix: try fallback encoding per-file (restore explicit encoding for
   subsequent file)
   Dominique Dumont++
 - sort positions numerically (not alphanumerically)

 [ Documentation ]
 - fix print encoding name (not Encode object ref) if encoding fails
 - use canonical encoding name iso-8859-1 (not latin-1)

 [ Test Suite ]
 - change namespace of local libraries to Test2::Licensecheck
 - support fixing or skipping with Test2::Licensecheck::ScanCode skipfiles

 [ Other ]
 - streamline detection of bsd licenses
 - update (improved but still failing) misdetection of SSLeay since
   Regexp::Pattern::License v3.2.0

v3.0.44	2020-02-10

 [ Test Suite ]
 - ensure local script is executable

v3.0.43	2020-02-10

 [ REGRESSIONS ]
 - now misses trove declarations for AGPL-3+

 [ Bug Fixes ]
 - adjust end position of located license name
 - resolve license fulltext last, to leave room for shadowing with
   -or-newer grant
 - tests: declare "use utf8" and "use feature 'unicode_strings'" in
   encode.t

 [ Documentation ]
 - update TODOs

 [ Test Suite ]
 - drop unused function is_licensed_like_scancode
 - tighten encode.t (still fails with non-UTF-8 locales)
 - update author tests related to ZPL since Regexp::Pattern::License
   v3.1.102
 - update tests
 - use List::SomeUtils (not List::MoreUtils)
 - use Test2::V0

 [ Packaging ]
 - relax to require strictures unversioned
 - require Encode::Locale Encode
 - require MooX::Struct
 - require Regexp::Pattern 0.2.12 and Regexp::Pattern::License 3.1.102
 - stop test-recommend List::MoreUtils
 - stop test-require UNIVERSAL::require (unused since v3.0.2)
 - test-require Test2::V0 (not Test::Builder::Module Test::Requires
   Test::More)

 [ Other ]
 - avoid misdetecting CECILL-1.1 as GPL-1+ due to extending trait pattern
   licensed_under since Regexp::Pattern::License v3.1.102
 - consistently use strictures, unversioned
 - consult coverage of well-formed scan to avoid duplicate matches
 - improve detection of AGPL licenses
 - optimize detection of ZPL licenses
 - simplify avoiding license duplicates in expression by skipping grant of
   same id as already found fulltext
 - simplify flagging step-wise grants
 - stop resolve regexes licensed_under version_later (unused since v3.0.42)
 - tighten which regexes to generate
 - track detected licensing as objects
 - track step-wise traits as objects
 - track traits as objects

v3.0.42	2020-02-01

 [ REGRESSIONS ]
 - now fails to detect dual-licensing of CC-BY-SA-3.0 or LGPL-2 (test case:
   utilities.scad)

 [ Bug Fixes ]
 - gracefully skip to next file on failure decoding a file (broken since
   v3.0.38)
   Dominique Dumont++

 [ Test Suite ]
 - environment variable LICENSECHECK sets path to licensecheck (default:
   bin/licensecheck)
   Gregor Hermann++
 - simplify tests Software-License.t devscripts.t encoding.t

 [ Packaging ]
 - test-require Test::Command::Simple (not Test::Script)

Changes  view on Meta::CPAN

   retain_notice_cond_discl → note_retain_notice_cond_discl.
 - Tidy Regexp::Pattern::License::Pattern: Rename pattern discl →
   asis_sw_name.
 - Tidy Regexp::Pattern::License::Pattern: Rename pattern discl_disclaim →
   discl_name_warranties.
 - Tidy Regexp::Pattern::License::Pattern: Rename pattern discl_provide →
   asis_name_sw.
 - Tidy Regexp::Pattern::License::Pattern: Rename pattern name_no_ad →
   nopromo_written_prior.
 - Tidy Regexp::Pattern::License::Pattern: Rename pattern promo_no_author →
   nopromo_neither.
 - Tidy Regexp::Pattern::License::Pattern: Rename pattern retain_notice →
   note_invar.
 - Tighten license pattern bsd-2-clause. Tidy
   Regexp::Pattern::License::Pattern: Rename pattern asis_sw_name →
   asis_sw_by_name.

v3.0.27	2016-11-23

 [ REGRESSIONS ]
 - Drop too exotic licensing phrase, and corresponding test case.

 [ Bug Fixes ]
 - Fix avoid detection of GPL/LGPL fulltext (rarely if ever used as grant).
 - Fix detect license FSFULLR (was misdetected as bogus FSFULR).
 - Fix detect license MPL-2.0 (was misdetected as MPL-2.0 or AGPL).
 - Fix detect licenses mit_old mit_unspecified (was misdetected as
   mit_new).
 - Fix version identifier to use + only in machine-readable mode.

 [ Other ]
 - Add combo pattern perl to Regexp::Pattern::License.
 - Add license pattern afl to Regexp::Pattern::License.
 - Add license pattern agpl to Regexp::Pattern::License.
 - Add license pattern apache to Regexp::Pattern::License.
 - Add license pattern artistic to Regexp::Pattern::License.
 - Add license pattern beerware to Regexp::Pattern::License.
 - Add license pattern cc_by_sa to Regexp::Pattern::License.
 - Add license pattern ftl to Regexp::Pattern::License.
 - Add license pattern llgpl to Regexp::Pattern::License.
 - Add license pattern mpl to Regexp::Pattern::License.
 - Add license pattern ms_pl to Regexp::Pattern::License.
 - Add license pattern openssl to Regexp::Pattern::License.
 - Add license pattern public_domain to Regexp::Pattern::License.
 - Add license pattern python to Regexp::Pattern::License.
 - Add license pattern qpl to Regexp::Pattern::License.
 - Add license pattern sgi_b to Regexp::Pattern::License.
 - Add license pattern wtfpl to Regexp::Pattern::License.
 - Add license patterns adobe_2006 adobe_glyph apafml to
   Regexp::Pattern::License.
 - Add license patterns bsd_2_clause bsd_3_clause bsd_4_clause to
   Regexp::Pattern::License.
 - Add license patterns cddl cecill cecill_1 cecill_1_1 cecill_2 cecill_2_1
   cecill_b cecill_c epl to Regexp::Pattern::License.
 - Add license patterns fsfap fsful fsfullr to Regexp::Pattern::License.
 - Add license patterns gpl lgpl to Regexp::Pattern::License.
 - Add license patterns libpng zlib zlib_acknowledgement to
   Regexp::Pattern::License.
 - Add license patterns mit_new mit_new_materials mit_old mit_unspecified
   postgresql, and group pattern mit to Regexp::Pattern::License.
 - Add license patterns unicode_strict unicode_tou to
   Regexp::Pattern::License.
 - Added: Add new group pattern bsd.
 - Added: Add new group pattern gnu.
 - Added: Add new license pattern ms_rl.
 - Added: Add new license patterns cc_by cc_by_nc cc_by_nc_nd cc_by_nc_sa
   cc_by_nd cc_cc0 cc_sp.
 - Added: Add new license patterns cube eurosym.
 - Added: Add new license patterns curl dsdp mit_oldstyle
   mit_oldstyle_disclaimer mit_oldstyle_permission ntp ntp_disclaimer.
 - Added: Add new license patterns gfdl gfdl_niv.
 - Added: Add new trait pattern clause_advertising_always.
 - Added: Add new trait pattern license_prefix.
 - Added: Add new trait pattern license_version.
 - Added: Add new trait patterns clause_retention clause_reproduction
   clause_advertising clause_non_endorsement disclaimer.
 - Added: Add new trait patterns fsf_unlimited fsf_unlimited_retention.
 - Added: Add new trait patterns version_later version_later_paragraph
   version_later_postfix.
 - Added: Introduce new modules: Pattern::License Pattern::License::Parts.
 - Clean m4 dnl comment marker.
 - Drop no longer used internal license shortname list.
 - Emulate Regexp::Common -keep syntax to capture version number.
 - Improve detection of license GPL.
 - Improve license detections artistic perl.
 - Relax detection of license GPL.
 - Relax license pattern cc_by_ca.
 - Tidy code: Drop noop code.
 - Tighten regexes: Generalize abbreviated AGPL/LGPL/GPL matching.
 - Tighten regexes: Generalize and improve LGPL matching.
 - Use Regexp::Pattern::License for shortname resolving (with internal list
   as fallback until phased out).

v3.0.26	2016-09-22

 [ Bug Fixes ]
 - Fix exclude AGPL false positives.

 [ Other ]
 - Use generalized license string composition at more places.

v3.0.25	2016-09-21

 [ Bug Fixes ]
 - Fix avoid non-digit in version of license Artistic.
 - Fix delimit multiple licenses with "and/or" (not "or") when ambiguous.
 - Fix parse whole file for test info-at-eof.h (default length only
   approximates lines and is too short since String::Copyright 0.003003).

 [ Test Suite ]
 - Fix tighten runtime-requirement on PAth__Tiny for visit().
   Slaven Rezić++
 - Update testsuite to reflect Perl license detection.

 [ Other ]
 - Apply fallback marker "UNKNOWN" after (not during) license detection.
 - Detect license CC-BY-SA.
 - Detect licenses APAFML Adobe-Glyph Adobe-2006 Aladdin SIL FSFAP FSFUL
   FSFULLR JSON PostgreSQL Unicode-strict Unicode-TOU zlib-acknowledgement.
 - Enhance detection of Perl license.
 - Generalize license string composition.



( run in 0.518 second using v1.01-cache-2.11-cpan-d7f47b0818f )