Unable to build jlpm (Win10 Node.js v22.13.1)

Hello all,

First of all, I hope to be in the good category.

Some context
Windows 10
Developer mode activated
Node.js v22.13.1
Python 3.12

My goal is to build Amphi Etl (an open source ETL base on jupyterlab) as explained here https://github.com/amphi-ai/amphi-etl/blob/c9f7b8af4e43b1ac47aa805db523918d0bcb21dc/BUILDING.md

I have cloned the github repository and built my python virtual environment. So far so good. So, the next thing is to build jlpm.

The install command gave me that

(building_amphi) C:\Users\saubert\amphi-etl\jupyterlab-amphi>jlpm install
➤ YN0000: ┌ Project validation
➤ YN0057: │ @amphi/pipeline-components-manager: Resolutions field will be ignored
➤ YN0057: │ @amphi/pipeline-log-console: Resolutions field will be ignored
➤ YN0057: │ @amphi/pipeline-editor: Resolutions field will be ignored
➤ YN0000: └ Completed
➤ YN0000: ┌ Resolution step
➤ YN0002: │ @amphi/pipeline-components-core@workspace:packages/pipeline-components-core doesn't provide react (pfaf02), requested by antd
➤ YN0002: │ @amphi/pipeline-components-core@workspace:packages/pipeline-components-core doesn't provide react (p024ec), requested by react-remark
➤ YN0002: │ @amphi/pipeline-components-core@workspace:packages/pipeline-components-core doesn't provide react (p2f69b), requested by reactflow
➤ YN0002: │ @amphi/pipeline-components-core@workspace:packages/pipeline-components-core doesn't provide react-dom (p19317), requested by antd
➤ YN0002: │ @amphi/pipeline-components-core@workspace:packages/pipeline-components-core doesn't provide react-dom (pd3be8), requested by reactflow
➤ YN0002: │ @amphi/pipeline-components-local@workspace:packages/pipeline-components-local doesn't provide react (p590b8), requested by antd
➤ YN0002: │ @amphi/pipeline-components-local@workspace:packages/pipeline-components-local doesn't provide react (pfb674), requested by react-remark
➤ YN0002: │ @amphi/pipeline-components-local@workspace:packages/pipeline-components-local doesn't provide react (p86451), requested by reactflow
➤ YN0002: │ @amphi/pipeline-components-local@workspace:packages/pipeline-components-local doesn't provide react-dom (p2ac8d), requested by antd
➤ YN0002: │ @amphi/pipeline-components-local@workspace:packages/pipeline-components-local doesn't provide react-dom (p1e76c), requested by reactflow
➤ YN0002: │ @amphi/pipeline-components-manager@workspace:packages/pipeline-components-manager doesn't provide @codemirror/view (pe4c89), requested by @uiw/react-codemirror
➤ YN0002: │ @amphi/pipeline-components-manager@workspace:packages/pipeline-components-manager doesn't provide react (p48cce), requested by @uiw/react-codemirror
➤ YN0002: │ @amphi/pipeline-components-manager@workspace:packages/pipeline-components-manager doesn't provide react (pc0b5a), requested by antd
➤ YN0002: │ @amphi/pipeline-components-manager@workspace:packages/pipeline-components-manager doesn't provide react (pdacfd), requested by html-react-parser
➤ YN0002: │ @amphi/pipeline-components-manager@workspace:packages/pipeline-components-manager doesn't provide react (p62bfc), requested by react-ace
➤ YN0002: │ @amphi/pipeline-components-manager@workspace:packages/pipeline-components-manager doesn't provide react (p82af7), requested by react-dnd
➤ YN0002: │ @amphi/pipeline-components-manager@workspace:packages/pipeline-components-manager doesn't provide react (pbf94e), requested by react-dom
➤ YN0002: │ @amphi/pipeline-components-manager@workspace:packages/pipeline-components-manager doesn't provide react (pc23be), requested by react-flow-renderer
➤ YN0002: │ @amphi/pipeline-components-manager@workspace:packages/pipeline-components-manager doesn't provide react (p648a7), requested by react-mentions
➤ YN0002: │ @amphi/pipeline-components-manager@workspace:packages/pipeline-components-manager doesn't provide react (pb46e0), requested by react-select
➤ YN0002: │ @amphi/pipeline-components-manager@workspace:packages/pipeline-components-manager doesn't provide react (pb3a19), requested by reactflow
➤ YN0002: │ @amphi/pipeline-components-manager@workspace:packages/pipeline-components-manager doesn't provide react (p2c9d7), requested by styled-components
➤ YN0002: │ @amphi/pipeline-editor@workspace:packages/pipeline-editor doesn't provide react-dom (pe1361), requested by antd
➤ YN0002: │ @amphi/pipeline-editor@workspace:packages/pipeline-editor doesn't provide react-dom (pf92ca), requested by reactflow
➤ YN0002: │ @amphi/pipeline-log-console@workspace:packages/pipeline-console doesn't provide @types/react (p4938a), requested by @types/react-dom
➤ YN0002: │ @amphi/pipeline-metadata-panel@workspace:packages/pipeline-metadata-panel doesn't provide react-dom (p97aae), requested by reactflow
➤ YN0002: │ @jupyter-widgets/jupyterlab-manager@npm:3.1.9 doesn't provide crypto (pb72c2), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/application@npm:3.6.8 doesn't provide crypto (p18ce5), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/apputils@npm:3.6.8 doesn't provide crypto (pf52ff), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/cells@npm:3.6.8 doesn't provide crypto (p4f702), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/codeeditor@npm:3.6.8 doesn't provide crypto (p9c257), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/codemirror@npm:3.6.8 doesn't provide crypto (pe0c79), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/codemirror@npm:3.6.8 doesn't provide yjs (p28a14), requested by y-codemirror
➤ YN0002: │ @jupyterlab/completer@npm:4.3.5 doesn't provide react (p47bc1), requested by @jupyterlab/settingregistry
➤ YN0002: │ @jupyterlab/coreutils@npm:5.6.8 doesn't provide crypto (pab8be), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/docmanager@npm:3.6.8 doesn't provide crypto (paa6d7), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/docprovider@npm:3.6.8 doesn't provide crypto (p93ed7), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/docprovider@npm:3.6.8 doesn't provide yjs (pe27d9), requested by y-protocols
➤ YN0002: │ @jupyterlab/docprovider@npm:3.6.8 doesn't provide yjs (p8470a), requested by y-websocket
➤ YN0002: │ @jupyterlab/docregistry@npm:3.6.8 doesn't provide crypto (pfe666), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/filebrowser@npm:3.6.8 doesn't provide crypto (pc2f2f), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/logconsole@npm:3.6.8 doesn't provide crypto (p38842), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/mainmenu@npm:3.6.8 doesn't provide crypto (p57024), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/nbformat@npm:3.6.8 doesn't provide crypto (pd881b), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/notebook@npm:3.6.8 doesn't provide crypto (p72705), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/observables@npm:4.6.8 doesn't provide crypto (p99d81), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/outputarea@npm:3.6.8 doesn't provide crypto (p6e380), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/rendermime@npm:3.6.8 doesn't provide crypto (pe8b3c), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/services@npm:6.6.8 doesn't provide crypto (pc9b95), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/services@npm:7.1.8 doesn't provide react (p85d33), requested by @jupyterlab/settingregistry
➤ YN0002: │ @jupyterlab/services@npm:7.3.5 doesn't provide react (p67edc), requested by @jupyterlab/settingregistry
➤ YN0002: │ @jupyterlab/settingregistry@npm:3.6.8 doesn't provide crypto (pf99f2), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/statedb@npm:3.6.8 doesn't provide crypto (pd4a4b), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/statusbar@npm:3.6.8 doesn't provide crypto (p6b41e), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/translation@npm:3.6.8 doesn't provide crypto (p77c74), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/ui-components@npm:3.6.8 [b83fb] doesn't provide crypto (p1ecc1), requested by @lumino/coreutils
➤ YN0002: │ @jupyterlab/ui-components@npm:3.6.8 [d0296] doesn't provide crypto (p4b38b), requested by @lumino/coreutils
➤ YN0002: │ @lumino/application@npm:1.31.4 doesn't provide crypto (p8ebda), requested by @lumino/coreutils
➤ YN0002: │ @lumino/commands@npm:1.21.1 doesn't provide crypto (pcb0aa), requested by @lumino/coreutils
➤ YN0002: │ @lumino/dragdrop@npm:1.14.5 doesn't provide crypto (p2970f), requested by @lumino/coreutils
➤ YN0002: │ @lumino/polling@npm:1.11.4 doesn't provide crypto (p4206f), requested by @lumino/coreutils
➤ YN0002: │ @lumino/widgets@npm:1.37.2 doesn't provide crypto (p73e6d), requested by @lumino/coreutils
➤ YN0002: │ @nrwl/devkit@npm:16.10.0 doesn't provide nx (p048f2), requested by @nx/devkit
➤ YN0000: │ Some peer dependencies are incorrectly met; run yarn explain peer-requirements <hash> for details, where <hash> is the six-letter p-prefixed code
➤ YN0000: └ Completed in 0s 989ms
➤ YN0000: ┌ Fetch step
➤ YN0000: └ Completed in 4s 324ms
➤ YN0000: ┌ Link step
➤ YN0007: │ @parcel/watcher@npm:2.0.4 must be built because it never has been before or the last one failed
➤ YN0007: │ @fortawesome/fontawesome-free@npm:5.15.4 must be built because it never has been before or the last one failed
➤ YN0007: │ core-js-pure@npm:3.40.0 must be built because it never has been before or the last one failed
➤ YN0007: │ core-js@npm:3.40.0 must be built because it never has been before or the last one failed
➤ YN0007: │ leveldown@npm:5.6.0 must be built because it never has been before or the last one failed
➤ YN0007: │ @amphi/pipeline-editor@workspace:packages/pipeline-editor must be built because it never has been before or the last one failed
➤ YN0007: │ nx@npm:16.10.0 [cc223] must be built because it never has been before or the last one failed
➤ YN0000: └ Completed in 34m 14s
➤ YN0000: Done with warnings in 34m 20s

As you can see, there are a lot of messages and I don’t know if I should worry about it.

But what I am sure is that the next step fails

(building_amphi) C:\Users\saubert\amphi-etl\jupyterlab-amphi>jlpm run build
(node:17452) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
(Use `node.EXE --trace-deprecation ...` to show where the warning was created)
lerna notice cli v7.4.2

 >  Lerna (powered by Nx)   Running target build for 6 projects:

    - @amphi/pipeline-components-core
    - @amphi/pipeline-components-local
    - @amphi/pipeline-components-manager
    - @amphi/pipeline-log-console
    - @amphi/pipeline-editor
    - @amphi/pipeline-metadata-panel

 ——————————————————————————————————————————————————————————————————————————————————————————————————————————————————————

> @amphi/pipeline-components-manager:build

(node:17452) [DEP0060] DeprecationWarning: The `util._extend` API is deprecated. Please use Object.assign() instead.
@amphi/pipeline-components-manager: Traceback (most recent call last):
@amphi/pipeline-components-manager:   File "<frozen runpy>", line 198, in _run_module_as_main
@amphi/pipeline-components-manager:   File "<frozen runpy>", line 88, in _run_code
@amphi/pipeline-components-manager:   File "C:\Users\saubert\AppData\Local\Programs\Python\Python312\Scripts\jlpm.exe\__main__.py", line 7, in <module>
@amphi/pipeline-components-manager:   File "C:\Users\saubert\AppData\Local\Programs\Python\Python312\Lib\site-packages\jupyterlab\jlpmapp.py", line 43, in main
@amphi/pipeline-components-manager:     execvp("node", ["node", YARN_PATH, *argv])
@amphi/pipeline-components-manager:   File "C:\Users\saubert\AppData\Local\Programs\Python\Python312\Lib\site-packages\jupyterlab\jlpmapp.py", line 29, in execvp
@amphi/pipeline-components-manager:     p = subprocess.Popen([cmd] + argv[1:])
@amphi/pipeline-components-manager:         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@amphi/pipeline-components-manager:   File "C:\Users\saubert\AppData\Local\Programs\Python\Python312\Lib\subprocess.py", line 1026, in __init__
@amphi/pipeline-components-manager:     self._execute_child(args, executable, preexec_fn, close_fds,
@amphi/pipeline-components-manager:   File "C:\Users\saubert\AppData\Local\Programs\Python\Python312\Lib\subprocess.py", line 1538, in _execute_child
@amphi/pipeline-components-manager:     hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
@amphi/pipeline-components-manager:                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@amphi/pipeline-components-manager: OSError: [WinError 193] %1 n�est pas une application Win32 valide

 ——————————————————————————————————————————————————————————————————————————————————————————————————————————————————————

 >  Lerna (powered by Nx)   Running target build for 6 projects failed

   Tasks not run because their dependencies failed or --nx-bail=true:

   - @amphi/pipeline-components-core:build
   - @amphi/pipeline-components-local:build
   - @amphi/pipeline-log-console:build
   - @amphi/pipeline-editor:build
   - @amphi/pipeline-metadata-panel:build

   Failed tasks:

   - @amphi/pipeline-components-manager:build

It seems jupyterlab building process uses deprecated method of the node.js. Am I right? Is it expected to be corrected soon ? And how can I workaround (I guess with an older release of node.js?)

Best regards,

Simon