Package: promises 1.5.0.9000

Barret Schloerke

promises: Abstractions for Promise-Based Asynchronous Programming

Provides fundamental abstractions for doing asynchronous programming in R using promises. Asynchronous programming is useful for allowing a single R process to orchestrate multiple tasks in the background while also attending to something else. Semantics are similar to 'JavaScript' promises, but with a syntax that is idiomatic R.

Authors:Joe Cheng [aut], Barret Schloerke [aut, cre], Winston Chang [aut], Charlie Gao [aut], Posit Software, PBC [cph, fnd]

promises_1.5.0.9000.tar.gz
promises_1.5.0.9000.zip(r-4.6)promises_1.5.0.9000.zip(r-4.5)promises_1.5.0.9000.zip(r-4.4)
promises_1.5.0.9000.tgz(r-4.6-any)promises_1.5.0.9000.tgz(r-4.5-any)
promises_1.5.0.9000.tar.gz(r-4.6-any)promises_1.5.0.9000.tar.gz(r-4.5-any)
promises_1.5.0.9000.tgz(r-4.5-emscripten)
promises.pdf |promises.html
promises/json (API)
NEWS

# Install 'promises' in R:
install.packages('promises', repos = c('https://rstudio.r-universe.dev', 'https://cloud.r-project.org'))

Bug tracker:https://github.com/rstudio/promises/issues

Pkgdown/docs site:https://rstudio.github.io

On CRAN:

Conda:

promises

18.11 score 210 stars 2.8k packages 956 scripts 695k downloads 30 exports 9 dependencies

Last updated from:2f70615f8c. Checks:9 OK. Indexed: yes.

TargetResultTimeFilesSyslog
linux-devel-x86_64OK118
source / vignettesOK167
linux-release-x86_64OK109
macos-devel-arm64OK114
macos-release-arm64OK95
windows-develOK95
windows-releaseOK88
windows-oldrelOK88
wasm-releaseOK101

Exports:%...!%%...>%%...T!%%...T>%%>%%T>%as.promisecatchfinallyfuture_promisefuture_promise_queuehybrid_thenis.promiseis.promisinglocal_ospan_promise_domainlocal_otel_promise_domainnew_promise_domainpromisepromise_allpromise_mappromise_racepromise_reducepromise_rejectpromise_resolvethenwith_ospan_asyncwith_ospan_promise_domainwith_otel_promise_domainwith_otel_spanwith_promise_domain

Dependencies:clifastmaplaterlifecyclemagrittrotelR6Rcpprlang

Advanced future and promises usage

Rendered frompromises_05b_future_promise.Rmdusingknitr::rmarkdownon Feb 17 2026.

Last update: 2025-07-31
Started: 2025-06-26

An informal introduction to async programming

Rendered frompromises_02_intro.Rmdusingknitr::rmarkdownon Feb 17 2026.

Last update: 2025-07-31
Started: 2023-08-07

Case study: converting a Shiny app to async

Rendered frompromises_08_casestudy.Rmdusingknitr::rmarkdownon Feb 17 2026.

Last update: 2025-07-31
Started: 2023-08-07

Combining promises

Rendered frompromises_07_combining.Rmdusingknitr::rmarkdownon Feb 17 2026.

Last update: 2025-07-31
Started: 2023-08-07

Launching tasks with future

Rendered frompromises_05a_futures.Rmdusingknitr::rmarkdownon Feb 17 2026.

Last update: 2025-07-01
Started: 2025-06-26

Launching tasks with mirai

Rendered frompromises_04_mirai.Rmdusingknitr::rmarkdownon Feb 17 2026.

Last update: 2025-07-31
Started: 2025-06-26

Using promises with Shiny

Rendered frompromises_06_shiny.Rmdusingknitr::rmarkdownon Feb 17 2026.

Last update: 2025-07-31
Started: 2023-08-07

Why use promises?

Rendered frompromises_01_motivation.Rmdusingknitr::rmarkdownon Feb 17 2026.

Last update: 2023-08-10
Started: 2023-08-07

Working with promises in R

Rendered frompromises_03_overview.Rmdusingknitr::rmarkdownon Feb 17 2026.

Last update: 2025-07-31
Started: 2023-08-07

Readme and manuals

Help Manual

Help pageTopics
'future' promisefuture_promise future_promise_queue
Asynchronous or synchronous 'then()'hybrid_then
Coerce to a promiseas.promise is.promise is.promising
Promise pipe operators%...!% %...>% %...T!% %...T>% pipes
Create a new promise objectpromise
Combine multiple promise objectspromise_all promise_race
Promise-aware lapply/mappromise_map
Promise-aware version of Reducepromise_reduce
Create a resolved or rejected promisepromise_reject promise_resolve
Access the results of a promisecatch finally then
OpenTelemetry integrationlocal_otel_promise_domain with_otel_promise_domain with_otel_span
Promise domainsnew_promise_domain with_promise_domain