The --socket-fd flag never worked. The wrapper forks the process that
listens, but only the IPC channel was inherited as fd 3, so the socket
passed by the caller was not available to the child. Node then tried to
listen on the IPC pipe and failed with "listen EEXIST".
Pass the socket to the child as stdio entry 4 and tell the child to use
that fd in the handshake.
Node also reports no address for a Unix socket adopted by fd, which made
startup fail with "Server has no address". Log the listener as fd:<n>
in that case.
Add an integration test that starts the code-server binary with a Unix
or TCP socket as fd 3 and checks that /healthz answers over it.
* Update Code to 1.139.1
* Bump proxy-addr to 2.0.8
* Add preinstall setup to build
Already had this in the release build step, not sure why it is not in
the main build step. But we started getting errors building native
modules in ci, and this seems to be why.
* Fix quick input
It types too quickly, before the input is visible.
The lower bound check ran before the parser had resolved the value, so it
only saw a value with the --idle-timeout-seconds=<value> form. With the
space-separated form the value was still undefined at that point,
Number(undefined) is NaN, and NaN <= 60 is false, so anything got through.
Move the check below the block that pulls the value from the next
argument so both forms are validated the same way.
* Update Code to 1.136.1
* Do not click on tab during test file opens
It will already be the selected tab, and if any other tab is already
open (like the welcome tab), it will click that instead.
We disable the welcome page so this is not supposed to actually matter,
but that Setting appears not to be working.
Also add the quick input widget selector in the disabled downloads test,
since if the widget never shows up it would mistakenly pass.
We use the cookie parser to remove the code-server token but by default
it encodes using encodeURIComponent, which encodes more than is strictly
necessary and can break proxied applications.
Now we pass the cookies through unchanged (other than removing the
code-server token).
Fixes#7927.