<Toml>
[person]
age = 30
name = "Wilma"
Create and edit TOML in R with {tomledit}
{tomledit} v0.1.1 has found its way onto CRAN.
tomledit is a package for creating and editing TOML files from R with support for reading as well.
The most basic use of tomledit is via toml(). toml() creates a Toml object from named arguments passed to ....
v0.1.1 Features
This newest release supports the use of arrays with inline tables. This feature comes as a request from @dpastoor to support the experimental rproject.toml file for rv.
Iām bullish on rv as a new alternative to renv. I think it will be a great addition to the R community.
This new feature allows us to have a list of unnamed lists inside of our TOML.
Below we create an item called repositories which is an array of inline tables containing the alias and url to a CRAN-like repository.
Similarly, the dependencies item is an array of both inline-tables and strings. This new feature adds more flexibility to the type of TOML that we can create.
r_proj_toml <- list(
name = "upgrade",
r_version = "4.4",
repositories = list(
list(alias = "gh-pkg-mirror", url = "https://a2-ai.github.io/gh-pkg-mirror/2024-02-22"),
list(alias = "RSPM", url = "https://packagemanager.posit.co/cran/2024-02-22"),
list(alias = "new-mirror", url = "https://a2-ai.github.io/gh-pkg-mirror/2024-12-04"),
list(alias = "new-rspm", url = "https://packagemanager.posit.co/cran/2024-12-04")
),
dependencies = list(
list(name = "pmplots", repository = "new-mirror"),
"pmtables",
"bbr",
list(name = "ggplot2", repository = "new-rspm")
)
)
as_toml(list(project = r_proj_toml))<Toml>
[project]
name = "upgrade"
r_version = "4.4"
repositories = [
{ alias = "gh-pkg-mirror", url = "https://a2-ai.github.io/gh-pkg-mirror/2024-02-22" },
{ alias = "RSPM", url = "https://packagemanager.posit.co/cran/2024-02-22" },
{ alias = "new-mirror", url = "https://a2-ai.github.io/gh-pkg-mirror/2024-12-04" },
{ alias = "new-rspm", url = "https://packagemanager.posit.co/cran/2024-12-04" }
]
dependencies = [
{ name = "pmplots", repository = "new-mirror" },
"pmtables",
"bbr",
{ name = "ggplot2", repository = "new-rspm" }
]