Subject: Re: [bug#41219] Enforce "files" directive in node build system

From: [email-masked]
Date: Tue, 12 May 2020 21:30:48 +0000

On 2020-05-12 21:26, [email-masked] wrote:
> Hi,
> 
> I'm sending a couple of patches to fix
> https://issues.guix.gnu.org/40710, I tried to base my implementation
> on [0].
> 
> The first patch adds "globstar" support to (guix glob), namely the
> ability of recursively matching subdirectories in a glob pattern (i.e.
> "foo/**/bar.scm" matches both "foo/bar.scm" and "foo/baz/bar.scm").
> 
> The second patch adds (guix glob) to the imported modules of
> node-build-system and uses that to parse glob patterns in the "files"
> array of a package.json and then install all the matching files.
> 
> I tested the patches by verifying that
> 
> ./pre-inst-env guix build -K node-semver node-util-deprecate
> node-statsd-parser node-stack-trace node-oop node-mersenne
> node-long-stack-traces node-far node-env-variable node-color-name
> 
> runs without error and   and by running make check 
> TESTS="tests/glob.scm" .

I apologize I sent by error without finishing.

Anyway I verified that the installed files match the "files" directive 
when present, otherwise we fall back to the original behavior of 
installing everything. I'm not really sure i added enough test cases in 
"tests/glob.scm", please do tell me if you believe I should add more.

Thank for your patience in reviewing this.

Giacomo