Unverified Commit 11c401a6 authored by dish's avatar dish Committed by GitHub
Browse files

jsdoc: migrate from nodePackages (#466372)

parents 785d0ab2 8796ff4c
Loading
Loading
Loading
Loading
+50 −0
Original line number Diff line number Diff line
{
  lib,
  buildNpmPackage,
  fetchFromGitHub,
  nix-update-script,
}:

buildNpmPackage (finalAttrs: {
  pname = "jsdoc";
  version = "5.0.0-dev.19";

  src = fetchFromGitHub {
    owner = "jsdoc";
    repo = "jsdoc";
    tag = "jsdoc@${finalAttrs.version}";
    hash = "sha256-dd68veLr78YRw06o/KzlhHtmSznnu7XHK6gTu6V4sJU=";
  };

  npmWorkspace = "packages/jsdoc";

  npmDepsHash = "sha256-29xgiKNGwVNv+l3ou3RNamBNp0ykbDlUCsnlo0CEcSI=";

  dontNpmBuild = true;

  postBuild = ''
    npm run test
  '';

  postInstall = ''
    mkdir -p $out/lib/node_modules/jsdoc/packages
    mv packages/* $out/lib/node_modules/jsdoc/packages
  '';

  passthru.updateScript = nix-update-script {
    extraArgs = [
      "--use-github-releases"
      "--version=unstable"
      "--version-regex"
      "jsdoc@(.*)"
    ];
  };

  meta = {
    changelog = "https://github.com/jsdoc/jsdoc/releases/jsdoc@${finalAttrs.version}";
    description = "API documentation generator for JavaScript";
    homepage = "https://jsdoc.app";
    license = lib.licenses.asl20;
    maintainers = with lib.maintainers; [ pyrox0 ];
  };
})
+1 −0
Original line number Diff line number Diff line
@@ -213,6 +213,7 @@ mapAliases {
  inherit (pkgs) jake; # added 2023-08-19
  inherit (pkgs) javascript-typescript-langserver; # added 2023-08-19
  inherit (pkgs) js-beautify; # Added 2025-11-06
  inherit (pkgs) jsdoc; # Added 2025-11-29
  inherit (pkgs) jshint; # Added 2025-11-06
  json = throw "'json' has been removed because it was unmaintained upstream"; # Added 2025-11-14
  inherit (pkgs) json-diff; # Added 2025-11-07
+0 −1
Original line number Diff line number Diff line
@@ -17,7 +17,6 @@
, "grunt-cli"
, "gulp-cli"
, "js-yaml"
, "jsdoc"
, "lcov-result-merger"
, "mathjax"
, "node2nix"
+0 −220
Original line number Diff line number Diff line
@@ -1155,15 +1155,6 @@ let
        sha512 = "4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==";
      };
    };
    "@jsdoc/salty-0.2.9" = {
      name = "_at_jsdoc_slash_salty";
      packageName = "@jsdoc/salty";
      version = "0.2.9";
      src = fetchurl {
        url = "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.9.tgz";
        sha512 = "yYxMVH7Dqw6nO0d5NIV8OQWnitU8k6vXH8NtgqAfIa/IUqRMxRv/NUJJ08VEKbAakwxlgBl5PJdrU0dMPStsnw==";
      };
    };
    "@jsep-plugin/assignment-1.3.0" = {
      name = "_at_jsep-plugin_slash_assignment";
      packageName = "@jsep-plugin/assignment";
@@ -2532,15 +2523,6 @@ let
        sha512 = "5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==";
      };
    };
    "@types/linkify-it-5.0.0" = {
      name = "_at_types_slash_linkify-it";
      packageName = "@types/linkify-it";
      version = "5.0.0";
      src = fetchurl {
        url = "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-5.0.0.tgz";
        sha512 = "sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==";
      };
    };
    "@types/lodash-4.17.16" = {
      name = "_at_types_slash_lodash";
      packageName = "@types/lodash";
@@ -2550,15 +2532,6 @@ let
        sha512 = "HX7Em5NYQAXKW+1T+FiuG27NGwzJfCX3s1GjOa7ujxZa52kjJLOr4FUxT+giF6Tgxv1e+/czV/iTtBw27WTU9g==";
      };
    };
    "@types/markdown-it-14.1.2" = {
      name = "_at_types_slash_markdown-it";
      packageName = "@types/markdown-it";
      version = "14.1.2";
      src = fetchurl {
        url = "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-14.1.2.tgz";
        sha512 = "promo4eFwuiW+TfGxhi+0x3czqTYJkG8qB17ZUJiVF10Xm7NLVRSLUsfRTU/6h1e24VvRnXCx+hG7li58lkzog==";
      };
    };
    "@types/mdast-3.0.15" = {
      name = "_at_types_slash_mdast";
      packageName = "@types/mdast";
@@ -2568,15 +2541,6 @@ let
        sha512 = "LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==";
      };
    };
    "@types/mdurl-2.0.0" = {
      name = "_at_types_slash_mdurl";
      packageName = "@types/mdurl";
      version = "2.0.0";
      src = fetchurl {
        url = "https://registry.npmjs.org/@types/mdurl/-/mdurl-2.0.0.tgz";
        sha512 = "RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg==";
      };
    };
    "@types/minimatch-3.0.5" = {
      name = "_at_types_slash_minimatch";
      packageName = "@types/minimatch";
@@ -3873,15 +3837,6 @@ let
        sha512 = "1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==";
      };
    };
    "bluebird-3.7.2" = {
      name = "bluebird";
      packageName = "bluebird";
      version = "3.7.2";
      src = fetchurl {
        url = "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz";
        sha512 = "XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==";
      };
    };
    "bmp-js-0.1.0" = {
      name = "bmp-js";
      packageName = "bmp-js";
@@ -4494,15 +4449,6 @@ let
        sha512 = "4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==";
      };
    };
    "catharsis-0.9.0" = {
      name = "catharsis";
      packageName = "catharsis";
      version = "0.9.0";
      src = fetchurl {
        url = "https://registry.npmjs.org/catharsis/-/catharsis-0.9.0.tgz";
        sha512 = "prMTQVpcns/tzFgFVkVp6ak6RykZyWb3gu8ckUpd6YkTlacOd3DXGJjIpD4Q6zJirizvaiAjSSHlOsA+6sNh2A==";
      };
    };
    "ccount-2.0.1" = {
      name = "ccount";
      packageName = "ccount";
@@ -6870,15 +6816,6 @@ let
        sha512 = "vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==";
      };
    };
    "escape-string-regexp-2.0.0" = {
      name = "escape-string-regexp";
      packageName = "escape-string-regexp";
      version = "2.0.0";
      src = fetchurl {
        url = "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz";
        sha512 = "UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==";
      };
    };
    "escape-string-regexp-4.0.0" = {
      name = "escape-string-regexp";
      packageName = "escape-string-regexp";
@@ -9633,15 +9570,6 @@ let
        sha512 = "wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==";
      };
    };
    "js2xmlparser-4.0.2" = {
      name = "js2xmlparser";
      packageName = "js2xmlparser";
      version = "4.0.2";
      src = fetchurl {
        url = "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-4.0.2.tgz";
        sha512 = "6n4D8gLlLf1n5mNLQPRfViYzu9RATblzPEtm1SthMX1Pjao0r9YI9nw7ZIfRxQMERS87mcswrg+r/OYrPRX6jA==";
      };
    };
    "jsbn-0.1.1" = {
      name = "jsbn";
      packageName = "jsbn";
@@ -10011,15 +9939,6 @@ let
        sha512 = "dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==";
      };
    };
    "klaw-3.0.0" = {
      name = "klaw";
      packageName = "klaw";
      version = "3.0.0";
      src = fetchurl {
        url = "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz";
        sha512 = "0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g==";
      };
    };
    "kleur-4.1.5" = {
      name = "kleur";
      packageName = "kleur";
@@ -10155,15 +10074,6 @@ let
        sha512 = "wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A==";
      };
    };
    "linkify-it-5.0.0" = {
      name = "linkify-it";
      packageName = "linkify-it";
      version = "5.0.0";
      src = fetchurl {
        url = "https://registry.npmjs.org/linkify-it/-/linkify-it-5.0.0.tgz";
        sha512 = "5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==";
      };
    };
    "listr2-8.2.5" = {
      name = "listr2";
      packageName = "listr2";
@@ -10767,24 +10677,6 @@ let
        sha512 = "CkYQrPYZfWnu/DAmVCpTSX/xHpKZ80eKh2lAkyA6AJTef6bW+6JpbQZN5rofum7da+SyN1bi5ctTm+lTfcCW3g==";
      };
    };
    "markdown-it-14.1.0" = {
      name = "markdown-it";
      packageName = "markdown-it";
      version = "14.1.0";
      src = fetchurl {
        url = "https://registry.npmjs.org/markdown-it/-/markdown-it-14.1.0.tgz";
        sha512 = "a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==";
      };
    };
    "markdown-it-anchor-8.6.7" = {
      name = "markdown-it-anchor";
      packageName = "markdown-it-anchor";
      version = "8.6.7";
      src = fetchurl {
        url = "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.7.tgz";
        sha512 = "FlCHFwNnutLgVTflOYHPW2pPcl2AACqVzExlkGQNsi4CJgqOHN7YTgDd4LuhgN1BFO3TS0vLAruV1Td6dwWPJA==";
      };
    };
    "markdown-table-3.0.4" = {
      name = "markdown-table";
      packageName = "markdown-table";
@@ -10794,15 +10686,6 @@ let
        sha512 = "wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==";
      };
    };
    "marked-4.3.0" = {
      name = "marked";
      packageName = "marked";
      version = "4.3.0";
      src = fetchurl {
        url = "https://registry.npmjs.org/marked/-/marked-4.3.0.tgz";
        sha512 = "PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==";
      };
    };
    "math-intrinsics-1.1.0" = {
      name = "math-intrinsics";
      packageName = "math-intrinsics";
@@ -11010,15 +10893,6 @@ let
        sha512 = "GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==";
      };
    };
    "mdurl-2.0.0" = {
      name = "mdurl";
      packageName = "mdurl";
      version = "2.0.0";
      src = fetchurl {
        url = "https://registry.npmjs.org/mdurl/-/mdurl-2.0.0.tgz";
        sha512 = "Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==";
      };
    };
    "mem-8.1.1" = {
      name = "mem";
      packageName = "mem";
@@ -13827,15 +13701,6 @@ let
        sha512 = "vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==";
      };
    };
    "punycode.js-2.3.1" = {
      name = "punycode.js";
      packageName = "punycode.js";
      version = "2.3.1";
      src = fetchurl {
        url = "https://registry.npmjs.org/punycode.js/-/punycode.js-2.3.1.tgz";
        sha512 = "uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==";
      };
    };
    "pupa-2.1.1" = {
      name = "pupa";
      packageName = "pupa";
@@ -14493,15 +14358,6 @@ let
        sha512 = "KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==";
      };
    };
    "requizzle-0.2.4" = {
      name = "requizzle";
      packageName = "requizzle";
      version = "0.2.4";
      src = fetchurl {
        url = "https://registry.npmjs.org/requizzle/-/requizzle-0.2.4.tgz";
        sha512 = "JRrFk1D4OQ4SqovXOgdav+K8EAhSB/LJZqCz8tbX0KObcdeM15Ss59ozWMBWmmINMagCwmqn4ZNryUGpBsl6Jw==";
      };
    };
    "reserved-words-0.1.2" = {
      name = "reserved-words";
      packageName = "reserved-words";
@@ -16824,15 +16680,6 @@ let
        sha512 = "z6PJ8Lml+v3ichVojCiB8toQJBuwR42ySM4ezjXIqXK3M0HczmKQ3LF4rhU55PfD99KEEXQG6yb7iOMyvYuHew==";
      };
    };
    "uc.micro-2.1.0" = {
      name = "uc.micro";
      packageName = "uc.micro";
      version = "2.1.0";
      src = fetchurl {
        url = "https://registry.npmjs.org/uc.micro/-/uc.micro-2.1.0.tgz";
        sha512 = "ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==";
      };
    };
    "uid-number-0.0.5" = {
      name = "uid-number";
      packageName = "uid-number";
@@ -16878,15 +16725,6 @@ let
        sha512 = "pJOW4nxjlmfwKApE4zvxLScM/njmwj/DiUBv7EabwE4O8kRUy+HIwxQtZLBPll/jx1LJyBcqNfB3/cpv9EZwOw==";
      };
    };
    "underscore-1.13.7" = {
      name = "underscore";
      packageName = "underscore";
      version = "1.13.7";
      src = fetchurl {
        url = "https://registry.npmjs.org/underscore/-/underscore-1.13.7.tgz";
        sha512 = "GMXzWtsc57XAtguZgaQViUOzs0KTkk8ojr3/xAxXLITqf/3EMwxC0inyETfDFjH/Krbhuep0HNbbjI9i/q3F3g==";
      };
    };
    "undici-5.28.4" = {
      name = "undici";
      packageName = "undici";
@@ -18255,15 +18093,6 @@ let
        sha512 = "fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==";
      };
    };
    "xmlcreate-2.0.4" = {
      name = "xmlcreate";
      packageName = "xmlcreate";
      version = "2.0.4";
      src = fetchurl {
        url = "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.4.tgz";
        sha512 = "nquOebG4sngPmGPICTS5EnxqhKbCmz5Ox5hsszI2T6U5qdrJizBc+0ilYSEjTSzU0yZcmvppztXe/5Al5fUwdg==";
      };
    };
    "xmlhttprequest-ssl-2.1.2" = {
      name = "xmlhttprequest-ssl";
      packageName = "xmlhttprequest-ssl";
@@ -21839,55 +21668,6 @@ in
    bypassCache = true;
    reconstructLock = true;
  };
  jsdoc = nodeEnv.buildNodePackage {
    name = "jsdoc";
    packageName = "jsdoc";
    version = "4.0.4";
    src = fetchurl {
      url = "https://registry.npmjs.org/jsdoc/-/jsdoc-4.0.4.tgz";
      sha512 = "zeFezwyXeG4syyYHbvh1A967IAqq/67yXtXvuL5wnqCkFZe8I0vKfm+EO+YEvLguo6w9CDUbrAXVtJSHh2E8rw==";
    };
    dependencies = [
      sources."@babel/helper-string-parser-7.25.9"
      sources."@babel/helper-validator-identifier-7.25.9"
      sources."@babel/parser-7.26.10"
      sources."@babel/types-7.26.10"
      sources."@jsdoc/salty-0.2.9"
      sources."@types/linkify-it-5.0.0"
      sources."@types/markdown-it-14.1.2"
      sources."@types/mdurl-2.0.0"
      sources."argparse-2.0.1"
      sources."bluebird-3.7.2"
      sources."catharsis-0.9.0"
      sources."entities-4.5.0"
      sources."escape-string-regexp-2.0.0"
      sources."graceful-fs-4.2.11"
      sources."js2xmlparser-4.0.2"
      sources."klaw-3.0.0"
      sources."linkify-it-5.0.0"
      sources."lodash-4.17.21"
      sources."markdown-it-14.1.0"
      sources."markdown-it-anchor-8.6.7"
      sources."marked-4.3.0"
      sources."mdurl-2.0.0"
      sources."mkdirp-1.0.4"
      sources."punycode.js-2.3.1"
      sources."requizzle-0.2.4"
      sources."strip-json-comments-3.1.1"
      sources."uc.micro-2.1.0"
      sources."underscore-1.13.7"
      sources."xmlcreate-2.0.4"
    ];
    buildInputs = globalBuildInputs;
    meta = {
      description = "API documentation generator for JavaScript";
      homepage = "https://github.com/jsdoc/jsdoc#readme";
      license = "Apache-2.0";
    };
    production = true;
    bypassCache = true;
    reconstructLock = true;
  };
  lcov-result-merger = nodeEnv.buildNodePackage {
    name = "lcov-result-merger";
    packageName = "lcov-result-merger";