Subject: [PATCH v8 00/41] guix: node-build-system: Support compiling add-ons with node-gyp.

From: Liliana Marie Prikler <[email-masked]>
Date: Thu, 6 Jan 2022 18:45:40 +0100

Hi Philip,

Please pardon the large flood of messages in a short enough of time
without waiting for a reply.  I tried my best to come up with a v8 that
addresses my personal concerns quickly.  

My main changes were to patches 3-5, but note how deleting dependencies
became significantly easier in 6pp.  To list the main differences:
1. I've implemented the alist/JSON utilities in terms of SRFI-1 and SRFI-71.
2. I shortened the additional JSON API to jsobject-ref and jsobject-update*.
   I still believe alist->json-object and json-object->alist would be more
   useful (in particular, the main operation of jsobject-union is actually
   alist-flatten), but I digress.
3. I made it so that delete-dependencies also acts on peerDependencies.
   That way, we don't have to dance around ordering.
4. Regexps :)

If there's anything you'd like to say about this v8, feel free to do so.
As always, there's the waiting time of at least 14 days, which I plan to
adhere to.

Cheers,
Liliana

PS: If someone else wants to push these in my absence, please adjust the
signoffs.  Also, if those mail headers are broken, don't forget to reset
Philip as author.

Philip McGrath (41):
  guix: node-build-system: Add delete-lockfiles phase.
  guix: node-build-system: Add implicit libuv input.
  guix: node-build-system: Add JSON utilities.
  guix: node-build-system: Add avoid-node-gyp-rebuild phase.
  guix: node-build-system: Add 'delete-dependencies' helper function.
  gnu: node-semver-bootstrap: Use 'delete-dependencies'.
  gnu: node-ms-bootstrap: Use 'delete-dependencies'.
  gnu: node-binary-search-bootstrap: Use 'delete-dependencies'.
  gnu: node-debug-bootstrap: Use 'delete-dependencies'.
  gnu: node-llparse-builder-bootstrap: Use 'delete-dependencies'.
  gnu: node-llparse-frontend-bootstrap: Use 'delete-dependencies'.
  gnu: node-llparse-bootstrap: Use 'delete-dependencies'.
  gnu: node-semver: Use 'delete-dependencies'.
  gnu: node-wrappy: Use 'delete-dependencies'.
  gnu: node-once: Use 'delete-dependencies'.
  gnu: node-irc-colors: Use 'delete-dependencies'.
  gnu: node-irc: Use 'delete-dependencies'.
  gnu: Add node-inherits.
  gnu: Add node-safe-buffer.
  gnu: Add node-string-decoder.
  gnu: Add node-readable-stream.
  gnu: Add node-nan.
  gnu: Add node-openzwave-shared.
  gnu: Add node-addon-api.
  gnu: Add node-sqlite3.
  gnu: Add node-file-uri-to-path.
  gnu: Add node-bindings.
  gnu: Add node-segfault-handler.
  gnu: Add node-ms.
  gnu: Add node-debug.
  gnu: Add node-serialport-binding-abstract.
  gnu: Add node-serialport-parser-delimiter.
  gnu: Add node-serialport-parser-readline.
  gnu: Add node-serialport-bindings.
  gnu: Add node-serialport-parser-regex.
  gnu: Add node-serialport-parser-ready.
  gnu: Add node-serialport-parser-inter-byte-timeout.
  gnu: Add node-serialport-parser-cctalk.
  gnu: Add node-serialport-parser-byte-length.
  gnu: Add node-serialport-stream.
  gnu: Add node-serialport.

 gnu/packages/node-xyz.scm        | 942 ++++++++++++++++++++++++++++++-
 gnu/packages/node.scm            |  56 +-
 gnu/packages/zwave.scm           |  64 +++
 guix/build-system/node.scm       |   9 +-
 guix/build/node-build-system.scm | 236 +++++++-
 5 files changed, 1247 insertions(+), 60 deletions(-)

-- 
2.34.0