GetmeUK / ContentTools

A JS library for building WYSIWYG editors for HTML content.
http://getcontenttools.com
MIT License
3.94k stars 393 forks source link

npm install failed #577

Open fpolli opened 1 year ago

fpolli commented 1 year ago

Hi, I was installing the library into a Docker container and after a bunch of deprecated notices, npm install threw an error. I ran git clone per the readme, cd ContentTools and then npm install:

npm ERR! code 1 npm ERR! path /var/www/html/resources/js/ContentTools/node_modules/phantomjs npm ERR! command failed npm ERR! command sh -c /tmp/install65745564693.sh npm ERR! PhantomJS not found on PATH npm ERR! Phantom installation failed TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received undefined npm ERR! at new NodeError (node:internal/errors:371:5) npm ERR! at validateString (node:internal/validators:120:11) npm ERR! at Object.join (node:path:1172:7) npm ERR! at findSuitableTempDirectory (/var/www/html/resources/js/ContentTools/node_modules/phantomjs/install.js:127:30) npm ERR! at /var/www/html/resources/js/ContentTools/node_modules/phantomjs/install.js:476:19 npm ERR! at nextTickCallback (/var/www/html/resources/js/ContentTools/node_modules/kew/kew.js:47:28) npm ERR! at processTicksAndRejections (node:internal/process/task_queues:78:11) { npm ERR! code: 'ERR_INVALID_ARG_TYPE' npm ERR! } TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received undefined npm ERR! at new NodeError (node:internal/errors:371:5) npm ERR! at validateString (node:internal/validators:120:11) npm ERR! at Object.join (node:path:1172:7) npm ERR! at findSuitableTempDirectory (/var/www/html/resources/js/ContentTools/node_modules/phantomjs/install.js:127:30) npm ERR! at /var/www/html/resources/js/ContentTools/node_modules/phantomjs/install.js:476:19 npm ERR! at nextTickCallback (/var/www/html/resources/js/ContentTools/node_modules/kew/kew.js:47:28) npm ERR! at processTicksAndRejections (node:internal/process/task_queues:78:11)

anthonyjb commented 1 year ago

Hi @fpolli,

So I'm not sure this is directly related to ContentTools as this seems to be a failure to install PhantomJS, a quick Google shows a number of results for the phrase "PhantomJS not found on PATH". I don't use docker at all I'm afraid so I can't advise on if this might be something specific to docker.

PhantomJS is used for running tests in ContentTools so if you are just trying to include CT in your project you don't need PhantomJS (I don't believe). You should be able to add "ContentTools": "1.6.11" to your package.json dependencies and install it with npm install.

EDIT: 1.6.16 is the latest version sorry.

fpolli commented 1 year ago

Thanks! I was hoping so. I am working on it now.