Skip to content

bug: 'npm run buildWindows' fails in nwjs:src with cryptic error #895

@rjstone

Description

@rjstone

Steps To Reproduce

I followed the instructions here: https://github.com/FPGAwars/icestudio/wiki/Icestudio-development-version

  1. Cloned the repo dev branch
  2. Installed node 19.3.0 with nvm
  3. Changed postInstall in package.json to remove the shell script (sh doesn't exist in windows) (`"postinstall": "grunt getcollection && npmpd && cd app && npm install")
  4. Manually commented out line 9 in node_modules/grunt-nw-builder/tasks/nw.js (manually performing the job of the shell script)
  5. npm install --legacy-peer-deps (success)
  6. npm start (this works)
  7. Exit Icestudio and kill the nwjs processes
  8. npm run buildWindows (fails in nwjs:src as shown below)

Later I noticed that the build.info file says that nodejs was upgraded to 23.3.0, so I use nvm to switch to that one and try all of this again, but the same thing happens.

Expected behavior

Build works

Actual behavior

R:\gitrepos\icestudio > npm run buildWindows
npm info using [email protected]
npm info using [email protected]

> [email protected] buildWindows
> grunt dist --platform=win64

Executing Gruntfile.js...
Running "jshint:all" (jshint) task
>> 39 files lint free.

Running "clean:dist" (clean) task
>> 1 path cleaned.

Running "nggettext_compile:all" (nggettext_compile) task

Running "copy:dist" (copy) task
Created 836 directories, copied 11330 files

Running "json-minify:json" (json-minify) task

Total compressed: 247 files
>> 725.318 KiB - 14.6% = 619.644 KiB

Running "json-minify:ice" (json-minify) task

Total compressed: 54 files
>> 6842.296 KiB - 47.1% = 3622.279 KiB

Running "nwjs:src" (nwjs) task
Error: Either the specific version info does not exist or the version manifest itself does not exist. In case of the latter, please check your internet connection and try again later.
    at Object.validate (file:///R:/gitrepos/icestudio/node_modules/nw-builder/src/util.js:345:11)
    at nwbuild (file:///R:/gitrepos/icestudio/node_modules/nw-builder/src/index.js:79:16)
    at async Object.<anonymous> (R:\gitrepos\icestudio\node_modules\grunt-nw-builder\tasks\nw.js:20:7)
Fatal error: Either the specific version info does not exist or the version manifest itself does not exist. In case of the latter, please check your internet connection and try again later.

Screenshots or video

No response

Desktop (please complete the following information)

OS Name: Microsoft Windows 11 Pro
OS Version: 10.0.26100 N/A Build 26100
OS Manufacturer: Microsoft Corporation
OS Configuration: Standalone Workstation
OS Build Type: Multiprocessor Free

Web console trace

Additional context

I don't understand grunt well enough to debug what's wrong, but I tried this:

R:\gitrepos\icestudio > node .\node_modules\grunt\bin\grunt -d -v --stack --platform=win64 dist

Which provided a different error message:

Running "nwjs" task
[D] Task source: R:\gitrepos\icestudio\node_modules\grunt-nw-builder\tasks\nw.js

Running "nwjs:src" (nwjs) task
[D] Task source: R:\gitrepos\icestudio\node_modules\grunt-nw-builder\tasks\nw.js
Verifying property nwjs.src exists in config...OK
Warning: must provide pattern Use --force to continue.
Error: must provide pattern
    at new GlobSync (R:\gitrepos\icestudio\node_modules\glob\sync.js:31:11)
    at Function.globSync [as sync] (R:\gitrepos\icestudio\node_modules\glob\sync.js:26:10)
    at R:\gitrepos\icestudio\node_modules\grunt\lib\grunt\file.js:102:22
    at R:\gitrepos\icestudio\node_modules\grunt\lib\grunt\file.js:49:19
    at Array.forEach (<anonymous>)
    at processPatterns (R:\gitrepos\icestudio\node_modules\grunt\lib\grunt\file.js:43:38)
    at file.expand (R:\gitrepos\icestudio\node_modules\grunt\lib\grunt\file.js:100:17)
    at Object.fn [as src] (R:\gitrepos\icestudio\node_modules\grunt\lib\grunt\task.js:168:36)
    at R:\gitrepos\icestudio\node_modules\grunt\lib\grunt\task.js:187:25
    at Array.forEach (<anonymous>)

Aborted due to warnings.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions