loopbackio / loopbackio/loopback-next

Detection of yarn does not work (anymore?)

Aperta
#9,520 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

bug
Lingua principale
TypeScript
Stelle
5.1k
Fork
1.1k
Merge medio
2g 21h
PR unite (30g)
27

Descrizione

### Describe the bug

While loopback-cli tries to detect yarn a file `yarn-error.log` is generated. It seems that yarn cannot write to it's stdout when it is spawned as a child process by `lb4`.

### Logs

```shell
yarn-error.log:

Arguments:
/snap/node/7382/bin/node /snap/node/7382/bin/yarn.js help

PATH:
/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

Yarn version:
1.22.19

Node version:
19.9.0

Platform:
linux x64

Trace:
Error: EACCES: permission denied, write
at writeSync (node:fs:938:3)
at SyncWriteStream._write (node:internal/fs/sync_write_stream:26:3)
at writeOrBuffer (node:internal/streams/writable:392:12)
at _write (node:internal/streams/writable:333:10)
at Writable.write (node:internal/streams/writable:337:10)
at module.exports.Command.outputHelp (/snap/node/7382/lib/cli.js:58339:18)
at module.exports.Command.help (/snap/node/7382/lib/cli.js:58350:8)
at Object.run (/snap/node/7382/lib/cli.js:83978:13)
at run (/snap/node/7382/lib/cli.js:88392:22)
at /snap/node/7382/lib/cli.js:88722:16

npm manifest:
No manifest

yarn manifest:
No manifest

Lockfile:
No lockfile
```

### Additional information

This issue can be fixed by using `stdio: 'ignore'` instead of `stdio: false` here: https://github.com/loopbackio/loopback-next/blob/9d99c620e7dedad9099e1c83a068216c198749e0/packages/cli/lib/utils.js#L768

### Reproduction

none

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia da packages/cli/lib/utils.js, intorno alla riga 768, dove yarn viene avviato durante il rilevamento, e confronta l'impostazione stdio attuale con la modifica suggerita nell'issue. Verifica che il rilevamento di yarn non produca più yarn-error.log né un errore EACCES di stdout quando viene eseguito come processo figlio di lb4; non vengono forniti né una riproduzione né un file di test.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
nodejs, typescript
Ambito
cli
Tipo di issue
Bug
Difficoltà
2/5
Tempo stimato
1-3 ore
Stato di attività
Ferma
Chiarezza
Specificata chiaramente
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.