Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Suggestion: include a function decorator that works with progressr

Aperta
#122 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
30/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
r
Ambito
api

Direzione di ricerca

Non sono indicati file o test. Inizia esaminando gli entry point esistenti progressor() e with_progress(), quindi confronta il decorator proposto progressively() con il pattern quietly/safely di purrr. Il lavoro è completato quando viene definita un’API per il decorator supportata, che gestisca l’utilizzo mostrato e disponga della relativa copertura dei test.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

I was wondering if it would make sense to have a function decorator explicitly for (simple) progress updates, so that I can extend the behaviour of pre-existing functions - something like:

progressively <- function(f, p = NULL){
  if(is.null(p)) p <- function(...) NULL
  force(f)

  function(...){
    on.exit(p("loading..."))
    f(...)
  }

}

which then could be called like:

read_rosters <- function(){
  urls <- c("https://github.com/nflverse/nflfastR-roster/raw/master/data/seasons/roster_2020.csv", "https://github.com/nflverse/nflfastR-roster/raw/master/data/seasons/roster_2021.csv")
  p <- progressor(along = urls)
  purrr::map_dfr(urls, progressively(read.csv, p))
}

x <- with_progress(read_rosters())

This is inspired by Hadley's notes on function operators in Advanced R, and purrr's quietly/safely set of decorators

Lingua principale
R
Stelle
299
Fork
11
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di futureverse/progressr

Tutte le issue di futureverse/progressr

Issue simili

Altre issue su R

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.