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

Non-exportable objects: Add support for future.globals.onReference=function(...) { }

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

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
35/100
Tipo de issue
Nueva funcionalidad
Claridad
Necesita aclaración
Estado de actividad
Estancado
Stack tecnológico
r

Línea de trabajo

Comienza con el manejo existente de future.globals.onReference y future:::reference_filters(), incluido el filtro ignore_envirs mostrado en el issue. Define el contrato de retorno del callback y cómo interactúa con los tipos de referencia aceptados; el trabajo estará terminado cuando el comportamiento esté especificado y se admita de forma coherente.

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

Descripción

enhancement

Currently, R option future.globals.onReference can take values:

  • "ignore" - don't check for non-exportable objects among globals (fastest)
  • "message" - produce a message when a non-exportable objects is detected
  • "warning" - produce a warning when a non-exportable objects is detected
  • "error" - produce an error when a non-exportable objects is detected

I think it could be useful to provide some further control to savvy users/developers out there. More precisely, support for something like:

options(future.globals.onReference = function(ref) {
   # accept / reject 'ref' based on inspect
   # Q: What should be returned?  Above `"ignore"`, ..., `"error"`, or TRUE/FALSE?
})

Having this in place would simplify enabling future.globals.onReference = "error" by default. For instance, if it turns out there are references that can indeed be exported (yet to be heard of), then we can fall back to above filter.

OTH, there's alteady an internal future:::reference_filters() function that allows us to set, add, drop, reset the list of accepted reference types, e.g. (the following is already set)

future:::reference_filters("append", ignore_envirs = function(ref, typeof, class, ...) {
  typeof != "environment"
})

Maybe this is enough for now?

Lenguaje dominante
R
Estrellas
1k
Forks
93
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 futureverse/future

Todos los issues de futureverse/future

Issues similares

Más issues de R

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.