Signal KSK
Signal K14mo ago
48 replies
naugehyde

naugehyde - Server code has gotten cruftyThe ...

Server code has gotten crufty

The server code base, especially as UI is concerned, has gotten crufty. The React version SK relies on (16.13.1) is two major revisions behind, react-jsonschema-forms the package underlying the plugin config page is deprecated, Typescript 4 is coming up on its 5th birthday, and the maximum reliable node version for SK (node 18) is 4 major revisions behind.

Been experimenting with trying to get a more up to date react-jsonschema-forms implementation into SK which meant updating react to V18 which in turn required node v20 which in turn required TypeScript 5.x which in turn required updating just about every other package to their latest revision .

Took some tweaking but mostly, it works. At least, so far. Further testing and tweaking is of course, necessary. There were some code changes (mostly in the courses API) to get SK to build. and there's a host of warnings from sass/scss/css. But it's an encouraging start that provides a baseline for an more up to date SignalK which will be less vulnerable to deprecated, incompatibile and unsupported packages.

Is there a roadmap for updating core packages and core plugins to more recent support packages and node versions? Has anyone else done any work on this to date? Should the work on an updated SK be done in a branch on the Server repository or should it be done in a new repo (like Signalk-Next)? Who wants to contribute? The effort will take coders, builders and testers. One person performing all these functions is not ideal.
Was this page helpful?