Skip to content

Commit ed9c86b

Browse files
Merge branch 'release/0.6.0'
2 parents 0157345 + e3c62bc commit ed9c86b

35 files changed

+1268
-249
lines changed

.Rbuildignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,3 +61,4 @@ Rplots.pdf$
6161
^last.dump*
6262
^imgs
6363
^.*.bob$
64+
^\.github$

.github/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
*.html

.github/workflows/R-CMD-check.yaml

Lines changed: 32 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -12,23 +12,26 @@ jobs:
1212
fail-fast: false
1313
matrix:
1414
config:
15-
- { os: windows-latest, r: '3.5'}
16-
- { os: windows-latest, r: '3.6'}
17-
- { os: windows-latest, r: 'devel'}
18-
- { os: macOS-latest, r: '3.5'}
19-
- { os: macOS-latest, r: '3.6'}
20-
- { os: macOS-latest, r: 'devel'}
21-
- { os: ubuntu-16.04, r: '3.4', cran: "https://demo.rstudiopm.com/all/__linux__/xenial/latest"}
22-
- { os: ubuntu-16.04, r: '3.5', cran: "https://demo.rstudiopm.com/all/__linux__/xenial/latest"}
23-
- { os: ubuntu-16.04, r: '3.6', cran: "https://demo.rstudiopm.com/all/__linux__/xenial/latest"}
15+
- { os: windows-latest, r: '3.5'}
16+
- { os: windows-latest, r: '3.6'}
17+
- { os: windows-latest, r: '4.0'}
18+
- { os: windows-latest, r: 'devel'}
19+
- { os: macOS-latest, r: '3.5'}
20+
- { os: macOS-latest, r: '3.6'}
21+
- { os: macOS-latest, r: '4.0'}
22+
- { os: macOS-latest, r: 'devel'}
23+
- { os: ubuntu-16.04, r: '3.4', cran: "https://demo.rstudiopm.com/all/__linux__/xenial/latest"}
24+
- { os: ubuntu-16.04, r: '3.5', cran: "https://demo.rstudiopm.com/all/__linux__/xenial/latest"}
25+
- { os: ubuntu-16.04, r: '3.6', cran: "https://demo.rstudiopm.com/all/__linux__/xenial/latest"}
26+
- { os: ubuntu-16.04, r: '4.0', cran: "https://demo.rstudiopm.com/all/__linux__/xenial/latest"}
2427

2528
env:
2629
R_REMOTES_NO_ERRORS_FROM_WARNINGS: true
2730
CRAN: ${{ matrix.config.cran }}
2831

2932

3033
steps:
31-
- uses: actions/checkout@v1
34+
- uses: actions/checkout@v2
3235

3336
- uses: r-lib/actions/setup-r@master
3437
with:
@@ -37,14 +40,18 @@ jobs:
3740
- uses: r-lib/actions/setup-pandoc@master
3841

3942
- name: Query dependencies
40-
run: Rscript -e "install.packages('remotes')" -e "saveRDS(remotes::dev_package_deps(dependencies = TRUE), 'depends.Rds', version = 2)"
43+
run: |
44+
install.packages('remotes')
45+
saveRDS(remotes::dev_package_deps(dependencies = TRUE), ".github/depends.Rds", version = 2)
46+
writeLines(sprintf("R-%i.%i", getRversion()$major, getRversion()$minor), ".github/R-version")
47+
shell: Rscript {0}
4148

4249
- name: Cache R packages
4350
if: runner.os != 'Windows'
4451
uses: actions/cache@v1
4552
with:
4653
path: ${{ env.R_LIBS_USER }}
47-
key: ${{ runner.os }}-r-${{ matrix.config.r }}-${{ hashFiles('depends.Rds') }}
54+
key: ${{ runner.os }}-r-${{ matrix.config.r }}-${{ hashFiles('.github/depends.Rds') }}
4855
restore-keys: ${{ runner.os }}-r-${{ matrix.config.r }}-
4956

5057
- name: Install system dependencies
@@ -58,11 +65,21 @@ jobs:
5865
5966
- name: Install dependencies
6067
run: |
61-
Rscript -e "library(remotes)" -e "update(readRDS('depends.Rds'))" -e "remotes::install_cran('rcmdcheck')"
62-
Rscript -e "install.packages('progressr')" ## 'self' vignette engine
68+
remotes::install_deps(dependencies = TRUE)
69+
remotes::install_cran("rcmdcheck")
70+
install.packages("progressr") ## 'self' vignette engine
71+
shell: Rscript {0}
6372

73+
- name: Session info
74+
run: |
75+
options(width = 100)
76+
pkgs <- installed.packages()[, "Package"]
77+
sessioninfo::session_info(pkgs, include_base = TRUE)
78+
shell: Rscript {0}
79+
6480
- name: Check
65-
run: Rscript -e "rcmdcheck::rcmdcheck(args = '--no-manual', error_on = 'warning', check_dir = 'check')"
81+
run: rcmdcheck::rcmdcheck(args = c("--no-manual", "--as-cran"), error_on = "warning", check_dir = "check")
82+
shell: Rscript {0}
6683

6784
- name: Upload check results
6885
if: failure()

DESCRIPTION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
Package: progressr
2-
Version: 0.5.0
2+
Version: 0.6.0
33
Title: A Inclusive, Unifying API for Progress Updates
44
Description: A minimal, unifying API for scripts and packages to report progress updates from anywhere including when using parallel processing. The package is designed such that the developer can to focus on what progress should be reported on without having to worry about how to present it. The end user has full control of how, where, and when to render these progress updates, e.g. in the terminal using utils::txtProgressBar() or progress::progress_bar(), in a graphical user interface using utils::winProgressBar(), tcltk::tkProgressBar() or shiny::withProgress(), via the speakers using beep::beepr(), or on a file system via the size of a file. Anyone can add additional, customized, progression handlers. The 'progressr' package uses R's condition framework for signaling progress updated. Because of this, progress can be reported from almost anywhere in R, e.g. from classical for and while loops, from map-reduce APIs like the lapply() family of functions, 'purrr', 'plyr', and 'foreach'. It will also work with parallel processing via the 'future' framework, e.g. future.apply::future_lapply(), furrr::future_map(), and 'foreach' with 'doFuture'. The package is compatible with Shiny applications.
55
Authors@R: c(

NEWS

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,57 @@
11
Package: progressr
22
==================
33

4+
Version: 0.6.0 [2020-05-18]
5+
6+
SIGNIFICANT CHANGES:
7+
8+
* Now with_progress() makes sure that any output produced while reporting on
9+
progress will not interfer with the progress output and vice versa, which
10+
otherwise is a common problem with progress frameworks that output to the
11+
terminal, e.g. progress-bar output output is interweaved with printed
12+
objects. In contrast, when using 'progressr' we can use message() and
13+
print() as usual regardless of progress being reported or not.
14+
15+
NEW FEATURES:
16+
17+
* Signaling progress(msg, class = "sticky") will cause the message to be
18+
sticky, e.g. for progress bars outputting to the terminal, the message
19+
will be "pushed" above the progress bar.
20+
21+
* with_progress() gained argument 'delay_terminal' whose default will be
22+
automatically inferred from inspecting the currently set handlers and
23+
whether they output to the terminal or not.
24+
25+
* Arguments 'delay_stdout' and 'delay_conditions' for with_progress() is
26+
now agile to the effective value of the 'delay_terminal' argument.
27+
28+
* Now handler_nnn() functions pass additional arguments in '...' to the
29+
underlying progress-handler backend, e.g. handler_progress(width = 40L)
30+
will set up progress::progress_bar$new(width = 40L).
31+
32+
* Add environment variables 'R_PROGRESSR_CLEAR', 'R_PROGRESSR_ENABLE',
33+
'R_PROGRESSR_ENABLE_AFTER', 'R_PROGRESSR_TIMES', and 'R_PROGRESSR_INTERVAL'
34+
for controlling the default value of the corresponding 'progressr.*' options.
35+
36+
BUG FIXES:
37+
38+
* Limiting the frequency of progress reporting via handler arguments 'times',
39+
'interval' or 'intrusivness' did not work and was effectively ignored.
40+
41+
* The 'progress' handler, which uses progress::progress_bar(), did not support
42+
colorization of the 'format' string when done by the 'crayon' package.
43+
44+
* handlers() did not return invisible (as documented).
45+
46+
* Argument 'target' was ignored for all handler functions.
47+
48+
* Argument 'interval' was ignored for handler_debug().
49+
50+
* The class of handler_nnn() functions where all "reset_progression_handler"
51+
rather than "nnn_progression_handler". The same bug caused the reported
52+
'name' field to be "reset" rather than "nnn".
53+
54+
455
Version: 0.5.0 [2020-04-16]
556

657
NEW FEATURES:

0 commit comments

Comments
 (0)