Subject: Re: [bug#67681] [PATCH] gnu: Add node-commander.

From: Maxim Cournoyer <[email-masked]>
Date: Wed, 03 Jan 2024 22:31:53 -0500

Hi,

Rikard Nordgren <[email-masked]> writes:

> * gnu/packages/node-xyz.scm (node-commander): New variable.
>
> Change-Id: I5b00861705d64e0e89da81acee833e145287bd66
> ---
>  gnu/packages/node-xyz.scm | 38 ++++++++++++++++++++++++++++++++++++++
>  1 file changed, 38 insertions(+)
>
> diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
> index 6c16417309..8486d121dd 100644
> --- a/gnu/packages/node-xyz.scm
> +++ b/gnu/packages/node-xyz.scm
> @@ -155,6 +155,44 @@ (define-public node-color-name
>       "This package provides a JSON list with color names and their values.")
>      (license license:expat)))
>  
> +(define-public node-commander
> +  (package
> +    (name "node-commander")
> +    (version "11.1.0")
> +    (source
> +     (origin
> +       (method git-fetch)
> +       (uri (git-reference
> +             (url "https://github.com/tj/commander.js")
> +             (commit (string-append "v" version))))
> +       (file-name (git-file-name name version))
> +       (sha256
> +        (base32 "1xwh85kbxj76ni41r2h0apl8mjbfcnmxzzp3vlspq30w8kwfckni"))))
> +    (build-system node-build-system)
> +    (arguments
> +     '(#:tests? #f

Why is the test suite disabled?  A comment (explaining a good reason) is
needed :-).

> +       #:phases (modify-phases %standard-phases
> +                  (add-after 'patch-dependencies 'delete-dependencies

A comment explaining why these are removed would help.

> +                    (lambda _
> +                      (delete-dependencies '("@types/jest" "@types/node"
> +                                             "@typescript-eslint/eslint-plugin"
> +                                             "@typescript-eslint/parser"
> +                                             "eslint"
> +                                             "eslint-config-standard"
> +                                             "eslint-config-standard-with-typescript"
> +                                             "eslint-plugin-import"
> +                                             "eslint-plugin-jest"
> +                                             "eslint-plugin-n"
> +                                             "eslint-plugin-promise"
> +                                             "jest"
> +                                             "ts-jest"
> +                                             "tsd"
> +                                             "typescript")))))))
> +    (home-page "https://github.com/tj/commander.js")
> +    (synopsis "Command line interface for node.js")
> +    (description "The complete solution for node.js command-line interfaces.")

Could you please expand a bit on the description?  What features does it
have?  Keep it factual; "The complete solution ..." sounds like
marketing language.

-- 
Thanks,
Maxim