Upgrade nanoid and openid-client
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 35/100
- Tipo di issue
- Refactoring
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- javascript, node.js
- Ambito
- backend
Direzione di ricerca
Inizia da app/lib/authn-oidc.js e verifica come viene caricato openid-client, quindi esamina le versioni delle dipendenze usando npm list. Determina se entrambe le dipendenze possono essere aggiornate mantenendo il servizio in CommonJS, oppure se sono necessarie alternative adeguate. Il lavoro è completato quando le versioni selezionate funzionano senza ERR_REQUIRE_ESM e preservano il comportamento di autenticazione esistente.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
The latest releases of these two dependencies default to ECMAScript syntax rather than CommonJS. We're not using a transpiler like Babel to handle converting between different JS flavors, and ideally we shouldn't have to until we're ready for a TS migration.
Figure out a way to upgrade these dependencies while still using CommonJS, or find suitable alternatives. nanoid specifies a solution for CommonJS (link below). I'm not sure about openid-client.
NanoID
After version 3, CommonJS support is mostly dropped in favor of ESM:
https://github.com/ai/nanoid?tab=readme-ov-file#commonjs
Error [ERR_REQUIRE_ESM]: require() of ES Module /Users/ssica/Development/attack/workbench/attack-workbench-rest-api/node_modules/openid-client/build/index.js from /Users/ssica/Development/attack/workbench/attack-workbench-rest-api/app/lib/authn-oidc.js not supported.
Instead change the require of index.js in /Users/ssica/Development/attack/workbench/attack-workbench-rest-api/app/lib/authn-oidc.js to a dynamic import() which is available in all CommonJS modules.
For now, downgraded back to 3x:
❯ npm list | grep nanoid
├── [email protected]
❯ npm install nanoid@3
changed 1 package, and audited 654 packages in 667ms
89 packages are looking for funding
run `npm fund` for details
3 vulnerabilities (2 low, 1 high)
To address all issues, run:
npm audit fix
Run `npm audit` for details.
❯ npm list | grep nanoid
├── [email protected]
OpenID-Client
Same thing with openid-client -- v6 moves to ESM:
Downgraded:
❯ npm list | grep openid
├── [email protected]
❯ npm install openid-client@5
added 2 packages, removed 2 packages, changed 1 package, and audited 654 packages in 968ms
87 packages are looking for funding
run `npm fund` for details
3 vulnerabilities (2 low, 1 high)
To address all issues, run:
npm audit fix
Run `npm audit` for details.
❯ npm list | grep openid
├── [email protected]
- Lingua principale
- JavaScript
- Stelle
- 56
- Fork
- 18
- Merge medio
- 21h 30m
- PR unite (30g)
- 8
Preparare l'ambiente
- Include un Dockerfile o un 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 mitre-attack/attack-workbench-rest-api
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
-
Add ADM validation bypass for server-controlled fields on non-compliant objectsForse già presa @seansica l’ha presa 6 giorni fa. Aperta
mitre-attack/attack-workbench-rest-api#517 · 1 assegnatario ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 74/100
mitre-attack/attack-workbench-rest-api#512 · 1 commento ·
Tutte le issue di mitre-attack/attack-workbench-rest-api
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 79/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
highcharts/highcharts-react#594 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
I maintainer di solito rispondono entro 1 giorno