github fsfe/reuse-tool v1.0.0

latest releases: v4.0.3, v4.0.2, v4.0.1...
2 years ago

A major release! Do not worry, no breaking changes but a development team
(@carmenbianca, @floriansnow, @linozen, @mxmehl and @nicorikken) that is
confident enough to declare the REUSE helper tool stable, and a bunch of
long-awaited features!

Apart from smaller changes under the hood and typical maintenance tasks, the
main additions are new flags to the addheader subcommand that ease recursive
and automatic operations, the ability to ignore areas of a file that contain
strings that may falsely be detected as copyright or license statements, and the
option to merge copyright lines. The tool now also has better handling of some
edge cases with copyright and license identifiers.

We would like to thank the many contributors to this release, among them
@ajinkyapatil8190, @aspiers, @ferdnyc, @Gri-ffin, @hexagonrecursion, @hoijui,
@Jakelyst, @Liambeguin, @rex4539, @robinkrahl, @rpavlik, @siiptuo, @thbde and
@ventosus.

Added

  • Extend tool documentation with scripts to help using this tool and
    automating some steps that are not built into the tool itself. (#500)

  • Recommendations for installation/run methods: package managers and pipx (#457)

  • Docker images for AArch64 (#478)

  • Added the ability to ignore parts of a file when running reuse lint. Simply
    add REUSE-IgnoreStart and REUSE-IgnoreEnd as comments and all lines
    between the two will be ignored by the next run of reuse lint. (#463)

  • Meson subprojects are now ignored
    by default. (#496)

  • More file types are recognised:

    • sbt build files (.sbt)
    • Vimscript files (.vim)
  • Added --skip-existing flag to addheader in order to skip files that
    already contain SPDX information. This may be useful for only adding SPDX
    information to newly created files. (#480)

  • Added --recursive flag to addheader. (#469)

  • Preserve shebang for more script files:

  • Ignore all SPDX files with their typical formats and extensions. (#494)

  • Add support for merging copyright lines based on copyright statement,
    transforming multiple lines with a single year into a single line with a
    range. (#328)

Changed

  • Use setuptools instead of the deprecated distutils which will be removed
    with Python 3.12. (#451)

  • addheader --explicit-license renamed to --force-dot-license. (#476)

  • Dockerfiles for reuse-tool are now in a separate subdirectory docker. (#499)

  • Updated SPDX license list to 3.17. (#513)

  • The copyright detection mechanism now silently accepts the following strings:
    Copyright(c) and Copyright(C). (#440)

Deprecated

  • Deprecated --explicit-license in favour of --force-dot-license.
    --explicit-license will remain useable (although undocumented) for the
    foreseeable future. (#476)

Removed

  • JsxCommentStyle in favor of using CCommentStyle directly (see section
    Fixed). (#406)

Fixed

  • Better support for unary "+" operator in license identifiers. For example, if
    Apache-1.0+ appears as a declared license, it should not be identified as
    missing, bad, or unused if LICENSES/Apache-1.0.txt exists. It is, however,
    identified separately as a used license. (#123)

  • When addheader creates a .license file, that file now has a newline at the
    end. (#477)

  • Cleaned up internal string manipulation. (#477)

  • JSX (.jxs and .tsx) actually uses C comment syntax as JSX blocks never
    stand at the beginning of the file where the licensing info needs to go.
    (#406)

Don't miss a new reuse-tool release

NewReleases is sending notifications on new releases.