Upgrade nanoid and openid-client
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Refactorización
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- javascript, node.js
- Área
- backend
Línea de trabajo
Comienza con app/lib/authn-oidc.js e inspecciona cómo se carga openid-client; después, revisa las versiones de las dependencias mediante npm list. Determina si ambas dependencias pueden actualizarse mientras el servicio siga siendo CommonJS, o si se necesitan alternativas adecuadas. Se considerará completado cuando las versiones seleccionadas funcionen sin ERR_REQUIRE_ESM y conserven el comportamiento de autenticación existente.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
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]
- Lenguaje dominante
- JavaScript
- Estrellas
- 56
- Forks
- 18
- Merge medio
- 21 h 30 min
- PR fusionados (30 d)
- 8
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de mitre-attack/attack-workbench-rest-api
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
-
Add ADM validation bypass for server-controlled fields on non-compliant objectsPosiblemente ocupada @seansica la tomó hace 6 días. Abierto
mitre-attack/attack-workbench-rest-api#517 · 1 asignado ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 74/100
mitre-attack/attack-workbench-rest-api#512 · 1 comentario ·
Todos los issues de mitre-attack/attack-workbench-rest-api
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 2 días
-
area-clientside-dartpad
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
Los mantenedores suelen responder en 2 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
alphagov/public-asset-checker#378 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
S: triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 2 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
apache/rocketmq-dashboard#7242 ·
Los mantenedores suelen responder en 3 días