I'm trying to install Plone 6 from packages on Windows and for reasons beyond my control I am unable to use WSL on my company provided PC (so no Make, so no cookiecutter). I've successfully got the backend running with pip (no zc.buildout), mxdev, and some Zope utilities, and I'll share my experience there in another post if people are interested. I'm not clear what cookiecutter is doing but the latest training bootstraps a project with
@plone/generator-volto. So I installed yaoman and yarn@3 and tried to run @plone/volto:
(venv) PS C:\Users\wohnlice\PycharmProjects\Plone6> npm install -g yo @plone/generator-volto
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@plone/generator-volto@6.3.0',
npm WARN EBADENGINE required: { node: '^12 || ^14 || ^16' },
npm WARN EBADENGINE current: { node: 'v18.15.0', npm: '9.5.0' }
npm WARN EBADENGINE }
Obviously this says it requires node 12, 14, or 16 and I'm on 18. So my question is, do I need to fallback to Node 16 or is there a replacement for @plone/generator-volto I should be using? Just in case this is only a warning, I did try to use it node 18 anyway:
(venv) PS C:\Users\wohnlice\PycharmProjects\Plone6> yo @plone/volto
Getting latest Volto version
Using latest released Volto version: 16.17.1
Retrieving Volto's yarn.lock
? Project name (e.g. my-volto-project) my-volto
? Would you like to add addons? false
node:events:491
throw er; // Unhandled 'error' event
^
Error: ENOENT: no such file or directory, scandir 'C:\Users\wohnlice\PycharmProjects\Plone6\my-volto\package.json.tpl'
at Object.readdirSync (node:fs:1452:3)
at exports.readdir (C:\Users\wohnlice\AppData\Roaming\npm\node_modules\@plone\generator-volto\node_modules\@mrmlnc\readdir-enhanced\lib\sync\fs.js:18:20)
at Object.safeCall [as safe] (C:\Users\wohnlice\AppData\Roaming\npm\node_modules\@plone\generator-volto\node_modules\@mrmlnc\readdir-enhanced\lib\call.js:24:8)
at DirectoryReader.readNextDirectory (C:\Users\wohnlice\AppData\Roaming\npm\node_modules\@plone\generator-volto\node_modules\@mrmlnc\readdir-enhanced\lib\directory-reader.js:78:10)
at DirectoryReader.stream._read (C:\Users\wohnlice\AppData\Roaming\npm\node_modules\@plone\generator-volto\node_modules\@mrmlnc\readdir-enhanced\lib\directory-reader.js:57:18)
at Readable.read (node:internal/streams/readable:496:12)
at readdirSync (C:\Users\wohnlice\AppData\Roaming\npm\node_modules\@plone\generator-volto\node_modules\@mrmlnc\readdir-enhanced\lib\sync\index.js:27:21)
at Function.readdirSyncStat (C:\Users\wohnlice\AppData\Roaming\npm\node_modules\@plone\generator-volto\node_modules\@mrmlnc\readdir-enhanced\lib\index.js:34:10)
at ReaderSync.dynamicApi (C:\Users\wohnlice\AppData\Roaming\npm\node_modules\@plone\generator-volto\node_modules\fast-glob\out\providers\reader-sync.js:64:24)
at ReaderSync.api (C:\Users\wohnlice\AppData\Roaming\npm\node_modules\@plone\generator-volto\node_modules\fast-glob\out\providers\reader-sync.js:56:25)
Emitted 'error' event on Readable instance at:
at emitErrorNT (node:internal/streams/destroy:151:8)
at emitErrorCloseNT (node:internal/streams/destroy:116:3)
at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
errno: -4058,
syscall: 'scandir',
code: 'ENOENT',
path: 'C:\\Users\\wohnlice\\PycharmProjects\\Plone6\\my-volto\\package.json.tpl'
}
Node.js v18.15.0
(venv) PS C:\Users\wohnlice\PycharmProjects\Plone6> yarn -v
3.4.1
I did also try in yarn classic 1.x in case @plone/generator-volto is older and that didn't make a difference.