[REQUEST] support vercel edge functions by default

Abierto
#341 4 comentarios 0 reacciones 0 asignados Ver en GitHub

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
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
javascript
Área
backend

Línea de trabajo

Empieza leyendo la implementación predeterminada de planificación de batches de DataLoader y la discusión enlazada de Next.js sobre el edge-runtime acerca de process.nextTick. Determina cómo puede funcionar el comportamiento predeterminado sin una batchScheduleFn personalizada, preservando al mismo tiempo la semántica de batching. La tarea estará terminada cuando DataLoader funcione en Vercel Edge Functions sin la solución alternativa de setTimeout.

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

Descripción

enhancement

What problem are you trying to solve?

support the vercel edge runtime for dataloaders without workaround. see discussion here https://github.com/vercel/next.js/issues/44711 (edge does not support process.nextTick, which is being checked in the Dataloader package)

right now, you have to pass in the batchScheduleFn with a setTimeout to the DataLoader to make the package work on the edge runtime like so

 batchScheduleFn: (cb) => setTimeout(cb, 0),

but this might not be ideal? not totally sure what happens in this case, I would just worry about adding latency or breaking the batching with the setTimeout instead of relying on the default behavior (batching per execution context)

Describe the solution you'd like

Dataloader should work in the edge runtime without having to pass in a setTimeout

Describe alternatives you've considered

using the setTimeout workaround

Additional context

nice to support edge functions so that you can have zero cold start graphql functions in a serverless environment

Lenguaje dominante
JavaScript
Estrellas
13.4k
Forks
522
Métricas de merge de PR
Sin PR fusionados en 30 d

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 graphql/dataloader

Todos los issues de graphql/dataloader

Issues similares

Más issues de JavaScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.