App-Licensecheck ================ Created: 2000-01-28 Home page: Home page: Bug tracker: Maintainer: Jonas Smedegaard (JONASS) 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) [ Other ] - drop obsolete custom patterns - optimization: drop custom CC patterns - optimization: stop skip detection of GPL/LGPL fulltext v3.0.41 2020-01-30 [ Documentation ] - clarify comment about identifiers being DEP-5 or SPDX (not only SPDX) [ Test Suite ] - testsuite: update tests for Regexp::Pattern::License v3.1.101 (many improvements, few "regressions" especially related to dual-licensing due to previously accidentally matching by name only) [ Other ] - merge duplicate detections of same license - optimization: avoid accidentally flagging all objects for rescanning when checking if rescanning can be skipped :-/ v3.0.40 2020-01-28 [ Bug Fixes ] - drop bogus small optimization. - resolve SPDX keyword for AFPL. - step-wise grant: capture non-versioned grant. - step-wise grant: skip type:group license names. - strip fortran comment also on otherwise empty line. [ Test Suite ] - update author tests for added Trove captions since Regexp::Pattern::License v3.1.100. - update author tests for improved trait licensed_under since Regexp::Pattern::License v3.1.100. [ Other ] - fix: step-wise grant: capture traits before mangling version. - improve custom-matching versioned apache grants. - improve logging. - optimization: step-wise grant: scan for name only directly after licensed_under. - step-wise grant: detect type:singleversion license names. - step-wise grants: track trait license_label (in addition to licensed_under). - step-wise grants: track trait license_label_trove (in addition to track_label licensed_under). - streamline detection of well-formed licenses. - tests: update author testsuite. - track identified areas of strings and skip further parsing; require Array::IntSpan. - use nsort_by to sort matches; require List::SomeUtils (not List::Util). v3.0.39 2020-01-04 - Improve detection of CC licenses. - improve logging; stop require MooX::Role::Logger - optimize bsd detection (apparently case-insensitive match in unneeded) - use hash interface of Regexp::Pattern and RE2 regexes; require re:engine::RE2, and more recent Regexp::Pattern and Regexp::Pattern::License v3.0.38 2020-01-03 [ REGRESSIONS ] - misdetects some GNU fulltext licenses as also maybe LGPL [ Bug Fixes ] - Add missing newline when no arguments - fix: detect creative commons dual-version-licensing (not misdetect as same version twice) - support non-utf8 locale [ Test Suite ] - Isolate and extend encoding tests. - adapt author testsuite for improved detection (and few minor regressions) since Regexp::Pattern::License v3.1.95 - silence warnings in handling utf8 content [ Packaging ] - use more recent Regexp::Pattern::License [ Other ] - Add missing newline when no arguments - Improve detection of AFL licenses. - Improve detection of Boost licenses. - Improve detection of Cecill licenses. - Improve detection of WTFPL and WTFNMFPL licenses. - Move encoding loop from executable to library. - Streamline detection of well-formed grants. - Tighten and improve detection of Artistic licenses. - define local regexes in sub licensepatterns (not sub parse_license) - improve detection of apache licenses - pass file and position to function parse_license - support environment variable DEBUG; require modules Log::Any Log::Any::Adapter::Screen MooX::Role::Logger v3.0.37 2019-06-12 [ Documentation ] - Update TODOs. [ Test Suite ] - Adapt author testsuite for improved detection (and few minor egressions) since Regexp::Pattern::License v3.1.94. - Adapt testsuite to use recent Software::LicenseUtils (not slightly older Software::License). - Fix handle missing ScanCode corpus.. - Load Test::Builder only once per module.. - Update testsuite: OSI license Artistic-1.0 really is Artistic-1.0-Perl. [ Other ] - Reuse previous name match. - Simplify conditionals: Replace given-when-continue with if. - Skip scan for CC grant unless name already detected. - Use more recent Regexp::Pattern::License. v3.0.36 2018-04-05 - Limit to compile only trait patterns actually used. - Match name alone, before recompiled custom regexes. - Simplify AGPL-related pattern slightly. - Sort license keys once. - Tighten apache pattern slightly. - Tighten gpl pattern. - Track matches in hash (not array). - Use Regexp::Pattern::License trait patterns any_of licensed_under or_at_option version version_numberstring. v3.0.35 2018-03-30 [ Bug Fixes ] - Fix tolerate alternative regexp compilers. [ Test Suite ] - Adapt testsuite for detecting uppercase GPL or LGPL post Regexp::Pattern::License v3.1.0. - Adapt testsuite for detection of FSFULLR post Regexp::Pattern::License v3.1.0. - Adapt testsuite for improved detection since Regexp::Pattern::License v3.1.0. - Adapt testsuite for renamed pattern kevlin-henney → Kevlin-Henney post Regexp::Pattern::License v3.1.0. - Adapt testsuite for renamed pattern khronos → Khronos post Regexp::Pattern::License v3.1.0. - Testsuite: Improve workarounds for license zlib-acknowledgement/Nunit/NUnit. - Testsuite: Tolerate Aladdin License mis-categorized as unversioned by SPDX, as reflected post Regexp::Pattern::License v3.1.0. [ Other ] - Improve license patterns cecill_b cecill_c to detect more forms (previously misdetected as cecill). - Use Regexp::Pattern::License subject patterns. v3.0.34 2018-03-29 [ Bug Fixes ] - Fix support uncompiled patterns from Regexp::Pattern::License. - Fix tighten license key loop (skip eventual DefHash attributes). - Fix tighten version matching: Wrap in group when optional. - Fix word-based comment removal. [ Documentation ] - Extend TODO with more ideas. [ Test Suite ] - Demote ScanCode tests to maintainer tests. - Fix Software-License test to match license shortnames (not captions which are not fixed). - Relax devscripts test to match SPDX-style license captions as supported post Regexp::Patterns::License v3.1.0. - Testsuite speed boost: Parse skipfile once per set, not once per file in each set. - Testsuite: Add function license_like. - Testsuite: handle alternative name of license bdwgc → MIT~Boehm post Regexp::Pattern::License v3.1.0. [ Other ] - Generalize singleversion patterns. - Resolve license patterns as Debian → SPDX → generic (not just Debian → generic) to support less SPDX-centric names post Regexp::Pattern::License v3.1.0. - Simplify pattern tag resolving. - Slight speed boost: Use eq (not regexp) for simple comparisons. - Speed boost: Fix load regexp patterns once (not once or twice per file). - Use regexp patterns as-is (avoid recompiling). v3.0.33 2018-02-15 [ Test Suite ] - Extend testsuite to 2410 succeeding tests and 5313 TODOs (from 227 and 7 TODOs), when ScanCode v2.1.1 test data is available below $ENV{XDG_DATA_DIRS} + tests/ScanCode/ - Rewrite testsuite to use Test::Builder::Module (not Test::Roo). v3.0.32 2018-02-09 [ REGRESSIONS ] - Adapt testsuite to tolerate misdetecting MPL-1.0 as MPL: Regression caused by more generalized matching. [ Documentation ] - Add TODO file, with a bunch of ideas. - Improve POD: Add SEE ALSO section to commandline tool. [ Other ] - Adapt and extend testsuite to cover new license patterns supported by Regex::Patterns::License 3.1.0: bdwgc bdwgc-matlab gfdl lgpl-bdwgc. - Optimize slightly: Skip embedded or referenced licenses earlier. - Tighten regexes: Generalize and improve matching. - Use Regexp::Pattern. - Use Regexp::Pattern::License 3.1.0 tags. v3.0.31 2017-08-16 [ Documentation ] - Fix bogusly labelled changelog entry part of release 2.0.30 (didn't fix bare-named BSD licenses, but instead tightened a bunch of license patterns). [ Packaging ] - Stop ship Regexp::Pattern::License, now an independent distribution. v3.0.30 2017-07-05 [ Bug Fixes ] - Fix license pattern ms_pl to detect MS Public License (not non-free MS Permissive License). - Tighten license patterns afl agpl cdl gfdl gfdl_nivgpl lgpl llgpl mpl ms_pl ms_rl qpl sgi_b wtfpl mit to require descriptive prefix when only an abbreviation. Axel Beckert++ [ Test Suite ] - Add OSI test (including only currently succeeding OSI licenses for now). [ Other ] - Added: Add license pattern artistic_2. - Improve license pattern agpl to skip english (not only french) cecill_2_1. - Improve license pattern epl to detect some forms of "or newer". - Improve license pattern epl. - clean_comments(): Relax to match varying amount of horizontal whitespace (not exactly one character) followed by any non-whitespace (not only a word character). - clean_comments(): Tighten to match and strip only horizontal whitespace (not newlines). v3.0.29 2017-01-24 [ REGRESSIONS ] - Drop gpl+aladdin combo license: Too exotic. [ Bug Fixes ] - Fix detect BSD licenses as bare name. Vasudev Kamath++ - Fix don't choke on unspecificed BSD license. [ Documentation ] - Document Regexp::Pattern::License as a private module. [ Other ] - Added: Add license patterns ofl aladdin rpsl mit_cmu mit_cmu_warranty. - Improve license patterns ftl mit_feh mit_enna cube eurosym libpng zlib zlib_acknowledgement. - Sort before enumerating ambiguously related combo licenses. - Streamline license parsing: Process loops of similar patterne. v3.0.28 2016-11-25 [ Bug Fixes ] - Fix detect dual licensing mit_new mit_old (and speed up partsing while at it). - Fix tighten detection of ISC license (was misdetecting curl). - Fix tighten detection of mit_new license (was misdetecting other MIT flavors). - Fix tighten license pattern curl (was misdetecting other MIT variants). [ Documentation ] - Extend license pattern dsdp with alternate fedora name PetSC. - Fix typo in changelog. - Tidy changelog: Improve distinction between newly added and added-to-patternlist entries. [ Other ] - Add license pattern ISC to Regexp::Pattern::License::Pattern. - Added: Add new license pattern icu. - Added: Add new license pattern mit_advertising. - Added: Add new license patterns mit_enna mit_feh. - Drop unused and too broad trait pattern disclaimer. - List license mit_new alternate fedora name Modern Style with sublicense. - Tidy Regexp::Pattern::License: Remove stray bogus regexp. - Tidy Regexp::Pattern::License::Pattern: Fix sort pattern list. - Tidy Regexp::Pattern::License::Pattern: Rename pattern provided_no_warranty → asis_expr_warranty. - Tidy Regexp::Pattern::License::Pattern: Rename pattern repro_notice_cond_discl → note_repro_notice_cond_discl. - Tidy Regexp::Pattern::License::Pattern: Rename pattern 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. - Improve detection of license AGPL. - Improve detection of license Apache. - Improve non-version descriptor matching. - Improve version matching in license detections. - Tighten regexes: Generalize and improve version matching. - Tighten regexes: Simplify space matching (string already normalized). - Tighten regexes: Treat affero as alternative (not prefix) to GPL prefixes lesser and library. v3.0.24 2016-09-03 [ Bug Fixes ] - Fix apply options --check --ignore to full path (not basename). v3.0.23 2016-09-01 [ Bug Fixes ] - Fix skip parsing non-files (regression since v3.0.5). - Fix stop ignore options --check --ignore (regression since v3.0.5). [ Other ] - Use Path::Iterator::Rule. v3.0.22 2016-08-21 [ Bug Fixes ] - Fix have option --deb-machine imply option --deb-fmt. [ Other ] - Adjust SPDX-like shortnames to match Debian format. - Improve detection of GPL/LGPL/AGPL versions. - Stop merge differently cased owners. - Use List::Util and Sort::Key::Multi. - Use https protocol in deb-machine header. v3.0.21 2016-08-20 [ Bug Fixes ] - Really fix strip copyright sign unconditionally. v3.0.20 2016-08-20 [ Bug Fixes ] - Fix strip copyright sign unconditionally. - Fix strip trailing newline from copyrights. v3.0.19 2016-08-19 [ Bug Fixes ] - Fix strip copyright sign with option --deb-machine. [ Documentation ] - Mention in description of --deb-machine option that it implies --copyright. [ Other ] - Add option --copyright-delimiter, including comma by default. - Handle missing year or owner with option --deb-machine. - Require well-formed years when splitting ownerlines with option --deb-machine. v3.0.18 2016-08-13 [ Bug Fixes ] - Fix defaults for options --list-delimiter and --rfc822-delimiter (was one space too many). - Fix stop use obsolete undocumented String::Copyright blocks method. - Fix use NONE for no authors with option --deb-machine. [ Packaging ] - Tighten dependency on String::Copyright. v3.0.17 2016-08-12 - Fix avoid bogus "generated-file" as SPDX license. - Have option --deb-machine imply option --deb-fmt. v3.0.16 2016-08-11 - Add "Auto Generated" to the generated file detection. Paul Wise++ v3.0.15 2016-08-11 [ Documentation ] - Mention in description of --lines option that it does optimistic search. [ Packaging ] - Tighten dependency on String::Copyright to versions supporting configurable threshold. [ Other ] - Do full search when parsing whole file. v3.0.14 2016-08-01 [ Test Suite ] - Flag test involving multi-line multi-statements as TODO (regression since moving to String::Copyright). v3.0.13 2016-07-25 [ Packaging ] - Fix tighten runtime-requirement on PAth__Tiny for visit(). Stuart Prescott++ v3.0.12 2016-07-24 [ Test Suite ] - Fix devscripts test to use curly quotes as metacharacters (not Paranthesis also used within, triggering warnings on some versiones of perl). v3.0.11 2016-07-24 [ Packaging ] - Fix declare runtime-requirement on String::Copyright. v3.0.10 2016-07-24 [ REGRESSIONS ] - No longer detect multi-line multi-statement copyright strings (not yet suppported by String::Copyright). - Now misdetects some chatter as copyright statements (not yet suppported by String::Copyright). [ Test Suite ] - Relax devscripts test: Ignore trailing dot and "All rights reserved" boilerplate. [ Other ] - Use String::Copyright. v3.0.9 2016-07-24 [ Documentation ] - Drop old licensing header from devscripts test: Fully rewritten by now. - Fix decode "©" in --version option output (workaround for Pod::Constants not supporting UTF-8). - Fix some categorizations of old changelog entries. [ Test Suite ] - Rewrite devscripts test to match patterns (not exact strings), and handle varying output on encoding failure. [ Packaging ] - Drop superfluous test-requirement on strictures: Already declared as runtime-requirement. - Fix declare test-recommendation on Software::License (not too vague recommends). [ Other ] - Stop use Unicode features: We don't really do any complex Unicode, so let's try target older perl. - Update headers of module and tests: Strip hashbang; consistently use strictures. v3.0.8 2016-07-24 [ Bug Fixes ] - Avoid superfluous regex modifier /l. [ Packaging ] - Fix tighten test requirement for Test::Script to versions checking for stdout/stderr. [ Other ] - Add "Generated with" to the generated file detection. Paul Wise++ - Pseudo-decode alternative representations for copyright sign and hyphen-minus. v3.0.7 2016-07-20 [ Test Suite ] - Bail out gracefully if Software::License fails to create some licenses. [ Packaging ] - Make Software::License test optional. v3.0.6 2016-07-20 [ Packaging ] - Fix require experimental (for switch feature). [ Other ] - Improve separation of copyright parsing from comment stripping and copyright serializing v3.0.5 2016-07-19 [ SECURITY ] - Fix: Stop dereference symbolic links: non-intuitive and potentially dangerous (possibly introduced in error intended to enable recursion). Sandro Mani++ [ Test Suite ] - Fix tighten rest-requirement on Software::License to versions supporting new_from_short_name(). [ Other ] - Avoid type constraints and all but one coercion, for a 30% speedup in script initialization. - Move find routine to library. - Stop call system command find in script (uses Path::Tiny::visit instead). - Tidy script to rename $file → $path and $files_count → $paths_count where not yet resolved as file. v3.0.4 2016-07-18 [ Test Suite ] - Drop non-working option "--installed" from script tests (leftover from Debian autopkgtest support). - Stop use Path::Tiny in test where unneeded. - Use Test::Script to ensure correct perl invokes script in tests. Slaven Rezić++ v3.0.3 2016-07-18 [ Test Suite ] - Use Test::Roo and library calls (not script) for devscripts corpus license coverage tests. [ Packaging ] - Fix require strictures for tests. v3.0.2 2016-07-16 [ Test Suite ] - Add devscripts test tied to devscripts corpus, converted from earlier shunit2 script. - Rewrite Software-License test to stop rely on Debian fork of Software::License (see bug#828218). - Rewrite Software-License test to use Test::Command. [ Packaging ] - Run perlcritic with tidyall, and move tidyall test to xt dir. [ Other ] - Bump license to GPL-3+. - Resolve only regexes actually used. - Use Getopt::Long::Descriptive. - Use experimental given/when switch. v3.0.1 2016-06-29 [ Documentation ] - Add CPAN Request Tracker as alternative bug-database. - Add myself as current author, and claim copyright for recent changes. - Add pre-CPAN changelog entries. - Adjust copyright notice to mention initial committer (not later maintainer). - Link to script from POD DESCRIPTION of library. [ Packaging ] - Tighten tidyall config to avoid cruft in bin dir. v3.0.0 2016-06-27 [ Bug Fixes ] - Fix tighten to use Getopt::Long 2.24: Needed for :config option. [ Documentation ] - Rewrite documentation of options, and --help putput. [ Packaging ] - Initial CPAN release (after being in Debian since 2007, and before that in KDE SDK since 2000). [ Other ] - Added: Add --deb-machine option for Debian "deb5" copyright file format. - Refactor codebase, with up to 400% speedup and reusable parts in a Moo library. - Removed: Drop support for reading configuration from files: Limited use, legacy filenames, and odd parsing by use of risky shell call.