Julia vscode with remote-ssh ENAMETOOLONG

Trying to use julia vscode extension with remote-ssh I get

ERROR: LoadError: IOError: connect: name too long (ENAMETOOLONG)
Stacktrace:
 [1] wait_connected(x::Base.PipeEndpoint)
   @ Sockets /usr/local/apps/julia/1.10.0/share/julia/stdlib/v1.10/Sockets/src/Sockets.jl:528
 [2] connect
   @ /usr/local/apps/julia/1.10.0/share/julia/stdlib/v1.10/Sockets/src/Sockets.jl:563 [inlined]
 [3] connect
   @ /usr/local/apps/julia/1.10.0/share/julia/stdlib/v1.10/Sockets/src/PipeServer.jl:103 [inlined]
 [4] serve(args::String; is_dev::Bool, crashreporting_pipename::String)
   @ VSCodeServer ~/.vscode-server/extensions/julialang.language-julia-1.79.2/scripts/packages/VSCodeServer/src/VSCodeServer.jl:113
 [5] top-level scope
   @ ~/.vscode-server/extensions/julialang.language-julia-1.79.2/scripts/terminalserver/terminalserver.jl:47
in expression starting at /home/fars/.vscode-server/extensions/julialang.language-julia-1.79.2/scripts/terminalserver/terminalserver.jl:20

ERROR: LoadError: IOError: connect: name too long (ENAMETOOLONG)

Adding a println.(args) on line 22 of terminalserver.jl gives

/etc/ecmwf/ssd/ssd1/tmpdirs/user.3371913.20240620_152946.442/vsc-jl-repl-a7fed03e-0383-4fb5-b056-9c5c339082d7
/etc/ecmwf/ssd/ssd1/tmpdirs/user.3371913.20240620_152946.442/vsc-jl-cr-5424b91d-00cd-4175-937b-87c0ac093867
USE_REVISE=true
USE_PLOTPANE=true
USE_PROGRESS=true
ENABLE_SHELL_INTEGRATION=true
DEBUG_MODE=false

The first one is used as the socket and is 110 characters which is indeed too long (e.g. remark in PipeServer.jl)

Is there any workaround or way to control the name that the vscode extensions uses for these socket?

There is not. I don’t think there’s any real making the name user-controllable – there are only two constraints for it after all: being valid (i.e. short enough) and being unique.

Thanks for creating the issue!
If others run into this. If the path is just a few characters to long you can

cd ~/.vscode-server/extensions/julialang.language-julia-1.79.2/dist
sed -i 's/vsc-jl-repl/v/g' extension.js
sed -i 's/vsc-jl-repl/v/g' extension.js.map