./devel/R-evaluate, Parsing and evaluation tools

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 1.0.1, Package name: R-evaluate-1.0.1, Maintainer: pkgsrc-users

Parsing and evaluation tools that make it easy to recreate the command
line behaviour of R.


Required to run:
[math/R] [textproc/R-stringr]

Required to build:
[pkgtools/cwrappers]

Master sites: (Expand)


Version history: (Expand)


CVS history: (Expand)


   2024-10-18 14:22:13 by Makoto Fujiwara | Files touched by this commit (2)
Log message:
(devel/R-evaluate) Updated 0.23 to 1.0.1

# evaluate 1.0.1

* Fix buglet revealed when by using `rlang::abort()` inside of `evaluate()`.

# evaluate 1.0.0

* Setting `ACTIONS_STEP_DEBUG=1` (as in a failing GHA workflow) will
  automatically set `log_echo` and `log_warning` to `TRUE` (#175).

* evaluate works on R 3.6.0 once again.

* `evaluate()` improvements:

  * Now terminates on the first error in a multi-expression input, i.e.
    `1;stop('2');3` will no longer evaluate the third component. This
    matches console behaviour more closely.

  * Calls from conditions emitted by top-level code are automatically stripped
    (#150).

  * Result has a class (`evaluate_evaluation`/`list`) with a basic print method.

  * Plots created before messages/warnings/errors are correctly captured (#28).

* Handler improvements:

  * The default `value` handler now evaluates `print()` in a child of the
    evaluation environment. This largely makes evaluate easier to test, but
    should make defining S3 methods for print a little easier (#192).

  * The `source` output handler is now passed the entire complete input
    expression, not just the first component.

* `evalute(include_timing)` has been deprecated. I can't find any use of it on
  GitHub, and it adds substantial code complexity for little gain.

* `is.value()` has been removed since it tests for an object that evaluate
  never creates.

* New `local_reproducible_output()` helper that sets various options and env
  vars to help ensure consistency of output across environments.

* `parse_all()` adds a `\n` to the end of every line, even the last one if it
  didn't have one in the input. Additionally, it no longer has a default
  method, which will generate better errors if you pass in something unexpected.

* New `trim_intermediate_plots()` drops intermediate plots to reveal the
  complete/final plot (#206).

* `watchout()` is no longer exported; it's really an implementation detail that
  should never have been leaked to the public interface.

# evaluate 0.24.0

* The `source` output handler can now take two arguments (the unparsed `src`
  and the parsed `call`) and choose to affect the displayed source.
* The package now depends on R 4.0.0 in order to decrease our maintenance burden.
   2024-01-20 07:21:37 by Makoto Fujiwara | Files touched by this commit (2)
Log message:
(devel/R-evaluate) Updated 0.21 to 0.23, make test passed

Version 0.23
================================================================================

- Prevent existing plots from leaking into `evaluate()` results
  (thanks, @dmurdoch, yihui/knitr#2297).

- If the environment variable `R_EVALUATE_BYPASS_MESSAGES` is set to
  true, the arguments `keep_message` and `keep_warning` of
  `evaluate()` will be set to `NA`, regardless of user input, which
  means messages and warnings will not be captured by
  `evaluate()`. This provides a possibility to force logging messages
  and warnings (thanks, @slodge, yihui/yihui.org#1458).

Version 0.22
================================================================================

- Fixed a problem in the internal function `plot_calls()` that made
  the examples of `recordGraphics` fail to run on its help page
  (thanks, Kurt Hornik).
   2023-06-11 17:08:17 by Makoto Fujiwara | Files touched by this commit (2)
Log message:
(devel/R-evaluate) Update 0.19 to 0.21

Version 0.21
================================================================================

- `evaluate()` gains `log_echo` and `log_warning` arguments. When set to `TRUE`
  these cause code and warnings (respectively) to be immediately emitted to
  `stderr()`. This is useful for logging in unattended environments (#118).

- Improved the error message when users accidentally called
  `closeAllConnections()` (thanks, @guslipkin,
  quarto-dev/quarto-cli#5214).

Version 0.20
================================================================================

- The arguments `keep_message` and `keep_warning` of `evaluate()` can
  take the value `NA` now, which means `evaluate()` will not capture
  the messages and they will be sent to the console. This is
  equivalent to the `FALSE` value before v0.19 (thanks, @gadenbuie,
  https://github.com/yihui/yihui.org/discussions/1458).
   2022-12-18 02:29:20 by Makoto Fujiwara | Files touched by this commit (2)
Log message:
(devel/R-evaluate) Updated 0.15 to 0.19

Version 0.19
================================================================================

- In `evaluate()`, `keep_message` and `keep_warning` will completely
  drop messages and warnings, respectively, when their values are
  `FALSE`. Previously messages would still be emitted (to the console)
  even if they take `FALSE` values.

- Fixed the bug that `parse_all()` fails with line directives (thanks,
  @ArcadeAntics, #114).

Version 0.18
================================================================================

- Fixed tests that were still using the deprecated `ggplot2::qplot()`.

Version 0.17
================================================================================

- Adapted a unit test to the next version of **ggplot2** (thanks,
  @thomasp85, #113).

Version 0.16
================================================================================

- Fixed a bug that an empty **ggplot2** plot could be recorded and
  incorrectly saved (thanks, @sjspielman, rstudio/rmarkdown#2363).
   2022-04-16 08:04:38 by Makoto Fujiwara | Files touched by this commit (2)
Log message:
(devel/R-evaluate) Updated 0.14 to 0.15

Version 0.15
================================================================================
- `new_output_handler()` gains a `calling_handlers` argument. These
  are passed to `withCallingHandlers()` before `evaluate()` captures
  any conditions.

- Fixed #106: do not assume that `is.atomic(NULL)` returns `TRUE`
  (thanks, @mmaechler).
   2021-10-26 12:20:11 by Nia Alarie | Files touched by this commit (3016)
Log message:
archivers: Replace RMD160 checksums with BLAKE2s checksums

All checksums have been double-checked against existing RMD160 and
SHA512 hashes

Could not be committed due to merge conflict:
devel/py-traitlets/distinfo

The following distfiles were unfetchable (note: some may be only fetched
conditionally):

./devel/pvs/distinfo pvs-3.2-solaris.tgz
./devel/eclipse/distinfo eclipse-sourceBuild-srcIncluded-3.0.1.zip
   2021-10-07 15:44:44 by Nia Alarie | Files touched by this commit (3017)
Log message:
devel: Remove SHA1 hashes for distfiles
   2019-08-08 21:53:58 by Brook Milligan | Files touched by this commit (189) | Package updated
Log message:
Update all R packages to canonical form.

The canonical form [1] of an R package Makefile includes the
following:

- The first stanza includes R_PKGNAME, R_PKGVER, PKGREVISION (as
  needed), and CATEGORIES.

- HOMEPAGE is not present but defined in math/R/Makefile.extension to
  refer to the CRAN web page describing the package.  Other relevant
  web pages are often linked from there via the URL field.

This updates all current R packages to this form, which will make
regular updates _much_ easier, especially using pkgtools/R2pkg.

[1] http://mail-index.netbsd.org/tech-pkg/2019/08/02/msg021711.html