Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: pre-commit errors due to polluted git directory #544

Closed
wants to merge 1 commit into from

Conversation

vlaci
Copy link

@vlaci vlaci commented Jan 6, 2025

After #396, reuse hook no longer works, as it considers untracked files added by pre-commit. Before the above PR, the git repository was in $HOME/src, so files added in $HOME didn't affect the outcome of the hooks themselves.

This change re-adds the src subdirectory.

A failing build output:

 $ nix build --no-link -L .\#checks.x86_64-linux.pre-commit
 Running phase: unpackPhase
 unpacking source archive /nix/store/g1p6g2ylflj4fnzdwlc368737kxk0p9f-source
 source root is source
 Running phase: patchPhase
 Running phase: updateAutotoolsGnuConfigScriptsPhase
 Running phase: configurePhase
 no configure script, doing nothing
 Running phase: buildPhase
 Running: $ pre-commit run --all-files
 reuse....................................................................Failed
 - hook id: reuse
 - exit code: 1
 # MISSING COPYRIGHT AND LICENSING INFORMATION
 The following files have no copyright and licensing information:
 * .cache/pre-commit/README
 * .cache/pre-commit/db.db
 * .gitconfig
 # SUMMARY
 * Bad licenses: 0
 * Deprecated licenses: 0
 * Licenses without file extension: 0
 * Missing licenses: 0
 * Unused licenses: 0
 * Used licenses: MIT
 * Read errors: 0
 * Files with copyright information: 16 / 19
 * Files with license information: 16 / 19
 Unfortunately, your project is not compliant with version 3.3 of the REUSE Specification :-(
 # RECOMMENDATIONS
 * Fix missing copyright/licensing information: For one or more files, the tool
   cannot find copyright and/or licensing information. You typically do this by
   adding 'SPDX-FileCopyrightText' and 'SPDX-License-Identifier' tags to each
   file. The tutorial explains additional ways to do this:
   <https://reuse.software/tutorial/>

After cachix#396, `reuse` hook no longer works, as it considers untracked
files added by `pre-commit`. Before the above PR, the git repository
was in `$HOME/src`, so files added in `$HOME` didn't affect the
outcome of the hooks themselves.

This change re-adds the `src` subdirectory.

A failing build output:

     $ nix build --no-link -L .\#checks.x86_64-linux.pre-commit
     Running phase: unpackPhase
     unpacking source archive /nix/store/g1p6g2ylflj4fnzdwlc368737kxk0p9f-source
     source root is source
     Running phase: patchPhase
     Running phase: updateAutotoolsGnuConfigScriptsPhase
     Running phase: configurePhase
     no configure script, doing nothing
     Running phase: buildPhase
     Running: $ pre-commit run --all-files
     reuse....................................................................Failed
     - hook id: reuse
     - exit code: 1
     # MISSING COPYRIGHT AND LICENSING INFORMATION
     The following files have no copyright and licensing information:
     * .cache/pre-commit/README
     * .cache/pre-commit/db.db
     * .gitconfig
     # SUMMARY
     * Bad licenses: 0
     * Deprecated licenses: 0
     * Licenses without file extension: 0
     * Missing licenses: 0
     * Unused licenses: 0
     * Used licenses: MIT
     * Read errors: 0
     * Files with copyright information: 16 / 19
     * Files with license information: 16 / 19
     Unfortunately, your project is not compliant with version 3.3 of the REUSE Specification :-(
     # RECOMMENDATIONS
     * Fix missing copyright/licensing information: For one or more files, the tool
       cannot find copyright and/or licensing information. You typically do this by
       adding 'SPDX-FileCopyrightText' and 'SPDX-License-Identifier' tags to each
       file. The tutorial explains additional ways to do this:
       <https://reuse.software/tutorial/>
@sandydoo
Copy link
Member

@vlaci, thanks for bringing this up.

Before the linked PR, we would also copy the source files into the src directory. If we cd into an empty src directory, then the hooks will have nothing to run against.

I've merged #551, which sets HOME to a temporary directory to avoid polluting the working directory.

@sandydoo sandydoo closed this Jan 19, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants