Skip to content

OpenAPI: errors under nodejs 10 #3834

@muxator

Description

@muxator

When executing under Nodejs 10 (the minimum currently supported LTS version), the backend test (cd src ; npm test) cause an error in the server log.

Etherpad version: e625168 (current develop).
Tested under:

  • linux, nodejs 12.13.1 <-- works
  • linux, nodejs 10.14.1 <-- error

This is the relevant snippet:

[2020-04-05 02:50:47.813] [INFO] API - REQUEST, v1.2.14:setHTML, {"apikey":"XXXX","padID":"pWvFw","html":"<div><b>Hello HTML</title></head></div>"}
[2020-04-05 02:50:47.815] [WARN] ImportHtml - HTML was not properly formed TypeError: Cannot read property 'tagName' of undefined
    at Object.nodeTagName (<BASE>/src/static/js/contentcollector.js:50:16)
    at isBlockElement (<BASE>/src/static/js/contentcollector.js:97:31)
    at Object.cc.collectContent (<BASE>/src/static/js/contentcollector.js:395:19)
    at Object.exports.setPadHTML (<BASE>/src/node/utils/ImportHtml.js:41:8)
    at Object.exports.setHTML (<BASE>/src/node/db/API.js:290:16)
    at process._tickCallback (internal/process/next_tick.js:68:7)
TypeError: Cannot read property 'tagName' of undefined
    at Object.nodeTagName (<BASE>/src/static/js/contentcollector.js:50:16)
    at isBlockElement (<BASE>/src/static/js/contentcollector.js:97:31)
    at Object.cc.collectContent (<BASE>/src/static/js/contentcollector.js:395:19)
    at Object.exports.setPadHTML (<BASE>/src/node/utils/ImportHtml.js:41:8)
    at Object.exports.setHTML (<BASE>/src/node/db/API.js:290:16)
    at process._tickCallback (internal/process/next_tick.js:68:7)
[2020-04-05 02:50:47.818] [ERROR] console - (node:52817) [DEP0079] DeprecationWarning: Custom inspection function on Objects via .inspect() is deprecated

I noticed this when trying to run jshint, and it complained that something was only supported on ECMAScript 9 (I had to enable esversion: 9 in .jshintrc).

More details later.

@anttiviljami: can you please investigate? Thanks

Etherpad NodeJS support:

Etherpad 1.8.0 supports node 8 (see the startup logs) and the documentation.
Etherpad 1.8.3 will require node 10 (and is required to support it). See #3650. The next version will be called 1.8.3 (bad milestone name)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions