| Type: | Package | 
| Title: | Provides Progress Bars in 'knitr' | 
| Version: | 1.1.1 | 
| Description: | Provides a progress bar similar to 'dplyr' that can write progress out to a variety of locations, including stdout(), stderr(), or from file(). Useful when using 'knitr' or 'rmarkdown', and you still want to see progress of calculations in the terminal. | 
| BugReports: | https://github.com/rmflight/knitrProgressBar/issues | 
| URL: | https://rmflight.github.io/knitrProgressBar/ | 
| License: | MIT + file LICENSE | 
| Encoding: | UTF-8 | 
| Imports: | R6, R.oo | 
| Suggests: | knitr, rmarkdown, purrr, testthat, covr, mockr, withr, parallel | 
| VignetteBuilder: | knitr | 
| RoxygenNote: | 7.3.2 | 
| NeedsCompilation: | no | 
| Packaged: | 2024-07-23 17:17:57 UTC; rmflight | 
| Author: | Robert M Flight [aut, cre], Hadley Wickham [ctb] (Author of included dplyr fragments), Romain Francois [ctb] (Author of included dplyr fragments), Lionel Henry [ctb] (Author of included dplyr fragments), Kirill Müller [ctb] (Author of included dplyr fragments), RStudio [cph] (Copyright holder of included dplyr fragments) | 
| Maintainer: | Robert M Flight <rflight79@gmail.com> | 
| Repository: | CRAN | 
| Date/Publication: | 2024-07-23 18:00:01 UTC | 
Progress Output Location
Description
Provides functionality to decide how the progress should be written, if at all.
Usage
make_kpb_output_decisions()
Details
This function makes decisions about how the progress bar should be displayed based on whether:
- The code is being run in an interactive session or not 
- The code is part of a - knitrevaluation using- knit()or- rmarkdown::render()
- Options set by the user. These options include: -  kpb.suppress_noninteractive: a logical value. Whether to suppress output when being run non-interactively. 
-  kpb.use_logfile: logical, should a log-file be used for output? 
-  kpb.log_file: character string defining the log-file to use. kpb.use_logfile must be TRUE.
-  kpb.log_pattern: character string providing a pattern to use, will be combined with the chunk label to create a log-file for each knitr chunk. kpb.use_logfile must be TRUE.
 
-  
Based on these, it will either return a newly opened connection, either via
stderr(), stdout(), or a file connection via file("logfile.log", open = "w").
Note that for files this will overwrite a previously existing file, and the contents
will be lost.
Value
a write-able connection or NULL
Examples
## Not run: 
# suppress output when not interactive
options(kpb.suppress_noninteractive = TRUE)
# use a log-file, will default to kpb_output.txt
options(kpb.use_logfile = TRUE)
# use a specific log-file
options(kpb.use_logfile = TRUE)
options(kpb.log_file = "progress.txt")
# use a log-file based on chunk names
options(kpb.use_logfile = TRUE)
options(kpb.log_pattern = "pb_out_")
# for a document with a chunk labeled: "longcalc", this will generate "pb_out_longcalc.log"
## End(Not run)
Progress bar with estimated time.
Description
This provides a reference class representing a text progress bar that displays the
estimated time remaining. When finished, it displays the total duration.  The
automatic progress bar can be disabled by setting progress_location = NULL.
Usage
progress_estimated(
  n,
  min_time = 0,
  progress_location = make_kpb_output_decisions()
)
Arguments
| n | Total number of items | 
| min_time | Progress bar will wait until at least  | 
| progress_location | where to write the progress to. Default is to make
decisions based on location type using  | 
Value
A ref class with methods tick(), print(),
pause(), and stop().
See Also
Examples
p <- progress_estimated(3)
p$tick()
p$tick()
p$tick()
p <- progress_estimated(3)
for (i in 1:3) p$pause(0.1)$tick()$print()
p <- progress_estimated(3)
p$tick()$print()$
 pause(1)$stop()
# If min_time is set, progress bar not shown until that many
# seconds have elapsed
p <- progress_estimated(3, min_time = 3)
for (i in 1:3) p$pause(0.1)$tick()$print()
## Not run: 
p <- progress_estimated(10, min_time = 3)
for (i in 1:10) p$pause(0.5)$tick()$print()
# output to stderr
p <- progress_estimated(10, progress_location = stderr())
# output to a file
p <- progress_estimated(10, progress_location = tempfile(fileext = ".log"))
## End(Not run)
multi process progress indicator
Description
Sets up a progress object that writes to a shared file to indicate the total
progress. Progress can be monitored by watch_progress_mp.
Usage
set_progress_mp(write_location = NULL)
Arguments
| write_location | where to save progress to | 
Value
ProgressMP
See Also
watch_progress_mp
updating progress bars
Description
Takes care of updating a progress bar and stopping when appropriate
Usage
update_progress(.pb = NULL)
Arguments
| .pb | the progress bar object | 
Value
the progress bar
watch progress from multi process
Description
sets up a "watcher" function that will report on the progress
of a multi-process process that is being indicated by set_progress_mp.
Usage
watch_progress_mp(
  n,
  min_time = 0,
  watch_location = NULL,
  progress_location = make_kpb_output_decisions()
)
Arguments
| n | number of times process is running | 
| min_time | how long to wait | 
| watch_location | where is the progress being written to | 
| progress_location | where to write the progress output | 
Value
ProgressMPWatcher
See Also
set_progress_mp