Skip to content
Latchkey

reuse lint "files without copyright and licensing information" in CI

reuse lint checked the repository against the REUSE specification and found files that have no copyright and/or no licensing information, so it prints them under "non-compliant" and exits 1.

What this error means

reuse lint ends with "Congratulations!" only when clean; otherwise it lists files under "files without copyright information" and "files without license information", then reports the repo is not compliant and exits 1.

Terminal
# MISSING COPYRIGHT AND LICENSING INFORMATION

The following files have no copyright and licensing information:
* src/new-file.js

Unfortunately, your project is not compliant with version 3.3 of the REUSE Specification.

Common causes

A new file has no SPDX header or .license

REUSE requires every file to declare copyright and license, via an SPDX header, a matching .license file, or a DEP5 entry. A newly added file without any of these is non-compliant.

The LICENSES folder is missing the referenced license

A file declares a license that has no matching text file under LICENSES/, so REUSE flags missing licensing information.

How to fix it

Annotate the file with reuse

  1. Run reuse lint to list every non-compliant file.
  2. Add copyright and license with reuse annotate (formerly addheader).
  3. Run reuse download to fetch any missing license text into LICENSES/.
Terminal
reuse annotate --copyright "Example Corp" \
  --license MIT src/new-file.js
reuse download MIT
reuse lint

Cover binaries with a .license sidecar

For files that cannot hold a header (images, binaries), add a <file>.license sidecar with the SPDX tags so REUSE finds the metadata.

logo.png.license
# logo.png.license
SPDX-FileCopyrightText: 2026 Example Corp
SPDX-License-Identifier: CC-BY-4.0

How to prevent it

  • Run reuse lint in CI so non-compliant files never merge.
  • Add SPDX headers as part of the file template for new code.
  • Keep the LICENSES/ folder in sync with every license you reference.

Frequently asked questions

What causes "reuse lint non-compliant"?
REUSE requires every file to declare copyright and license, via an SPDX header, a matching .license file, or a DEP5 entry. A newly added file without any of these is non-compliant.
How do I fix reuse lint non-compliant?
Annotate the file with reuse

Related guides

References

Latchkey auto-heals failures like this one - detected, fixed, and retried without you. Start free → 30-day trial · No credit card