Changelog
Source:NEWS.md
rextendr (development version)
-
purrr
has been replaced withR/standalone-purrr.R
removingpurrr
fromImports
https://github.com/extendr/rextendr/pull/408 -
document()
will no longer try to save all open files using rstudioapi https://github.com/extendr/rextendr/issues/404 https://github.com/extendr/rextendr/issues/407 -
use_cran_default()
has been removed as the default package template is CRAN compatible https://github.com/extendr/rextendr/pull/394 -
use_extendr()
now createstools/msrv.R
,configure
andconfigure.win
. These have been moved out ofuse_cran_defaults()
https://github.com/extendr/rextendr/pull/393 -
Makevars
now prints linked static libraries at compile time by adding--print=native-static-libs
toRUSTFLAGS
https://github.com/extendr/rextendr/pull/393 -
use_extendr()
sets theDESCRIPTION
’sSystemRequirements
field according to CRAN policy toCargo (Rust's package manager), rustc
(#329) - Introduces new functions
use_cran_defaults()
andvendor_pkgs()
to ease the publication of extendr-powered packages on CRAN. See the new article CRAN compliant extendr packages on how to use these (#320). -
rust_sitrep()
now better communicates the status of the Rust toolchain and available targets. It also guides the user through necessary installation steps to fix Rust setup (#318). -
use_extendr()
anddocument()
now set theSystemRequirements
field of theDESCRIPTION
file toCargo (rustc package manager)
if the field is empty (#298). -
use_extendr()
gets a new ability to overwrite existing rextendr templates (#292). -
use_extendr()
setspublish = false
in the[package]
section of theCargo.toml
(#297). -
use_extendr()
correctly handles calls withpath
not equal to"."
(current folder), or when there is no active usethis project (#323). - Fixes an issue in pre-defined set of known features: added
either
(#338) -
create_extendr_package()
allows user to create project directory using RStudio’s Project Command. (#321) - Support
RTOOLS44
(#347) - Removed
use_try_from
as an option inrust_function
, and addeduse_rng
(#354) - Added
use_crate()
function to make adding dependencies to Cargo.toml easier within R, similar tousethis::use_package()
(#361) - Fixed an issue in
rust_source()
family of functions that prevented usage ofr#
escape sequences in Rust function names (#374) -
use_cran_defaults()
now checks theSystemRequirements
field in theDESCRIPTION
file for cargo and rustc. It will display installation instructions if either is missing or provide the minimum required version if the installed version is outdated. - Added
use_msrv()
to aid in specifying the minimum supported rust version (MSRV) for an R package - Added
read_cargo_metadata()
to retrieve Cargo metadata for packages and workspaces. (#389)
rextendr 0.3.0
CRAN release: 2023-05-30
Ilia Kosenkov is now the official maintainer.
Josiah Parry is now a contributor.
Support Rtools43 (#231).
rextendr
has migrated to the use ofcli
for raising errors and warnings.Developer note: new helper function
local_quiet_cli()
introduced inR/utils.R
to simplify silencing cli output.
New features
A new function
rust_sitrep()
that prints out a short report on the currently installed Rust toolchain (#274).A new function
write_license_note()
to generateLICENSE.note
file fromCargo.toml
(#271).extendr_fn_options
parameter ofrust_source()
controls what type of options are emitted to#[extendr()]
attribute (#252).use_dev_extendr
flag makesrust_source()
family of functions compile code using development version ofextendr
. Development configuration is stored as an option namedrextendr.extendr_dev_deps
(#251).features
parameter ofrust_source()
now correctly enables features inextendr-api
and references required crates.features
not available in release version ofextendr
raises a warning (#249).A
<pkg_name>-win.def
file containing DLL exports is created byrextendr::use_extendr()
. It is used during linking phase on Windows and solves the problem of compiling very large projects, such aspolars
(#212)Support extendr macro with options (#128).
rust_source()
gotfeatures
argument to specify Cargo features to activate (#140).rextendr::document()
now sets the envvars thatdevtools::document()
sets, e.g.NOT_CRAN
(#135).