npm install fails on Windows in postinstall with "mklink: command not
found". mklink is a cmd.exe builtin rather than an executable, so the sh
running this script cannot exec it, and every symlink the install needs is
made this way.
The doubled slashes are the usual MSYS escaping, and are safe here because
this branch only runs when the OS was detected as cygwin or mingw.
Installing on the wrong node version dies with "FORCE_NODE_VERSION: unbound
variable" instead of explaining itself. The script runs under set -u and
this is the one place the variable is read bare; the three other reads all
default it.
npm 12 rejects unknown CLI flags, so the npm install path crashes
with EUNKNOWNCONFIG before installing. The flag has been a no-op
since npm 7; remove it from install.sh and the postinstall guard.
This can happen if you run the update multiple times and it was already
deleted from another run but not regenerated yet due to an early
failure like from a conflict.
The problem was that whenever the hashe needed an update, the current
patch would create a conflict which cannot be easily auto-resolved.
Instead, put the hashes in a separate patch that is deleted and
regenerated each time, avoiding the conflicts.
Also the web worker iframe hash was not being updated.
It needs to parse the version *after* the VS Code update, otherwise it
is just pulling whatever the previous version was.
That means we cannot use it in the step title without some refactoring;
opted to just omit it for now.
The VS Code build process sets the bundled lib/vscode/package.json name to "code-server" (from product.json nameShort), causing vulnerability scanners to misidentify it and flag non-applicable CVEs. Override the name to "code-oss-dev" in build-release.sh after merging package.json.
Fixes#7071
Signed-off-by: ka-ishimoto <ka-ishimoto@kddi.com>
* Update Code to 1.116.0
* Add copilot extension build
Seems the vscode build requires this separately now.
* Disable welcome popup
A giant modal window asking you to sign in for AI features is blocking
the tests. Rather than have to click through it, disable it. It looks like
this has to be a user setting, so switch to that instead of machine (we
used machine because user settings were in the browser, but they have
been since moved back to disk).
---------
Co-authored-by: Asher <ash@coder.com>