summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
7 daysbuild/tree-sitter: Fix usage of `with-atomic-json-file-replacement'.javascript-teamMaxim Cournoyer1-1/+1
This is a follow-up to commits 1562ce4ee16828faa3ed1ead2a1a505680fe7902 and 14b2f726d74668700167bfdad3a0d064e3f212be. * guix/build/tree-sitter-build-system.scm (patch-dependencies): Call the modern with-atomic-json-file-replacement* variant.
7 daysbuild/json-utils: Raise an error on preexisting key with `add-json-fields'.Maxim Cournoyer2-12/+45
* guix/build/json-utils.scm (&modify-json-preexisting-key-error): New condition. Export condition predicates. (modify-json-fields): Raise an error when attempting to inserting a pre-existing key. * tests/json-utils.scm ("add-json-fields, preexisting field") ("add-json-fields, preexisting multi-level field"): New tests.
7 daystests: Add new json-utils tests.Maxim Cournoyer1-0/+26
* tests/json-utils.scm ("add-json-fields", "add-json-fields, recursive") ("add-json-fields, recursive, partially preexisting"): New tests.
7 daysbuild/node: Clean-up deprecation.Maxim Cournoyer3-48/+17
(guix build json-utils): should not be deprecating things that are to be deprecated in (guix build node-build-system). For things now defined in (guix build json-utils), opt to re-export rather than define a deprecation, as this would otherwise cause warnings that cannot be resolved (due to the conflicting definitions). * guix/build/json-utils.scm: Export with-atomic-json-file-replacement*. Do not define/export delete-fields, replace-fields and add-fields. Avoid double definition of with-atomic-json-file-replacement and modify-json. * guix/build/node-build-system.scm: Streamline imports/re-exports. Do not deprecate things that were newly added to (guix build json-utils). * tests/node.scm: Add (guix build json-utils) import.
7 daystests: Fix `delete-dependencies' & cie.Maxim Cournoyer2-16/+40
* guix/build/node-build-system.scm (delete-dependencies): Properly pass the #:dependency-keys keyword. Avoid printing deletion message when no deletion occurs. * tests/node.scm ("delete-dependencies", "delete-dependencies/except") ("delete-dev-dependencies/except"): Control other dependency sections. Fixes: #10332
7 daysgnu: node-xyz: Adjust for missing (guix build json-utils) module.Maxim Cournoyer1-26/+32
This is a follow-up to commit b00aa06f870592dea795abedc3d51392688d595f, renamed `delete-fields' to `delete-json-fields', but forgot to add (guix build json-utils) in the #:modules, which defines it (and is part of the node-build-system default imported modules). * gnu/packages/node-xyz.scm (node-acorn, node-fastest-levenshtein) (node-glob, node-lru-cache, node-minimatch, node-minipass-7 node-path-scurry) (node-serialport-bindings, node-sqlite3) (node-addon-api, (node-source-map): [#:modules]: Add (guix build json-utils).
7 daystests: Move modify-json ordering test to tests/json-utils.scm.Maxim Cournoyer2-10/+11
* tests/node.scm ("modify-json, ordering"): Move to... * tests/json-utils.scm ("modify-json, ordering"): ... here.
7 daysgnu: r-v8: Use node-lts instead of libnode.Jelle Licht1-11/+8
* gnu/packages/cran.scm (r-v8)[inputs]: Use node-lts instead of libnode. [updater-extra-inputs]: Change "libnode" to "node". [find-v8]: Use 'search-input-file' & 'search-input-directory' to patch configure flags directly; drop INCLUDE_DIR and LIB_DIR environment variables. Change-Id: I520f36f94640b88d582a26bb97d39ff42b5e8dc7
7 daysgnu: node-lts: Deprecate libnode.Jelle Licht1-12/+1
* gnu/packages/node.scm (libnode): Deprecate in favor of node-lts. Change-Id: Ide3b8a23d5652fb8d963d906ca9a2a4259a5a9c8
7 daysgnu: node-lts: Add '--shared' configure flag.Jelle Licht1-0/+1
* gnu/packages/node.scm (node-lts)[configure-flags]: Add '--shared'. Change-Id: I57d9892c939fac2b761c216ff3b1bd1135878a46
7 daysgnu: node-lts: Update to 24.19.0.Jelle Licht1-6/+20
* gnu/packages/node.scm (node-lts): Update to 24.19.0. [arguments]<#:phases>: Add ‘do-not-capture-python’; revert patched shebangs in node-gyp Python files to '/usr/bin/env python3', avoiding Python in node's closure. [native-inputs]: Remove gcc-14. [inputs]: Use zstd instead of zstd-1.5.7. Change-Id: I5273bd73ff7a1d089b649c5eb7dc404acddfa1a7
7 daysgnu: node-bootstrap: Remove unused python-wrapper input.Jelle Licht1-1/+0
* gnu/packages/node.scm (node-bootstrap)[inputs]: Remove python-wrapper. Change-Id: If47b06b16a563856461faf3f14d3af8359ac5762
7 daysgnu: node-minipass: Generate valid package.json files.Jelle Licht1-1/+1
* gnu/packages/node-xyz.scm (node-minipass)[arguments]<#:phases>: Generate valid package.json files in 'build' phase. Change-Id: Ifd6b00f9eb8d4905666448035bd759d5ab426670
7 daysgnu: node-minipass: Fix and improve style.Nicolas Graves1-32/+34
The matched "format" variable overrides the guile format procedure. * gnu/packages/node-xyz.scm (node-minipass) [source]: Improve style. [arguments]: Improve style. <#:modules>: Add (srfi srfi-26). <#:phases>: Rewrite and fix 'build phase. Change-Id: I7e59143f8aad3870cd5fee98e253555b644c5b77 Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysbuild-system/node: Deprecate and export json procedures.Nicolas Graves2-6/+51
* guix/build/node-build-system.scm (with-atomic-json-file-replacement) (modify-json, modify-json-fields, delete-json-fields) (replace-json-fields): Import, deprecate, then export them. (delete-dev-dependencies, patch-dependencies): Use procedure variants that are not deprecated yet. Change-Id: I492e6e7f1f2e8972a2d2a1a037eb84270946e82b Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysgnu: packages: Replace replace-fields by replace-json-fields.Nicolas Graves1-9/+11
* gnu/packages/node-xyz.scm: Replace all uses of replace-fields by replace-json-fields. Change-Id: I109f82432f65c2e681e0c988e008ac848ad30f4c Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysgnu: packages: Replace delete-fields by delete-json-fields.Nicolas Graves2-111/+117
* gnu/packages/node-xyz.scm: Replace all uses of delete-fields by delete-json-fields. * gnu/packages/web.scm: Likewise. * guix/build/node-build-system.scm: Likewise. Change-Id: I7134d68a8cd101078ea1010d5e3e42e34b799114 Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daystests: Add tests for (guix build json-utils).Nicolas Graves5-2/+270
* tests/json-utils.scm: New file. * CODEOWNERS, etc/teams.scm, Makefile.am: Record tests/json-utils.scm. Change-Id: Iab107b04d3234c3b26186c56aed96d00050bb425 Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysguix: json-utils: Improve error handling.Nicolas Graves1-6/+32
* guix/build/json-utils.scm (&modify-json-error) (&modify-json-invalid-field-value-error) (&modify-json-missing-key-error): Add conditions. (modify-json-fields): Use them. * tests/json-utils.scm ("modify-json-fields, invalid field-path raises error"): Rewrite test using test-error. ("modify-json-fields, missing key raises error"): Add test. Change-Id: Ia12d31d90552f483997a38e23da4dc1fbac3afe9 Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 days.dir-locals: Add modify-json and test-error entries.Nicolas Graves1-0/+2
Change-Id: If4bae0a42e79c3797c31cf445050f27997fdb115 Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysguix: node: Migrate to the new modify-json.Nicolas Graves2-2/+3
* guix/build/node-build-system.scm (patch-dependencies): Migrate to the new modify-json. * guix/import/npm-binary.scm (npm-package->package-sexp): Likewise. Change-Id: I19cadcfc212c7a0efd352acf1d17938078206366 Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysguix: json-utils: Deprecate with-atomic-json-file-replacement.Nicolas Graves1-2/+13
* guix/build/json-utils.scm (with-atomic-json-file-replacement*): New variable. (with-atomic-json-file-replacement): Define with with-atomic-json-file-replacement* and deprecate. Change-Id: I3646ef0b20fd9d53c10f94b82f741ce9f8e6d474 Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysguix: json-utils: Rewrite and deprecate modify-json, delete-fields.Nicolas Graves3-29/+81
This commit is pushing for the drop of the optional file argument in modify-json which is confusing too specific for such a general function. Still support but deprecate the old style. * guix/build-system/node.scm (not-config?): New helper procedure. (%node-build-system-modules): Add modules necessary for deprecation. * guix/build/json-utils.scm (modify-json*, delkw): New procedures. (modify-json): Warn in the case of the former syntax. (delete-fields): Deprecate in favor of... (delete-json-fields): ... deprecated from delete-fields. (replace-fields): Deprecate in favor of... (replace-json-fields): ... deprecated from replace-fields. (add-fields): Deprecate in favor of... (add-json-fields): ... deprecated from replace-fields. Change-Id: Ieb0642cfb8274bd1d044d0539cbfa0fe02793f2d Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysguix: Refactor (guix build json-utils) from the node build system.Nicolas Graves8-125/+175
* guix/build/node-build-system.scm (delete-fields, modify-json, modify-json-fields, replace-fields) (with-atomic-json-file-replacement, add-fields): Move procedures from here... * guix/build/json-utils.scm: ...to this new file. * guix/build-system/node.scm (%node-build-system-modules, node-build): Add (guix build json-utils) module. * guix/build/tree-sitter-build-system.scm (patch-dependencies): Import with-atomic-json-file-replacement from (guix build json-utils). * guix/import/npm-binary.scm: Import (guix build json-utils). * CODEOWNERS, etc/teams.scm: Add guix/build/json-utils.scm to the javascript team scope. * Makefile.am: Add guix/build/json-utils.scm. Change-Id: I5264a5265e376902c0a309c0177b7496ac3b6295 Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysbuild-system: node: Drop uneeded %node-build-system-modules.Nicolas Graves1-4/+0
* guix/build-system/node.scm (%node-build-system-modules): Drop (json ...) modules, as (with-extensions (list guile-json) ...) should already inject them properly. Change-Id: Id14b47c01c7aa058cc2db3ca0a7ba8fa897ea6cc Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysgnu: Remove node-ms-bootstrap.Nicolas Graves1-34/+0
* gnu/packages/node.scm (node-ms-bootstrap): Delete variable. Change-Id: Ifebcf648e77dcd2fc370aa3724470b2707f30837 Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysgnu: Remove node-debug-bootstrap.Nicolas Graves1-48/+0
* gnu/packages/node.scm (node-debug-bootstrap): Delete variable. Change-Id: Ib82e3d2f4bf91100383ff31a40f79a8f09b5bcd7 Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysgnu: node-llparse-bootstrap: Drop debug dependency.Nicolas Graves1-8/+11
* gnu/packages/node.scm (node-llparse-bootstrap) [arguments]{phases}: In phase 'patch-dependencies, replace the debug dependency by native node:util functionality. [inputs]: Drop node-debug-bootstrap. Change-Id: I766f0c1895cfcc1a170e671ee78e8a623e7c737d Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysgnu: node-llparse-frontend-bootstrap: Drop debug dependency.Nicolas Graves1-8/+11
* gnu/packages/node.scm (node-llparse-frontend-bootstrap) [arguments]{phases}: In phase 'patch-dependencies, replace the debug dependency by native node:util functionality. [inputs]: Drop node-debug-bootstrap. Change-Id: Ia8f1a92cec2fb3d75d60b762ad0128a5d7f6d45c Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysgnu: llhttp-bootstrap: Improve style.Nicolas Graves1-35/+34
* gnu/packages/node.scm (llhttp-bootstrap): [arguments]: Improve style, use G-expressions. [native-inputs]: Drop input labels. Change-Id: I93af15f50f7b95eaf101dfa698370c7ed3ca2022 Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysgnu: node-llparse-bootstrap: Update to 7.3.1.Nicolas Graves1-2/+2
* gnu/packages/node.scm (node-llparse-bootstrap): Update to 7.3.1. Change-Id: I56235a5eb6829f55927915db04782459dd9610a8 Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysgnu: node-llparse-bootstrap: Avoid node-build-system.Nicolas Graves1-43/+49
* gnu/packages/node.scm (node-llparse-bootstrap) [name]: Add -bootstrap suffix. [build-system]: Switch to gnu-build-system + bootstrap-node-phases. [arguments]: Improve style. {node}: Drop it. {phases}: Migrate accordingly. [native-inputs]: Add node-bootstrap. Change-Id: I5e4a2db417daf7443043c7efab3e45570f2f960a Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysgnu: node-llparse-frontend-bootstrap: Avoid node-build-system.Nicolas Graves1-42/+49
* gnu/packages/node.scm (node-llparse-frontend-bootstrap) [name]: Add -bootstrap suffix. [source]: Drop snippet, move it to a phase. [build-system]: Switch to gnu-build-system + bootstrap-node-phases. [arguments]: Improve style. {node}: Drop it. {phases}: Migrate accordingly. [native-inputs]: Add node-bootstrap. Change-Id: I37f4c0b9ba997d21a95a9f97be3e79d6630817a0 Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysgnu: node-llparse-builder-bootstrap: Avoid node-build-system.Nicolas Graves1-44/+44
* gnu/packages/node.scm (node-llparse-builder-bootstrap) [name]: Add -bootstrap suffix. [source]: Drop snippet, move it to a phase. [build-system]: Switch to gnu-build-system + bootstrap-node-phases. [arguments]: Improve style. {node}: Drop it. {phases}: Migrate accordingly. [native-inputs]: Add node-bootstrap. Change-Id: I9430726b9be5661a58dff23cdc2a0adc077950f8 Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysgnu: Remove node-binary-search-bootstrap.Nicolas Graves1-29/+0
* gnu/packages/node.scm (node-binary-search-bootstrap): Delete variable. Change-Id: I4ada93aa48f0acaf60f4515182eb55f27be5b8c6 Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysgnu: node-llparse-builder-bootstrap: Update to 1.5.2-1.b0470c.Nicolas Graves1-66/+66
* gnu/packages/node.scm (node-llparse-builder-bootstrap): Update to 1.5.2-1.b0470c. [inputs]: Remove node-binary-search-bootstrap, node-debug-bootstrap. Change-Id: I10e06e34ca7e139d512e25d8500fa38bbc43bf93 Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysgnu: node-debug-bootstrap: Avoid node-build-system.Nicolas Graves1-22/+27
* gnu/packages/node.scm (node-debug-bootstrap) [name]: Add -bootstrap suffix. [build-system]: Switch to gnu-build-system + bootstrap-node-phases. [arguments]: Improve style. {node}: Drop it. {phases}: Migrate accordingly. [native-inputs]: Add node-bootstrap. Suggested-By-AI: Finding out I had to resolve modules. Change-Id: I855bcb7061046f99df4ea7fff5de506f3a6fb824 Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysgnu: node-ms-bootstrap: Avoid node-build-system.Nicolas Graves1-16/+15
* gnu/packages/node.scm (node-ms-bootstrap) [name]: Add -bootstrap suffix. [build-system]: Switch to gnu-build-system + bootstrap-node-phases. [arguments]: Improve style. {node}: Drop it. {phases}: Migrate accordingly. [native-inputs]: Add node-bootstrap. Change-Id: I1aa223a7c151f05ff67755cce3f01b76192ed750 Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysgnu: node-semver-bootstrap: Avoid node-build-system.Nicolas Graves1-9/+10
* gnu/packages/node.scm (node-semver-bootstrap) [name]: Add -bootstrap suffix. [build-system]: Switch to gnu-build-system + bootstrap-node-phases. [arguments]: Improve style. {node}: Drop it. {phases}: Migrate accordingly. [native-inputs]: Add node-bootstrap. Change-Id: I5396ef2a26d7a74e31f458d9a61565bce368f8f7 Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysnode: Introduce a stripped-down build-system for bootstrap.Nicolas Graves1-1/+60
* gnu/packages/node.scm (bootstrap-node-phases, delete-dependencies*): Add essential components of a stripped-down node-build-system for bootstrap. Change-Id: I844da3e30bc5f0fc18f135f0e216f2e11b6646b1 Signed-off-by: Jelle Licht <jlicht@fsfe.org>
7 daysgnu: Add didder.moksh2-0/+59
* gnu/packages/image.scm (didder): New variable. Merges: guix/guix!10673 Modified-by: Sharlatan Hellseher <sharlatanus@gmail.com> Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
7 daysgnu: Add go-github-com-joshdk-quantize.moksh1-0/+26
* gnu/packages/golang-graphics.scm (go-github-com-joshdk-quantize): New variable. Relates-to: guix/guix!10673 Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
7 daysgnu: Add go-github-com-makeworld-the-better-one-dither-v2.moksh1-0/+35
* gnu/packages/golang-graphics.scm (go-github-com-makeworld-the-better-one-dither-v2): New variable. Relates-to: guix/guix!10673 Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
7 daysgnu: python-openpyxl: Build with python-lxml, simplify tests.Sharlatan Hellseher1-18/+4
* gnu/packages/python-xyz.scm (python-openpyxl): [arguments] <#:test-flags>: Drop most of the options as deselected tests passed successfully. [native-inputs]: Replace python-lxml-4.9 with python-lxml.
7 daysgnu: python-readability-lxml: Update to 0.9.Sharlatan Hellseher1-4/+2
* gnu/packages/python-xyz.scm (python-readability-lxml): Update to 0.9.
7 daysgnu: Add go-github-com-cpmech-gosl.Orahcio Felício de Sousa1-0/+71
* gnu/packages/maths.scm (go-github-com-cpmech-gosl): New variable. Merges: guix/guix!10813 Modified-by: Sharlatan Hellseher <sharlatanus@gmail.com> Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
8 daysgnu: python-sphinx-intl: Update to 2.3.2 fixing build.Sharlatan Hellseher1-6/+11
* gnu/packages/sphinx.scm (python-sphinx-intl): Update to 2.3.2. Fixes: guix/guix#10825
8 daysgnu: Add monocypher.bdunahu1-0/+49
* gnu/packages/crypto.scm (monocypher): New variable. Merges guix/guix!10739. Signed-off-by: Cayetano Santos <csantosb@inventati.org>
8 daysgnu: emacs-sops: Add tests and set executable path.coopi1-6/+37
* gnu/packages/emacs-xyz.scm (emacs-sops)[arguments]: New field. <#:test-command>: Set it. <#:phases>: Add 'patch-sops-executable' and 'set-sops-age-key-file'. [native-inputs]: Add age. [inputs]: Add sops. [description]: Adjust accordingly. Merges guix/guix!9057 Signed-off-by: Cayetano Santos <csantosb@inventati.org> Modified-by: Cayetano Santos <csantosb@inventati.org>
8 daysgnu: emacs-evil-collection: Update to 3.0.1.Sergey Trofimov1-3/+5
* gnu/packages/emacs-xyz.scm (emacs-evil-collection): Update to 3.0.1. Merges guix/guix!5492 Signed-off-by: Cayetano Santos <csantosb@inventati.org> Modified-by: Cayetano Santos <csantosb@inventati.org>