[SoC] Week 3 Report: Integrating Node.js with ZOO-services

Momtchil Momtchev momtchil at momtchev.com
Sun Jul 3 11:49:15 PDT 2022


Report for Week 3:

This week tasks were the tasks originally scheduled for week 2

     * The creation of a good Debian repository with support for 
multiple versions and releases has been an unexpectedly laborious task 
due to the fact that each change requires up to to 2 hours of build time 
and debugging inside remote Docker containers is very impractical

     * The package along with the napi-libnode PR has reached usable 
status for the ZOO-Project which was the initial goal:

         https://github.com/mmomtchev/libnode

     * The repository is still not up to the standards required for a 
mainstream PPA, but I will continue to work on it when I have the time 
to spare:

         * Launchpad requirements

         * Node.js 18.x support

         * Debian 10 and Debian 11 support

     * The first Launchpad PPA was uploaded but the package still does 
not meet all the requirements:

         https://launchpad.net/~mmomtchev/+archive/ubuntu/libnode

         Of all these, the requirement that all binary packages be 
compiled on the Launchpad servers by their own scripts and their own 
configuration and without internet access has been the most problematic 
- there are still a few issues with it - related to the Node.js build 
process launching "npm install" - these have to be repacked on the side 
in a Debian-acceptable form

     (making it work is my top priority as I expect to be using it for 
generating the ZOO-Kernel Docker)

     * A more generic repository with both Debian and Ubuntu packets 
will probably be created on an OSGeo hosted server - as Debian does not 
have a Launchpad equivalent

     https://trac.osgeo.org/osgeo/ticket/2780

     * Should this subproject gain any additional users - which I fully 
expect it to since it makes libnode usable without requiring significant 
experience with V8/Node.js internals and linking with its internal data 
structures -  the Node.js PR will surely go through too


Next week will be dedicated to

     * Implementing ZOORequest, ZOOTranslate, ZOOUpdateStatus and alert 
using Node N-API


As there are still some problems with the package, this week can very 
well spill over the next one, but since the Object/Array JS<->C++ 
conversion has already been implemented (the task for the week 5), this 
should not impact the overall schedule.


-- 
Momtchil Momtchev <momtchil at momtchev.com>



More information about the SoC mailing list