v1.17.0 breaks Positron connections: single-quoted `--url` in ProxyCommand reaches the CLI literally ("Premature close")
I maintainer di solito rispondono entro 2 giorni
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 70/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- shell, typescript, vscode
- Ambito
- devtools
Direzione di ricerca
Il bug è nel modo in cui l'estensione scrive la riga ProxyCommand nella configurazione SSH generata. Trova il punto in cui l'URL di deployment viene racchiusa tra apici singoli per la shell e confrontalo con la quotatura dei percorsi esistente, che secondo la issue funziona già. Verifica se un test unitario copre la stringa ProxyCommand generata e amplialo per un URL. È completato quando l'URL viene emesso senza virgolette o tra virgolette doppie, la quotatura dei percorsi esistente resta invariata e il test passa.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Regression in v1.17.0; v1.16.4 works. Positron 1.134.0, macOS arm64, Coder v2.34.1.
Every Positron connection fails within ~100 ms:
[Trace] Spawning ProxyCommand: …/coder-darwin-arm64 --token= --url 'https://coder.example.com' --use-keyring=true ssh --disable-autostart --stdio …
[Error] Error resolving authority
Error [ERR_STREAM_PREMATURE_CLOSE]: Premature close
VS Code (Microsoft Remote-SSH) and plain ssh from a terminal work with the same generated config.
Cause
v1.17.0 POSIX-shell-quotes the URL in the ProxyCommand (--url 'https://…'); v1.16.4 wrote it bare. Positron's built-in open-remote-ssh doesn't run ProxyCommand through a shell: it tokenizes the ssh_config value (honoring double quotes only) and calls child_process.spawn(cmd, args). The CLI therefore gets the quotes literally and exits at flag parsing:
invalid argument "'https://coder.example.com'" for "--url" flag: parse "'https://coder.example.com'": first path segment in URL cannot contain colon
open-remote-ssh discards the child's stderr, so the user sees only "Premature close". Other editors built on open-remote-ssh are presumably affected the same way.
Workaround
Install v1.16.4 and turn off auto-update for the extension. There's no settings-level workaround: coder.sshConfig can't override ProxyCommand, and the conf file is rewritten on every connect.
Suggested fix
Quote the URL the way the paths already are (bare when it matches the safe character set, double quotes otherwise). Since 1.17.0 already rejects deployment URLs containing shell metacharacters, the single quotes don't add safety, and double quotes parse correctly in both OpenSSH and open-remote-ssh.
- Lingua principale
- TypeScript
- Stelle
- 132
- Fork
- 48
- Merge medio
- 1g 18h
- PR unite (30g)
- 29
Preparare l'ambiente
Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di coder/vscode-coder
-
ReconnectingWebSocket drops messages the server sends right after the handshakeForse già presa @EhabY l’ha presa 3 giorni fa. Apertabug vs-code
Difficoltà 3/5 1-2 giorni Idoneità per principianti 72/100
coder/vscode-coder#1141 · 1 commento · 1 assegnatario ·
I maintainer di solito rispondono entro 2 giorni
-
Split commands.ts by topicForse già presa @EhabY l’ha presa 3 giorni fa. ApertaImprovement tech-debt vs-code
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
coder/vscode-coder#1135 · 1 commento · 1 assegnatario ·
I maintainer di solito rispondono entro 2 giorni
-
Design the VS Code Workspaces panelForse di nuovo libera @chrifro l’ha presa 30 giorni fa e non c’è nessuna pull request aperta. Aperta
coder/vscode-coder#1113 · 3 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 2 giorni
-
bug upstream
Difficoltà 4/5 3-5 giorni Idoneità per principianti 42/100
coder/vscode-coder#1087 · 1 commento ·
I maintainer di solito rispondono entro 2 giorni
-
Improvement tech-debt vs-code
Difficoltà 3/5 1-2 giorni Idoneità per principianti 55/100
coder/vscode-coder#1066 · 2 commenti ·
I maintainer di solito rispondono entro 2 giorni
Tutte le issue di coder/vscode-coder
Issue simili
-
documentation good first issue
Difficoltà 2/5 Mezza giornata Idoneità per principianti 72/100
sujithputta02/Esapay#13 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
ehmpathy/rhachet-roles-bhuild#468 ·
I maintainer di solito rispondono entro 1 giorno
-
Share dialog: the address book's contact count reads "1 contacts" (no singular form in any language)Forse già presa @chibenwa l’ha presa oggi. Apertaai-driven-qa bug claude Cosmetic
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
linagora/twake-contacts-frontend#271 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
factory-active task-identify-harness-labels-done task-identify-issue-type-done
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 70/100
vercel/ai#23435 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
Koenkk/zigbee2mqtt#33402 ·
I maintainer di solito rispondono entro 1 giorno