Search code examples
node.jsnpmuncss

UnCSS for Node.js 10 - dependency missing for Canvas


I get the following error. I've tried to force the installing of the canvas package but with no luck. Does the following error mean that I have to find a way to install the dependency of uncss?

uncss http://www.ilcomuneinforma.it/viaggi/ > stylesheet.css


Error: Not implemented: HTMLCanvasElement.prototype.getContext (without installing the canvas npm package)
    at module.exports (C:\Users\Utente\AppData\Roaming\npm\node_modules\uncss\node_modules\jsdom\lib\jsdom\browser\not-implemented.js:9:17)
    at HTMLCanvasElementImpl.getContext (C:\Users\Utente\AppData\Roaming\npm\node_modules\uncss\node_modules\jsdom\lib\jsdom\living\nodes\HTMLCanvasElement-impl.js:42:5)
    at HTMLCanvasElement.getContext (C:\Users\Utente\AppData\Roaming\npm\node_modules\uncss\node_modules\jsdom\lib\jsdom\living\generated\HTMLCanvasElement.js:50:45)
    at http://www.ilcomuneinforma.it/viaggi/:40:931
    at http://www.ilcomuneinforma.it/viaggi/:40:1741
    at Script.runInContext (vm.js:107:20)
    at Object.runInContext (vm.js:285:6)
    at processJavaScript (C:\Users\Utente\AppData\Roaming\npm\node_modules\uncss\node_modules\jsdom\lib\jsdom\living\nodes\HTMLScriptElement-impl.js:190:10)
    at HTMLScriptElementImpl._innerEval (C:\Users\Utente\AppData\Roaming\npm\node_modules\uncss\node_modules\jsdom\lib\jsdom\living\nodes\HTMLScriptElement-impl.js:122:5)
    at C:\Users\Utente\AppData\Roaming\npm\node_modules\uncss\node_modules\jsdom\lib\jsdom\browser\resource-loader.js:31:22 undefined

Solution

  • This is an open issue still for uncss (Issue) , but for other packages that use canvas it seems this could be sorted out by using

    npm install --save-dev canvas 
    

    or

    npm i canvas-prebuilt
    

    I wish you luck trying to sort this out. uncss hasn't been updated in over an year.