Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Pending breaking changes

Abierto
#347 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 8 días

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
25/100
Tipo de issue
Nueva funcionalidad
Claridad
Necesita aclaración
Estado de actividad
Activo
Stack tecnológico
firebase, node.js, typescript
Área
backend, release

Línea de trabajo

Start by reviewing the linked issues and pull requests (#326, #336, #337, #334, #328, #316, #40, and #281) and the package’s release and public type definitions. Decide which breaking changes belong in 4.0 and resolve the open proposals; done when the release scope and outstanding type and API decisions are agreed.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

main has breaking changes since 3.5.0, so the next release needs to be 4.0.0. This issue lists what is already merged and what still needs a decision.

Merged, not yet released:

  • The minimum Node version is now 22 (#326). The CHANGELOG entry says Node 20 and lists it as a chore. It should say 22 and be marked as breaking.
  • firebase-admin ^8 and ^9 are removed from the peer range and ^14 is added (#336). Until this is released, installing with firebase-admin 14 fails with ERESOLVE.
  • makeDocumentSnapshot now returns QueryDocumentSnapshot or DocumentSnapshot instead of any (#337).

Open PRs to decide on for 4.0:

  • #334: mockConfig() throws on firebase-functions v7, which removed functions.config(). Today mockConfig() appears to work and the error only shows up later.
  • #328: v2 callable typing (#257).
  • #316 (draft): v2 event typing (#205). Code that passes raw data would need wrapped({ data: change }).

Requests with no PR yet:

  • #40: replace export = with standard module exports.
  • #281: ship ESM alongside CommonJS. An exports map would also block deep imports such as firebase-functions-test/lib/....
  • Remove mockConfig entirely, now that firebase-functions v7 has no functions.config().

Public types that only a major can tighten:

  • WrappedFunction, WrappedScheduledFunction and WrappedV2Function return any | Promise<any>. The CloudFunction generics could give a real return type.
  • EventContextOptions.auth and params, and CallableContextOptions.auth and app, are any. Typing them as AuthData / AppCheckData would break tests that pass { uid } without token.
  • wrapV2 calls run(req) with no second argument, so onCall((req, response) => ...) gets response === undefined. Adding a CallableResponse mock is additive, but if #328 changes the wrapped callable signature it should leave room for that second argument now rather than in another major.
Lenguaje dominante
TypeScript
Estrellas
249
Forks
63
Merge medio
7 d 19 h
PR fusionados (30 d)
2

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de firebase/firebase-functions-test

Todos los issues de firebase/firebase-functions-test

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.