Skip to content
This repository has been archived by the owner on Jan 7, 2021. It is now read-only.

not building with nodejs 12 #177

Closed
p3x-robot opened this issue May 5, 2019 · 43 comments
Closed

not building with nodejs 12 #177

p3x-robot opened this issue May 5, 2019 · 43 comments

Comments

@p3x-robot
Copy link
Contributor

it is related to:
xmppo/node-expat#196
and
xmppo/node-expat#195

@p3x-robot
Copy link
Contributor Author

node expat is updated, so it is straightforward to upgrade

@p3x-robot
Copy link
Contributor Author

@bugvish and @psemme is released and supports NodeJs v12 xmppo/node-expat#195 (comment)

is it possible to upgrade the node-expat package?

@p3x-robot
Copy link
Contributor Author

p3x-robot commented Jun 7, 2019

@bugvish and @psemme there is a pull merge request that fixes this issue

#180

@p3x-robot
Copy link
Contributor Author

the merge is done, now just waiting fro the npm publish on this package.

@gajus
Copy link

gajus commented Jul 11, 2019

@bugvish and @psemme can this be released?

@gajus
Copy link

gajus commented Jul 25, 2019

Migrated away to https://www.npmjs.com/package/xml-js.

@p3x-robot
Copy link
Contributor Author

that is a bit slower :) i wait until they publish, there is a temporary package that is same api and is c based.

@p3x-robot
Copy link
Contributor Author

i am open to merge any pull request. I fixed it an named it as p3x-xml2json and it works with Nodejs 12.

https://github.com/patrikx3/xml2json

@gajus
Copy link

gajus commented Jul 28, 2019

that is a bit slower :) i wait until they publish, there is a temporary package that is same api and is c based.

Didn't notice any significant performance degradation.

@p3x-robot
Copy link
Contributor Author

well the package you are talking about is NodeJs based and xml2json is C based, so you know it is faster 100%. but it is just a choice or style, just commenting... :)

@drmrbrewer
Copy link

drmrbrewer commented Oct 30, 2019

@p3x-robot I am having a problem running my node app, even though I switched to using p3x-xml2json rather than xml2json. I'm using node v12.13.0. The error I get when running the node app is:

Error: The module '/root/workspace/metno/node_modules/node-expat/build/Release/node_expat.node'
was compiled against a different Node.js version using
NODE_MODULE_VERSION 72. This version of Node.js requires
NODE_MODULE_VERSION 64. Please try re-compiling or re-installing
the module (for instance, using `npm rebuild` or `npm install`).
	at Object.Module._extensions..node (internal/modules/cjs/loader.js:718:18)
	at Module.load (internal/modules/cjs/loader.js:599:32)
	at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
	at Function.Module._load (internal/modules/cjs/loader.js:530:3)
	at Module.require (internal/modules/cjs/loader.js:637:17)
	at require (internal/modules/cjs/helpers.js:22:18)
	at bindings (/root/workspace/metno/node_modules/bindings/bindings.js:112:48)
	at Object.<anonymous> (/root/workspace/metno/node_modules/node-expat/lib/node-expat.js:4:32)
	at Module._compile (internal/modules/cjs/loader.js:689:30)
	at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)

It's exactly the same error I get when using xml2json.

@p3x-robot
Copy link
Contributor Author

delete the node modules and npm install again, it will work, but with p3x-xml2json

@drmrbrewer
Copy link

drmrbrewer commented Oct 30, 2019

@p3x-robot except that it doesn't :-/ of course, I already had deleted node modules and did npm install again... with the p3x fork... same error.

package.json:

"main": "metno.js",
  "dependencies": {
    "express": "^4.17.1",
    "lodash": "^4.17.15",
    "p3x-xml2json": "^2019.10.194"
  },

metno.js:

const parser = require('p3x-xml2json'); 

@p3x-robot
Copy link
Contributor Author

the error is :
/root/workspace/metno/node_modules/node-expat/build/Release/node_expat.node

somewhere the code is node modules is compiled with an older version of NodeJs.

the exact error:
NODE_MODULE_VERSION 72. This version of Node.js requires
NODE_MODULE_VERSION 64. Please try re-compiling or re-installing

So you not deleted some node_modules folder properly.

look there are no problems at all:

patrikx3@bitang:~/Projects/patrikx3/p3x/xml2json$ rm -rf node_modules/
patrikx3@bitang:~/Projects/patrikx3/p3x/xml2json$ node -v
v12.13.0
patrikx3@bitang:~/Projects/patrikx3/p3x/xml2json$ npm install

> node-expat@2.3.18 install /home/patrikx3/Projects/patrikx3/p3x/xml2json/node_modules/node-expat
> node-gyp rebuild

make: Entering directory '/home/patrikx3/Projects/patrikx3/p3x/xml2json/node_modules/node-expat/build'
  CC(target) Release/obj.target/expat/deps/libexpat/lib/xmlparse.o
  CC(target) Release/obj.target/expat/deps/libexpat/lib/xmltok.o
In file included from ../deps/libexpat/lib/xmltok.c:306:0:
../deps/libexpat/lib/xmltok_impl.c: In function ‘normal_isPublicId’:
../deps/libexpat/lib/xmltok_impl.c:1404:10: warning: this statement may fall through [-Wimplicit-fallthrough=]
       if (!(BYTE_TO_ASCII(enc, ptr) & ~0x7f))
          ^
../deps/libexpat/lib/xmltok_impl.c:1406:5: note: here
     default:
     ^~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘normal_sameName’:
../deps/libexpat/lib/xmltok_impl.c:1624:10: warning: this statement may fall through [-Wimplicit-fallthrough=]
       if (*ptr1++ != *ptr2++) \
          ^
../deps/libexpat/lib/xmltok_impl.c:1626:5: note: in expansion of macro ‘LEAD_CASE’
     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
     ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:1623:5: note: here
     case BT_LEAD ## n: \
     ^
../deps/libexpat/lib/xmltok_impl.c:1626:18: note: in expansion of macro ‘LEAD_CASE’
     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
                  ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:1624:10: warning: this statement may fall through [-Wimplicit-fallthrough=]
       if (*ptr1++ != *ptr2++) \
          ^
../deps/libexpat/lib/xmltok_impl.c:1626:18: note: in expansion of macro ‘LEAD_CASE’
     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
                  ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:1623:5: note: here
     case BT_LEAD ## n: \
     ^
../deps/libexpat/lib/xmltok_impl.c:1626:31: note: in expansion of macro ‘LEAD_CASE’
     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
                               ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘normal_scanRef’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:509:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:509:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:518:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:518:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘normal_scanPercent’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:886:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:886:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:896:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:896:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘normal_scanLt’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:693:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:693:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:731:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:731:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:743:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:743:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:720:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:720:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘normal_scanPi’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:246:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:246:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:253:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:253:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘normal_scanEndTag’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:397:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:397:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:404:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:404:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘normal_scanAtts’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:552:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:552:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:649:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:649:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:541:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:541:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘normal_prologTok’:
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:1153:9: note: in expansion of macro ‘CHECK_NAME_CASES’
         CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
         ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:1153:9: note: in expansion of macro ‘CHECK_NAME_CASES’
         CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
         ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:1139:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:1139:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘normal_scanPoundName’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:914:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:914:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:921:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:921:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
In file included from ../deps/libexpat/lib/xmltok.c:791:0:
../deps/libexpat/lib/xmltok_impl.c: In function ‘little2_isPublicId’:
../deps/libexpat/lib/xmltok_impl.c:1404:10: warning: this statement may fall through [-Wimplicit-fallthrough=]
       if (!(BYTE_TO_ASCII(enc, ptr) & ~0x7f))
          ^
../deps/libexpat/lib/xmltok_impl.c:1406:5: note: here
     default:
     ^~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘little2_sameName’:
../deps/libexpat/lib/xmltok_impl.c:1624:10: warning: this statement may fall through [-Wimplicit-fallthrough=]
       if (*ptr1++ != *ptr2++) \
          ^
../deps/libexpat/lib/xmltok_impl.c:1626:5: note: in expansion of macro ‘LEAD_CASE’
     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
     ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:1623:5: note: here
     case BT_LEAD ## n: \
     ^
../deps/libexpat/lib/xmltok_impl.c:1626:18: note: in expansion of macro ‘LEAD_CASE’
     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
                  ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:1624:10: warning: this statement may fall through [-Wimplicit-fallthrough=]
       if (*ptr1++ != *ptr2++) \
          ^
../deps/libexpat/lib/xmltok_impl.c:1626:18: note: in expansion of macro ‘LEAD_CASE’
     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
                  ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:1623:5: note: here
     case BT_LEAD ## n: \
     ^
../deps/libexpat/lib/xmltok_impl.c:1626:31: note: in expansion of macro ‘LEAD_CASE’
     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
                               ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘little2_scanRef’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:509:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:509:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:518:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:518:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘little2_scanPercent’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:886:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:886:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:896:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:896:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘little2_scanLt’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:693:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:693:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:731:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:731:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:743:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:743:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:720:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:720:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘little2_scanPi’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:246:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:246:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:253:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:253:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘little2_scanEndTag’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:397:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:397:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:404:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:404:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘little2_scanAtts’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:552:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:552:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:649:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:649:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:541:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:541:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘little2_prologTok’:
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:1153:9: note: in expansion of macro ‘CHECK_NAME_CASES’
         CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
         ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:1153:9: note: in expansion of macro ‘CHECK_NAME_CASES’
         CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
         ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:1139:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:1139:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘little2_scanPoundName’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:914:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:914:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:921:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:921:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
In file included from ../deps/libexpat/lib/xmltok.c:932:0:
../deps/libexpat/lib/xmltok_impl.c: In function ‘big2_isPublicId’:
../deps/libexpat/lib/xmltok_impl.c:1404:10: warning: this statement may fall through [-Wimplicit-fallthrough=]
       if (!(BYTE_TO_ASCII(enc, ptr) & ~0x7f))
          ^
../deps/libexpat/lib/xmltok_impl.c:1406:5: note: here
     default:
     ^~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘big2_sameName’:
../deps/libexpat/lib/xmltok_impl.c:1624:10: warning: this statement may fall through [-Wimplicit-fallthrough=]
       if (*ptr1++ != *ptr2++) \
          ^
../deps/libexpat/lib/xmltok_impl.c:1626:5: note: in expansion of macro ‘LEAD_CASE’
     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
     ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:1623:5: note: here
     case BT_LEAD ## n: \
     ^
../deps/libexpat/lib/xmltok_impl.c:1626:18: note: in expansion of macro ‘LEAD_CASE’
     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
                  ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:1624:10: warning: this statement may fall through [-Wimplicit-fallthrough=]
       if (*ptr1++ != *ptr2++) \
          ^
../deps/libexpat/lib/xmltok_impl.c:1626:18: note: in expansion of macro ‘LEAD_CASE’
     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
                  ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:1623:5: note: here
     case BT_LEAD ## n: \
     ^
../deps/libexpat/lib/xmltok_impl.c:1626:31: note: in expansion of macro ‘LEAD_CASE’
     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
                               ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘big2_scanRef’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:509:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:509:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:518:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:518:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘big2_scanPercent’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:886:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:886:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:896:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:896:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘big2_scanLt’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:693:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:693:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:731:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:731:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:743:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:743:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:720:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:720:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘big2_scanPi’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:246:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:246:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:253:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:253:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘big2_scanEndTag’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:397:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:397:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:404:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:404:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘big2_scanAtts’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:552:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:552:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:649:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:649:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:541:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:541:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘big2_prologTok’:
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:1153:9: note: in expansion of macro ‘CHECK_NAME_CASES’
         CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
         ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:1153:9: note: in expansion of macro ‘CHECK_NAME_CASES’
         CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
         ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:1139:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:1139:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘big2_scanPoundName’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:914:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:914:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
        ^
../deps/libexpat/lib/xmltok_impl.c:921:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   case BT_NMSTRT: \
   ^
../deps/libexpat/lib/xmltok_impl.c:921:5: note: in expansion of macro ‘CHECK_NAME_CASES’
     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
     ^~~~~~~~~~~~~~~~
  CC(target) Release/obj.target/expat/deps/libexpat/lib/xmlrole.o
  AR(target) Release/obj.target/deps/libexpat/libexpat.a
  COPY Release/libexpat.a
  CXX(target) Release/obj.target/node_expat/node-expat.o
  SOLINK_MODULE(target) Release/obj.target/node_expat.node
  COPY Release/node_expat.node
make: Leaving directory '/home/patrikx3/Projects/patrikx3/p3x/xml2json/node_modules/node-expat/build'
added 985 packages from 1526 contributors in 12.784s

@p3x-robot
Copy link
Contributor Author

rm -rf /root/workspace/metno/node_modules
cd /root/workspace/metno/
npm install --allow-root

# after that try this as well
npm rebuild

usually it works, but the bug is not in the package but, somewhere in your path.

@drmrbrewer
Copy link

That's exactly what I have been doing. It's weird... I have literally no other node_modules in the path. There is just one node js file, one package.json, and the only dependencies are the ones I posted above. The error still happens.

@drmrbrewer
Copy link

Note... there are no problems doing npm install or npm rebuild... the error only happens when I run the node app.

@drmrbrewer
Copy link

drmrbrewer commented Oct 30, 2019

There is a bit of the error just before that I posted above:

/root/workspace/metno/node_modules/bindings/bindings.js:121
        throw e;
        ^

i.e. the full error when I run the app is:

/root/workspace/metno/node_modules/bindings/bindings.js:121
		throw e;
		^

Error: The module '/root/workspace/metno/node_modules/node-expat/build/Release/node_expat.node'
was compiled against a different Node.js version using
NODE_MODULE_VERSION 72. This version of Node.js requires
NODE_MODULE_VERSION 64. Please try re-compiling or re-installing
the module (for instance, using `npm rebuild` or `npm install`).
	at Object.Module._extensions..node (internal/modules/cjs/loader.js:718:18)
	at Module.load (internal/modules/cjs/loader.js:599:32)
	at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
	at Function.Module._load (internal/modules/cjs/loader.js:530:3)
	at Module.require (internal/modules/cjs/loader.js:637:17)
	at require (internal/modules/cjs/helpers.js:22:18)
	at bindings (/root/workspace/metno/node_modules/bindings/bindings.js:112:48)
	at Object.<anonymous> (/root/workspace/metno/node_modules/node-expat/lib/node-expat.js:4:32)
	at Module._compile (internal/modules/cjs/loader.js:689:30)
	at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)

@p3x-robot
Copy link
Contributor Author

try this:

npm cache --force

the try installing again

@p3x-robot
Copy link
Contributor Author

sorry:

npm cache clean --force

@p3x-robot
Copy link
Contributor Author

yes i can see the error:

Error: The module '/root/workspace/metno/node_modules/node-expat/build/Release/node_expat.node'
was compiled against a different Node.js version using
NODE_MODULE_VERSION 72. This version of Node.js requires
NODE_MODULE_VERSION 64. Please try re-compiling or re-installing
the module (for instance, using `npm rebuild` or `npm install`).

@p3x-robot
Copy link
Contributor Author

somewhere there is node_expat built with NODE_MODULE_VERSION 64 and now you are on NODE_MODULE_VERSION 72....

@drmrbrewer
Copy link

drmrbrewer commented Oct 30, 2019

Nope still get the error after cache clean. Apart from xml2json I am literally only use express and lodash, and those apparently don't depend on node-expat. I'm really confused.

Do you know what the bindings error means?

/root/workspace/metno/node_modules/bindings/bindings.js:121
        throw e;
        ^

@drmrbrewer
Copy link

drmrbrewer commented Oct 30, 2019

OK update... I'm using a Cloud9 IDE and usually for convenience I just hit RUN in the IDE (with the js code file open). It has always worked that way, just fine. If I run the node app direclty from the CLI node metno.js it runs without this error... only when I hit RUN in Cloud9 IDE... weird it has never done this before??

And furthermore, if I revert to using plain xml2json (not your fork) and re-install modules, and run from the CLI (not the IDE), it runs fine. What is going on?

@p3x-robot
Copy link
Contributor Author

the throw shows the error message exactly:
image

@p3x-robot
Copy link
Contributor Author

you are mixing the nodejs versions. you have an older version of nodejs somehwhere as wll.
it shows the error with the NODE_MODULE_VERSION.

@drmrbrewer
Copy link

drmrbrewer commented Oct 30, 2019

~/workspace/metno# nvm ls
->     v12.13.0
		 system
default -> 12.13.0 (-> v12.13.0)
node -> stable (-> v12.13.0) (default)
stable -> 12.13 (-> v12.13.0) (default)
iojs -> N/A (default)
unstable -> N/A (default)
lts/* -> lts/erbium (-> v12.13.0)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.16.2 (-> N/A)
lts/dubnium -> v10.17.0 (-> N/A)
lts/erbium -> v12.13.0

~/workspace/metno# node -v
v12.13.0

@p3x-robot
Copy link
Contributor Author

p3x-robot commented Oct 30, 2019

you said: the error only happens when I run the node app.
so when you run the app and get the error, you are not using nodejs 12 but below... for sure.

@p3x-robot
Copy link
Contributor Author

try the app from the terminal:
node your-app-path/app.js

@p3x-robot
Copy link
Contributor Author

it is in the IDE

@drmrbrewer
Copy link

The IDE is using an older version of nodejs then? I'll see if I can find older version of node...

@p3x-robot
Copy link
Contributor Author

what Cloud IDE you are using is not using latest NodeJs 12.... that is the error.

@p3x-robot
Copy link
Contributor Author

either you can use xml2json (v10) with older version, or if you want LTS you can use p3x-xml2json (v12) that is all.

@drmrbrewer
Copy link

OK it's confusing... I had used nvm to install node 12, and node -v gives me 12. But C9 must be using node 10. If I install node 12 not with nvm:

$ curl -sL https://deb.nodesource.com/setup_12.x | bash -
$ apt-get update && apt-get install -y nodejs

then running the node app via Cloud9 "run" button works... even works with stock xml2json not p3x-xml2json??

@p3x-robot
Copy link
Contributor Author

you are running Cloud9 nodejs v10, xml2json works with v10, but not for the future and not for the lts nodejs v12... figure...

@p3x-robot
Copy link
Contributor Author

xml2json does not work with node v12, that is what this issue is about.

@p3x-robot
Copy link
Contributor Author

please create a new issue about cloud9, as the error is not about xml2json on nodejs v12

@drmrbrewer
Copy link

But look if I run this from the command line:

# node -v
v12.13.0

# node metno.js
... [no error... works fine]

must be using node v 12.13.0 when running the metno.js app, because that's what it says?

@drmrbrewer
Copy link

# node -v
v12.13.0

it's not an old version

@drmrbrewer
Copy link

now it works or not???

xml2json works with node 12, no need to use p3x-xml2json

@mokone91
Copy link

seems fix merged, but latest version not published. so lib still not working on 12

@c4milo
Copy link
Contributor

c4milo commented Dec 26, 2019

I just published version 0.12.0 from master.

@c4milo
Copy link
Contributor

c4milo commented Dec 26, 2019

Apologies for the delay, I had personal things that kept me away from OSS work.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants