From 3e8f70dc4741e0e42838776f329d2967684bbac3 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Fri, 8 Sep 2023 13:19:52 +0200 Subject: [PATCH 01/35] :arrow_up: upgrade packages Update packages for R-4.3.1 --- DESCRIPTION | 2 +- renv.lock | 1527 +++++++++++++++++++++----------------------- renv/activate.R | 453 +++++++++---- renv/settings.json | 19 + 4 files changed, 1077 insertions(+), 924 deletions(-) create mode 100644 renv/settings.json diff --git a/DESCRIPTION b/DESCRIPTION index 5befcab..15411d0 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -11,7 +11,7 @@ Description: smarterapi is an interface which interacts with SMARTER REST API License: GPL (>= 3) Encoding: UTF-8 Roxygen: list(markdown = TRUE) -RoxygenNote: 7.2.1 +RoxygenNote: 7.2.3 Suggests: lintr, styler, diff --git a/renv.lock b/renv.lock index 61aed47..a5a1254 100644 --- a/renv.lock +++ b/renv.lock @@ -1,10 +1,10 @@ { "R": { - "Version": "4.2.1", + "Version": "4.3.1", "Repositories": [ { "Name": "CRAN", - "URL": "https://cloud.r-project.org" + "URL": "https://packagemanager.posit.co/cran/latest" } ] }, @@ -14,353 +14,322 @@ "Version": "1.1.3", "Source": "Repository", "Repository": "CRAN", - "Hash": "b2866e62bab9378c3cc9476a1954226b", - "Requirements": [] + "Requirements": [ + "R", + "methods" + ], + "Hash": "b2866e62bab9378c3cc9476a1954226b" }, "KernSmooth": { "Package": "KernSmooth", - "Version": "2.23-20", + "Version": "2.23-22", "Source": "Repository", "Repository": "CRAN", - "Hash": "8dcfa99b14c296bc9f1fd64d52fd3ce7", - "Requirements": [] + "Requirements": [ + "R", + "stats" + ], + "Hash": "2fecebc3047322fa5930f74fae5de70f" }, "MASS": { "Package": "MASS", - "Version": "7.3-58.1", + "Version": "7.3-60", "Source": "Repository", "Repository": "CRAN", - "Hash": "762e1804143a332333c054759f89a706", - "Requirements": [] + "Requirements": [ + "R", + "grDevices", + "graphics", + "methods", + "stats", + "utils" + ], + "Hash": "a56a6365b3fa73293ea8d084be0d9bb0" }, "Matrix": { "Package": "Matrix", - "Version": "1.5-1", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "539dc0c0c05636812f1080f473d2c177", - "Requirements": [ - "lattice" - ] - }, - "R.cache": { - "Package": "R.cache", - "Version": "0.16.0", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "fe539ca3f8efb7410c3ae2cf5fe6c0f8", - "Requirements": [ - "R.methodsS3", - "R.oo", - "R.utils", - "digest" - ] - }, - "R.methodsS3": { - "Package": "R.methodsS3", - "Version": "1.8.2", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "278c286fd6e9e75d0c2e8f731ea445c8", - "Requirements": [] - }, - "R.oo": { - "Package": "R.oo", - "Version": "1.25.0", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "a0900a114f4f0194cf4aa8cd4a700681", - "Requirements": [ - "R.methodsS3" - ] - }, - "R.utils": { - "Package": "R.utils", - "Version": "2.12.0", + "Version": "1.6-1", "Source": "Repository", "Repository": "CRAN", - "Hash": "d31333e10f14027e1cbbc6f266512806", "Requirements": [ - "R.methodsS3", - "R.oo" - ] + "R", + "grDevices", + "graphics", + "grid", + "lattice", + "methods", + "stats", + "utils" + ], + "Hash": "cb6855ac711958ca734b75e631b2035d" }, "R6": { "Package": "R6", "Version": "2.5.1", "Source": "Repository", "Repository": "CRAN", - "Hash": "470851b6d5d0ac559e9d01bb352b4021", - "Requirements": [] + "Requirements": [ + "R" + ], + "Hash": "470851b6d5d0ac559e9d01bb352b4021" }, "RColorBrewer": { "Package": "RColorBrewer", "Version": "1.1-3", "Source": "Repository", "Repository": "CRAN", - "Hash": "45f0398006e83a5b10b72a90663d8d8c", - "Requirements": [] + "Requirements": [ + "R" + ], + "Hash": "45f0398006e83a5b10b72a90663d8d8c" }, "Rcpp": { "Package": "Rcpp", - "Version": "1.0.9", + "Version": "1.0.10", "Source": "Repository", "Repository": "CRAN", - "Hash": "e9c08b94391e9f3f97355841229124f2", - "Requirements": [] + "Requirements": [ + "methods", + "utils" + ], + "Hash": "e749cae40fa9ef469b6050959517453c" }, "abind": { "Package": "abind", "Version": "1.4-5", "Source": "Repository", - "Repository": "CRAN", - "Hash": "4f57884290cc75ab22f4af9e9d4ca862", - "Requirements": [] + "Repository": "RSPM", + "Requirements": [ + "R", + "methods", + "utils" + ], + "Hash": "4f57884290cc75ab22f4af9e9d4ca862" }, "askpass": { "Package": "askpass", "Version": "1.1", "Source": "Repository", "Repository": "CRAN", - "Hash": "e8a22846fff485f0be3770c2da758713", "Requirements": [ "sys" - ] - }, - "backports": { - "Package": "backports", - "Version": "1.4.1", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "c39fbec8a30d23e721980b8afb31984c", - "Requirements": [] + ], + "Hash": "e8a22846fff485f0be3770c2da758713" }, "base64enc": { "Package": "base64enc", "Version": "0.1-3", "Source": "Repository", "Repository": "CRAN", - "Hash": "543776ae6848fde2f48ff3816d0628bc", - "Requirements": [] - }, - "brew": { - "Package": "brew", - "Version": "1.0-8", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "d69a786e85775b126bddbee185ae6084", - "Requirements": [] + "Requirements": [ + "R" + ], + "Hash": "543776ae6848fde2f48ff3816d0628bc" }, "brio": { "Package": "brio", "Version": "1.1.3", "Source": "Repository", "Repository": "CRAN", - "Hash": "976cf154dfb043c012d87cddd8bca363", - "Requirements": [] + "Hash": "976cf154dfb043c012d87cddd8bca363" }, "bslib": { "Package": "bslib", - "Version": "0.4.0", + "Version": "0.4.2", "Source": "Repository", "Repository": "CRAN", - "Hash": "be5ee090716ce1671be6cd5d7c34d091", "Requirements": [ + "R", + "base64enc", "cachem", + "grDevices", "htmltools", "jquerylib", "jsonlite", "memoise", + "mime", "rlang", "sass" - ] + ], + "Hash": "a7fbf03946ad741129dc81098722fca1" }, "cachem": { "Package": "cachem", - "Version": "1.0.6", + "Version": "1.0.7", "Source": "Repository", "Repository": "CRAN", - "Hash": "648c5b3d71e6a37e3043617489a0a0e9", "Requirements": [ "fastmap", "rlang" - ] + ], + "Hash": "cda74447c42f529de601fe4d4050daef" }, "callr": { "Package": "callr", - "Version": "3.7.2", + "Version": "3.7.3", "Source": "Repository", "Repository": "CRAN", - "Hash": "358689cac9fe93b1bb3a19088d2dbed8", "Requirements": [ + "R", "R6", - "processx" - ] + "processx", + "utils" + ], + "Hash": "9b2191ede20fa29828139b9900922e51" }, "class": { "Package": "class", - "Version": "7.3-20", + "Version": "7.3-22", "Source": "Repository", "Repository": "CRAN", - "Hash": "da09d82223e669d270e47ed24ac8686e", "Requirements": [ - "MASS" - ] + "MASS", + "R", + "stats", + "utils" + ], + "Hash": "f91f6b29f38b8c280f2b9477787d4bb2" }, "classInt": { "Package": "classInt", - "Version": "0.4-8", + "Version": "0.4-10", "Source": "Repository", - "Repository": "CRAN", - "Hash": "298fa500d773db0845935cd73bfd9c2e", + "Repository": "RSPM", "Requirements": [ "KernSmooth", + "R", "class", - "e1071" - ] + "e1071", + "grDevices", + "graphics", + "stats" + ], + "Hash": "f5a40793b1ae463a7ffb3902a95bf864" }, "cli": { "Package": "cli", - "Version": "3.4.1", + "Version": "3.6.1", "Source": "Repository", "Repository": "CRAN", - "Hash": "0d297d01734d2bcea40197bd4971a764", - "Requirements": [] - }, - "clipr": { - "Package": "clipr", - "Version": "0.8.0", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "3f038e5ac7f41d4ac41ce658c85e3042", - "Requirements": [] + "Requirements": [ + "R", + "utils" + ], + "Hash": "89e6d8219950eac806ae0c489052048a" }, "codetools": { "Package": "codetools", - "Version": "0.2-18", + "Version": "0.2-19", "Source": "Repository", "Repository": "CRAN", - "Hash": "019388fc48e48b3da0d3a76ff94608a8", - "Requirements": [] + "Requirements": [ + "R" + ], + "Hash": "c089a619a7fae175d149d89164f8c7d8" }, "colorspace": { "Package": "colorspace", - "Version": "2.0-3", + "Version": "2.1-0", "Source": "Repository", "Repository": "CRAN", - "Hash": "bb4341986bc8b914f0f0acf2e4a3f2f7", - "Requirements": [] - }, - "commonmark": { - "Package": "commonmark", - "Version": "1.8.1", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "b6e3e947d1d7ebf3d2bdcea1bde63fe7", - "Requirements": [] + "Requirements": [ + "R", + "grDevices", + "graphics", + "methods", + "stats" + ], + "Hash": "f20c47fd52fae58b4e377c37bb8c335b" }, "cpp11": { "Package": "cpp11", "Version": "0.4.3", "Source": "Repository", "Repository": "CRAN", - "Hash": "ed588261931ee3be2c700d22e94a29ab", - "Requirements": [] + "Hash": "ed588261931ee3be2c700d22e94a29ab" }, "crayon": { "Package": "crayon", "Version": "1.5.2", "Source": "Repository", "Repository": "CRAN", - "Hash": "e8a1e41acf02548751f45c718d55aa6a", - "Requirements": [] - }, - "credentials": { - "Package": "credentials", - "Version": "1.3.2", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "93762d0a34d78e6a025efdbfb5c6bb41", "Requirements": [ - "askpass", - "curl", - "jsonlite", - "openssl", - "sys" - ] + "grDevices", + "methods", + "utils" + ], + "Hash": "e8a1e41acf02548751f45c718d55aa6a" }, "crosstalk": { "Package": "crosstalk", "Version": "1.2.0", "Source": "Repository", "Repository": "CRAN", - "Hash": "6aa54f69598c32177e920eb3402e8293", "Requirements": [ "R6", "htmltools", "jsonlite", "lazyeval" - ] + ], + "Hash": "6aa54f69598c32177e920eb3402e8293" }, "curl": { "Package": "curl", - "Version": "4.3.3", + "Version": "5.0.0", "Source": "Repository", "Repository": "CRAN", - "Hash": "0eb86baa62f06e8855258fa5a8048667", - "Requirements": [] - }, - "cyclocomp": { - "Package": "cyclocomp", - "Version": "1.1.0", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "53cbed70a2f7472d48fb6aef08442f25", "Requirements": [ - "callr", - "crayon", - "desc", - "remotes", - "withr" - ] + "R" + ], + "Hash": "e4f97056611e8e6b8b852d13b7400cf1" }, "desc": { "Package": "desc", "Version": "1.4.2", "Source": "Repository", "Repository": "CRAN", - "Hash": "6b9602c7ebbe87101a9c8edb6e8b6d21", "Requirements": [ + "R", "R6", "cli", - "rprojroot" - ] + "rprojroot", + "utils" + ], + "Hash": "6b9602c7ebbe87101a9c8edb6e8b6d21" }, "diffobj": { "Package": "diffobj", "Version": "0.3.5", "Source": "Repository", "Repository": "CRAN", - "Hash": "bcaa8b95f8d7d01a5dedfd959ce88ab8", "Requirements": [ - "crayon" - ] + "R", + "crayon", + "methods", + "stats", + "tools", + "utils" + ], + "Hash": "bcaa8b95f8d7d01a5dedfd959ce88ab8" }, "digest": { "Package": "digest", - "Version": "0.6.30", + "Version": "0.6.31", "Source": "Repository", "Repository": "CRAN", - "Hash": "bf1cd206a5d170d132ef75c7537b9bdb", - "Requirements": [] + "Requirements": [ + "R", + "utils" + ], + "Hash": "8b708f296afd9ae69f450f9640be8990" }, "downlit": { "Package": "downlit", "Version": "0.4.2", "Source": "Repository", "Repository": "CRAN", - "Hash": "79bf3f66590752ffbba20f8d2da94c7c", "Requirements": [ + "R", "brio", "desc", "digest", @@ -371,49 +340,61 @@ "vctrs", "withr", "yaml" - ] + ], + "Hash": "79bf3f66590752ffbba20f8d2da94c7c" }, "dplyr": { "Package": "dplyr", - "Version": "1.0.10", + "Version": "1.1.3", "Source": "Repository", - "Repository": "CRAN", - "Hash": "539412282059f7f0c07295723d23f987", + "Repository": "RSPM", "Requirements": [ + "R", "R6", + "cli", "generics", "glue", "lifecycle", "magrittr", + "methods", "pillar", "rlang", "tibble", "tidyselect", + "utils", "vctrs" - ] + ], + "Hash": "e85ffbebaad5f70e1a2e2ef4302b4949" }, "e1071": { "Package": "e1071", - "Version": "1.7-12", + "Version": "1.7-13", "Source": "Repository", - "Repository": "CRAN", - "Hash": "0d776df7577206e100c2c4b508208b10", + "Repository": "RSPM", "Requirements": [ "class", - "proxy" - ] + "grDevices", + "graphics", + "methods", + "proxy", + "stats", + "utils" + ], + "Hash": "1046cb48d06cb40c2900d8878f03a0fe" }, "elevatr": { "Package": "elevatr", - "Version": "0.4.2", + "Version": "0.4.5", "Source": "Repository", - "Repository": "CRAN", - "Hash": "4922456741d2babf2bc14654c8d6d4fd", + "Repository": "RSPM", "Requirements": [ + "R", + "curl", "furrr", "future", "httr", "jsonlite", + "methods", "progressr", "purrr", "raster", @@ -421,550 +402,594 @@ "slippymath", "sp", "units" - ] + ], + "Hash": "867bc9d9ed45489aa01cb30c51fbaec2" }, "ellipsis": { "Package": "ellipsis", "Version": "0.3.2", "Source": "Repository", "Repository": "CRAN", - "Hash": "bb0eec2fe32e88d9e2836c2f73ea2077", "Requirements": [ + "R", "rlang" - ] + ], + "Hash": "bb0eec2fe32e88d9e2836c2f73ea2077" }, "evaluate": { "Package": "evaluate", - "Version": "0.17", + "Version": "0.20", "Source": "Repository", "Repository": "CRAN", - "Hash": "9171b012a55a1ef53f1442b1d798a3b4", - "Requirements": [] + "Requirements": [ + "R", + "methods" + ], + "Hash": "4b68aa51edd89a0e044a66e75ae3cc6c" }, "fansi": { "Package": "fansi", - "Version": "1.0.3", + "Version": "1.0.4", "Source": "Repository", "Repository": "CRAN", - "Hash": "83a8afdbe71839506baa9f90eebad7ec", - "Requirements": [] + "Requirements": [ + "R", + "grDevices", + "utils" + ], + "Hash": "1d9e7ad3c8312a192dea7d3db0274fde" }, "farver": { "Package": "farver", "Version": "2.1.1", "Source": "Repository", "Repository": "CRAN", - "Hash": "8106d78941f34855c440ddb946b8f7a5", - "Requirements": [] + "Hash": "8106d78941f34855c440ddb946b8f7a5" }, "fastmap": { "Package": "fastmap", - "Version": "1.1.0", + "Version": "1.1.1", "Source": "Repository", "Repository": "CRAN", - "Hash": "77bd60a6157420d4ffa93b27cf6a58b8", - "Requirements": [] + "Hash": "f7736a18de97dea803bde0a2daaafb27" + }, + "fontawesome": { + "Package": "fontawesome", + "Version": "0.5.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "htmltools", + "rlang" + ], + "Hash": "1e22b8cabbad1eae951a75e9f8b52378" }, "fs": { "Package": "fs", - "Version": "1.5.2", + "Version": "1.6.2", "Source": "Repository", "Repository": "CRAN", - "Hash": "7c89603d81793f0d5486d91ab1fc6f1d", - "Requirements": [] + "Requirements": [ + "R", + "methods" + ], + "Hash": "94af08e0aa9675a16fadbb3aaaa90d2a" }, "furrr": { "Package": "furrr", "Version": "0.3.1", "Source": "Repository", - "Repository": "CRAN", - "Hash": "da7a4c32196cb2262a41dd5a25d486ff", + "Repository": "RSPM", "Requirements": [ + "R", "future", "globals", "lifecycle", "purrr", "rlang", "vctrs" - ] + ], + "Hash": "da7a4c32196cb2262a41dd5a25d486ff" }, "future": { "Package": "future", - "Version": "1.28.0", + "Version": "1.33.0", "Source": "Repository", - "Repository": "CRAN", - "Hash": "f3e26a942d4ee32cec9403e1ddd7000b", + "Repository": "RSPM", "Requirements": [ "digest", "globals", "listenv", - "parallelly" - ] + "parallel", + "parallelly", + "utils" + ], + "Hash": "8e92c7bc53e91b9bb1faf9a6ef0e8514" }, "generics": { "Package": "generics", "Version": "0.1.3", "Source": "Repository", "Repository": "CRAN", - "Hash": "15e9634c0fcd294799e9b2e929ed1b86", - "Requirements": [] + "Requirements": [ + "R", + "methods" + ], + "Hash": "15e9634c0fcd294799e9b2e929ed1b86" }, "geodata": { "Package": "geodata", - "Version": "0.4-11", + "Version": "0.5-8", "Source": "Repository", - "Repository": "CRAN", - "Hash": "8d94b0beba2008201573d714d3cdced1", + "Repository": "RSPM", "Requirements": [ + "R", "terra" - ] - }, - "gert": { - "Package": "gert", - "Version": "1.9.1", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "9a091a6d2fb91e43afd4337e2dcef2e7", - "Requirements": [ - "askpass", - "credentials", - "openssl", - "rstudioapi", - "sys", - "zip" - ] + ], + "Hash": "93d238706f3fe7c326a7d0bbc2fecdb8" }, "ggplot2": { "Package": "ggplot2", - "Version": "3.3.6", + "Version": "3.4.2", "Source": "Repository", "Repository": "CRAN", - "Hash": "0fb26d0674c82705c6b701d1a61e02ea", "Requirements": [ "MASS", - "digest", + "R", + "cli", "glue", + "grDevices", + "grid", "gtable", "isoband", + "lifecycle", "mgcv", "rlang", "scales", + "stats", "tibble", + "vctrs", "withr" - ] + ], + "Hash": "3a147ee02e85a8941aad9909f1b43b7b" }, "ggspatial": { "Package": "ggspatial", - "Version": "1.1.6", + "Version": "1.1.9", "Source": "Repository", - "Repository": "CRAN", - "Hash": "e9c8859b6fcc17724b93d87134ca36e0", + "Repository": "RSPM", "Requirements": [ + "R", "abind", "ggplot2", "glue", + "grid", + "methods", "rlang", "rosm", "scales", "sf", "tibble", "tidyr" - ] - }, - "gh": { - "Package": "gh", - "Version": "1.3.1", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "b6a12054ee13dce0f6696c019c10e539", - "Requirements": [ - "cli", - "gitcreds", - "httr", - "ini", - "jsonlite" - ] - }, - "gitcreds": { - "Package": "gitcreds", - "Version": "0.1.2", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "ab08ac61f3e1be454ae21911eb8bc2fe", - "Requirements": [] + ], + "Hash": "0a4e5ed181eb823957df790ec11a28fc" }, "globals": { "Package": "globals", - "Version": "0.16.1", + "Version": "0.16.2", "Source": "Repository", - "Repository": "CRAN", - "Hash": "e14798793892c6bebdbe2f144aacf6e6", + "Repository": "RSPM", "Requirements": [ + "R", "codetools" - ] + ], + "Hash": "baa9585ab4ce47a9f4618e671778cc6f" }, "glue": { "Package": "glue", "Version": "1.6.2", "Source": "Repository", "Repository": "CRAN", - "Hash": "4f2596dfb05dac67b9dc558e5c6fba2e", - "Requirements": [] + "Requirements": [ + "R", + "methods" + ], + "Hash": "4f2596dfb05dac67b9dc558e5c6fba2e" }, "gridExtra": { "Package": "gridExtra", "Version": "2.3", "Source": "Repository", "Repository": "CRAN", - "Hash": "7d7f283939f563670a697165b2cf5560", "Requirements": [ - "gtable" - ] + "grDevices", + "graphics", + "grid", + "gtable", + "utils" + ], + "Hash": "7d7f283939f563670a697165b2cf5560" }, "gtable": { "Package": "gtable", - "Version": "0.3.1", + "Version": "0.3.3", "Source": "Repository", "Repository": "CRAN", - "Hash": "36b4265fb818f6a342bed217549cd896", - "Requirements": [] + "Requirements": [ + "R", + "cli", + "glue", + "grid", + "lifecycle", + "rlang" + ], + "Hash": "b44addadb528a0d227794121c00572a0" }, "highr": { "Package": "highr", - "Version": "0.9", + "Version": "0.10", "Source": "Repository", "Repository": "CRAN", - "Hash": "8eb36c8125038e648e5d111c0d7b2ed4", "Requirements": [ + "R", "xfun" - ] + ], + "Hash": "06230136b2d2b9ba5805e1963fa6e890" }, "hms": { "Package": "hms", - "Version": "1.1.2", + "Version": "1.1.3", "Source": "Repository", "Repository": "CRAN", - "Hash": "41100392191e1244b887878b533eea91", "Requirements": [ - "ellipsis", "lifecycle", + "methods", "pkgconfig", "rlang", "vctrs" - ] + ], + "Hash": "b59377caa7ed00fa41808342002138f9" }, "htmltools": { "Package": "htmltools", - "Version": "0.5.3", + "Version": "0.5.5", "Source": "Repository", "Repository": "CRAN", - "Hash": "6496090a9e00f8354b811d1a2d47b566", "Requirements": [ + "R", "base64enc", "digest", + "ellipsis", "fastmap", - "rlang" - ] + "grDevices", + "rlang", + "utils" + ], + "Hash": "ba0240784ad50a62165058a27459304a" }, "htmlwidgets": { "Package": "htmlwidgets", - "Version": "1.5.4", + "Version": "1.6.2", "Source": "Repository", "Repository": "CRAN", - "Hash": "76147821cd3fcd8c4b04e1ef0498e7fb", "Requirements": [ + "grDevices", "htmltools", "jsonlite", + "knitr", + "rmarkdown", "yaml" - ] + ], + "Hash": "a865aa85bcb2697f47505bfd70422471" }, "httr": { "Package": "httr", - "Version": "1.4.4", + "Version": "1.4.5", "Source": "Repository", "Repository": "CRAN", - "Hash": "57557fac46471f0dbbf44705cc6a5c8c", "Requirements": [ + "R", "R6", "curl", "jsonlite", "mime", "openssl" - ] - }, - "ini": { - "Package": "ini", - "Version": "0.3.1", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "6154ec2223172bce8162d4153cda21f7", - "Requirements": [] + ], + "Hash": "f6844033201269bec3ca0097bc6c97b3" }, "isoband": { "Package": "isoband", - "Version": "0.2.6", + "Version": "0.2.7", "Source": "Repository", "Repository": "CRAN", - "Hash": "cfdea9dea85c1a973991c8cbe299f4da", - "Requirements": [] + "Requirements": [ + "grid", + "utils" + ], + "Hash": "0080607b4a1a7b28979aecef976d8bc2" }, "jpeg": { "Package": "jpeg", - "Version": "0.1-9", + "Version": "0.1-10", "Source": "Repository", - "Repository": "CRAN", - "Hash": "441ee36360a57b363f4fa3df0c364630", - "Requirements": [] + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "031a0b683d001a7519202f0628fc0358" }, "jquerylib": { "Package": "jquerylib", "Version": "0.1.4", "Source": "Repository", "Repository": "CRAN", - "Hash": "5aab57a3bd297eee1c1d862735972182", "Requirements": [ "htmltools" - ] + ], + "Hash": "5aab57a3bd297eee1c1d862735972182" }, "jsonlite": { "Package": "jsonlite", - "Version": "1.8.3", + "Version": "1.8.4", "Source": "Repository", "Repository": "CRAN", - "Hash": "8b1bd0be62956f2a6b91ce84fac79a45", - "Requirements": [] + "Requirements": [ + "methods" + ], + "Hash": "a4269a09a9b865579b2635c77e572374" }, "knitr": { "Package": "knitr", - "Version": "1.40", + "Version": "1.42", "Source": "Repository", "Repository": "CRAN", - "Hash": "caea8b0f899a0b1738444b9bc47067e7", "Requirements": [ + "R", "evaluate", "highr", - "stringr", + "methods", + "tools", "xfun", "yaml" - ] + ], + "Hash": "8329a9bcc82943c8069104d4be3ee22d" }, "labeling": { "Package": "labeling", "Version": "0.4.2", "Source": "Repository", "Repository": "CRAN", - "Hash": "3d5108641f47470611a32d0bdf357a72", - "Requirements": [] + "Requirements": [ + "graphics", + "stats" + ], + "Hash": "3d5108641f47470611a32d0bdf357a72" }, "lattice": { "Package": "lattice", - "Version": "0.20-45", + "Version": "0.21-8", "Source": "Repository", "Repository": "CRAN", - "Hash": "b64cdbb2b340437c4ee047a1f4c4377b", - "Requirements": [] + "Requirements": [ + "R", + "grDevices", + "graphics", + "grid", + "stats", + "utils" + ], + "Hash": "0b8a6d63c8770f02a8b5635f3c431e6b" }, "lazyeval": { "Package": "lazyeval", "Version": "0.2.2", "Source": "Repository", "Repository": "CRAN", - "Hash": "d908914ae53b04d4c0c0fd72ecc35370", - "Requirements": [] + "Requirements": [ + "R" + ], + "Hash": "d908914ae53b04d4c0c0fd72ecc35370" }, "leaflet": { "Package": "leaflet", - "Version": "2.1.1", + "Version": "2.2.0", "Source": "Repository", - "Repository": "CRAN", - "Hash": "97fadb60ef6eb8524b9f6e2c4a69ee93", + "Repository": "RSPM", "Requirements": [ + "R", "RColorBrewer", - "base64enc", "crosstalk", "htmltools", "htmlwidgets", + "jquerylib", "leaflet.providers", "magrittr", - "markdown", + "methods", "png", "raster", "scales", "sp", - "viridis" - ] + "stats", + "viridis", + "xfun" + ], + "Hash": "f73dcc38ff38127bc11ea776786996de" }, "leaflet.providers": { "Package": "leaflet.providers", - "Version": "1.9.0", + "Version": "1.13.0", "Source": "Repository", - "Repository": "CRAN", - "Hash": "d3082a7beac4a1aeb96100ff06265d7e", - "Requirements": [] + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "235cd5abed82d9e6e79eb05eee248983" }, "lifecycle": { "Package": "lifecycle", "Version": "1.0.3", "Source": "Repository", "Repository": "CRAN", - "Hash": "001cecbeac1cff9301bdc3775ee46a86", "Requirements": [ + "R", "cli", "glue", "rlang" - ] - }, - "lintr": { - "Package": "lintr", - "Version": "3.0.2", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "b21ebd652d940f099915221f3328ab7b", - "Requirements": [ - "backports", - "codetools", - "crayon", - "cyclocomp", - "digest", - "glue", - "jsonlite", - "knitr", - "rex", - "xml2", - "xmlparsedata" - ] + ], + "Hash": "001cecbeac1cff9301bdc3775ee46a86" }, "listenv": { "Package": "listenv", - "Version": "0.8.0", + "Version": "0.9.0", "Source": "Repository", - "Repository": "CRAN", - "Hash": "0bde42ee282efb18c7c4e63822f5b4f7", - "Requirements": [] + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "4fbd3679ec8ee169ba28d4b1ea7d0e8f" }, "logger": { "Package": "logger", "Version": "0.2.2", "Source": "Repository", - "Repository": "CRAN", - "Hash": "c269b06beb2bbadb0d058c0e6fa4ec3d", - "Requirements": [] + "Repository": "RSPM", + "Requirements": [ + "utils" + ], + "Hash": "c269b06beb2bbadb0d058c0e6fa4ec3d" }, "lubridate": { "Package": "lubridate", - "Version": "1.8.0", + "Version": "1.9.2", "Source": "Repository", "Repository": "CRAN", - "Hash": "2ff5eedb6ee38fb1b81205c73be1be5a", "Requirements": [ - "cpp11", - "generics" - ] + "R", + "generics", + "methods", + "timechange" + ], + "Hash": "e25f18436e3efd42c7c590a1c4c15390" }, "magrittr": { "Package": "magrittr", "Version": "2.0.3", "Source": "Repository", "Repository": "CRAN", - "Hash": "7ce2733a9826b3aeb1775d56fd305472", - "Requirements": [] - }, - "markdown": { - "Package": "markdown", - "Version": "1.2", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "295690cfe43b7ea23de079b52c134b13", "Requirements": [ - "mime", - "xfun" - ] + "R" + ], + "Hash": "7ce2733a9826b3aeb1775d56fd305472" }, "memoise": { "Package": "memoise", "Version": "2.0.1", "Source": "Repository", "Repository": "CRAN", - "Hash": "e2817ccf4a065c5d9d7f2cfbe7c1d78c", "Requirements": [ "cachem", "rlang" - ] + ], + "Hash": "e2817ccf4a065c5d9d7f2cfbe7c1d78c" }, "mgcv": { "Package": "mgcv", - "Version": "1.8-41", + "Version": "1.9-0", "Source": "Repository", "Repository": "CRAN", - "Hash": "6b3904f13346742caa3e82dd0303d4ad", "Requirements": [ "Matrix", - "nlme" - ] + "R", + "graphics", + "methods", + "nlme", + "splines", + "stats", + "utils" + ], + "Hash": "086028ca0460d0c368028d3bda58f31b" }, "mime": { "Package": "mime", "Version": "0.12", "Source": "Repository", "Repository": "CRAN", - "Hash": "18e9c28c1d3ca1560ce30658b22ce104", - "Requirements": [] + "Requirements": [ + "tools" + ], + "Hash": "18e9c28c1d3ca1560ce30658b22ce104" }, "munsell": { "Package": "munsell", "Version": "0.5.0", "Source": "Repository", "Repository": "CRAN", - "Hash": "6dfe8bf774944bd5595785e3229d8771", "Requirements": [ - "colorspace" - ] + "colorspace", + "methods" + ], + "Hash": "6dfe8bf774944bd5595785e3229d8771" }, "nlme": { "Package": "nlme", - "Version": "3.1-160", + "Version": "3.1-163", "Source": "Repository", "Repository": "CRAN", - "Hash": "02e3c6e7df163aafa8477225e6827bc5", "Requirements": [ - "lattice" - ] + "R", + "graphics", + "lattice", + "stats", + "utils" + ], + "Hash": "8d1938040a05566f4f7a14af4feadd6b" }, "openssl": { "Package": "openssl", - "Version": "2.0.4", + "Version": "2.0.6", "Source": "Repository", "Repository": "CRAN", - "Hash": "e86c5ffeb8474a9e03d75f5d2919683e", "Requirements": [ "askpass" - ] + ], + "Hash": "0f7cd2962e3044bb940cca4f4b5cecbe" }, "pander": { "Package": "pander", "Version": "0.6.5", "Source": "Repository", - "Repository": "CRAN", - "Hash": "737924139a1e4fc96356ff377c754c35", + "Repository": "RSPM", "Requirements": [ + "R", "Rcpp", - "digest" - ] + "digest", + "grDevices", + "graphics", + "methods", + "stats", + "tools", + "utils" + ], + "Hash": "737924139a1e4fc96356ff377c754c35" }, "parallelly": { "Package": "parallelly", - "Version": "1.32.1", + "Version": "1.36.0", "Source": "Repository", - "Repository": "CRAN", - "Hash": "9e3d8d65cb9c5ca5966340a6bfec60b2", - "Requirements": [] + "Repository": "RSPM", + "Requirements": [ + "parallel", + "tools", + "utils" + ], + "Hash": "bca377e1c87ec89ebed77bba00635b2e" }, "pillar": { "Package": "pillar", - "Version": "1.8.1", + "Version": "1.9.0", "Source": "Repository", "Repository": "CRAN", - "Hash": "f2316df30902c81729ae9de95ad5a608", "Requirements": [ "cli", "fansi", @@ -972,46 +997,28 @@ "lifecycle", "rlang", "utf8", + "utils", "vctrs" - ] - }, - "pkgbuild": { - "Package": "pkgbuild", - "Version": "1.3.1", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "66d2adfed274daf81ccfe77d974c3b9b", - "Requirements": [ - "R6", - "callr", - "cli", - "crayon", - "desc", - "prettyunits", - "rprojroot", - "withr" - ] + ], + "Hash": "15da5a8412f317beeee6175fbc76f4bb" }, "pkgconfig": { "Package": "pkgconfig", "Version": "2.0.3", "Source": "Repository", "Repository": "CRAN", - "Hash": "01f28d4278f15c76cddbea05899c5d6f", - "Requirements": [] + "Requirements": [ + "utils" + ], + "Hash": "01f28d4278f15c76cddbea05899c5d6f" }, "pkgdown": { "Package": "pkgdown", - "Version": "2.0.6.9000", - "Source": "GitHub", - "RemoteType": "github", - "RemoteHost": "api.github.com", - "RemoteRepo": "pkgdown", - "RemoteUsername": "r-lib", - "RemoteRef": "HEAD", - "RemoteSha": "5bb671b1a8bac8e926479868681936f7c9ee41b3", - "Hash": "fde629ba7f458d151a4b0a984b5c49bc", + "Version": "2.0.7", + "Source": "Repository", + "Repository": "CRAN", "Requirements": [ + "R", "bslib", "callr", "cli", @@ -1032,377 +1039,305 @@ "withr", "xml2", "yaml" - ] + ], + "Hash": "16fa15449c930bf3a7761d3c68f8abf9" }, "pkgload": { "Package": "pkgload", - "Version": "1.3.0", + "Version": "1.3.2", "Source": "Repository", "Repository": "CRAN", - "Hash": "4b20f937a363c78a5730265c1925f54a", "Requirements": [ + "R", "cli", "crayon", "desc", "fs", "glue", + "methods", "rlang", "rprojroot", + "utils", "withr" - ] - }, - "plyr": { - "Package": "plyr", - "Version": "1.8.7", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "9c17c6ee41639ebdc1d7266546d3b627", - "Requirements": [ - "Rcpp" - ] + ], + "Hash": "6b0c222c5071efe0f3baf3dae9aa40e2" }, "png": { "Package": "png", - "Version": "0.1-7", + "Version": "0.1-8", "Source": "Repository", "Repository": "CRAN", - "Hash": "03b7076c234cb3331288919983326c55", - "Requirements": [] + "Requirements": [ + "R" + ], + "Hash": "bd54ba8a0a5faded999a7aab6e46b374" }, "praise": { "Package": "praise", "Version": "1.0.0", "Source": "Repository", "Repository": "CRAN", - "Hash": "a555924add98c99d2f411e37e7d25e9f", - "Requirements": [] - }, - "prettymapr": { - "Package": "prettymapr", - "Version": "0.2.4", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "2c6a2aec97aec439daecd68d67653868", - "Requirements": [ - "digest", - "httr", - "plyr", - "rjson" - ] + "Hash": "a555924add98c99d2f411e37e7d25e9f" }, "prettyunits": { "Package": "prettyunits", "Version": "1.1.1", "Source": "Repository", "Repository": "CRAN", - "Hash": "95ef9167b75dde9d2ccc3c7528393e7e", - "Requirements": [] + "Hash": "95ef9167b75dde9d2ccc3c7528393e7e" }, "processx": { "Package": "processx", - "Version": "3.8.0", + "Version": "3.8.1", "Source": "Repository", "Repository": "CRAN", - "Hash": "a33ee2d9bf07564efb888ad98410da84", "Requirements": [ + "R", "R6", - "ps" - ] + "ps", + "utils" + ], + "Hash": "d75b4059d781336efba24021915902b4" }, "progress": { "Package": "progress", "Version": "1.2.2", "Source": "Repository", "Repository": "CRAN", - "Hash": "14dc9f7a3c91ebb14ec5bb9208a07061", "Requirements": [ "R6", "crayon", "hms", "prettyunits" - ] + ], + "Hash": "14dc9f7a3c91ebb14ec5bb9208a07061" }, "progressr": { "Package": "progressr", - "Version": "0.11.0", + "Version": "0.14.0", "Source": "Repository", - "Repository": "CRAN", - "Hash": "2d004de7f34cd30956e95265f56a8bb6", + "Repository": "RSPM", "Requirements": [ - "digest" - ] + "R", + "digest", + "utils" + ], + "Hash": "ac50c4ffa8f6a46580dd4d7813add3c4" }, "proxy": { "Package": "proxy", "Version": "0.4-27", "Source": "Repository", - "Repository": "CRAN", - "Hash": "e0ef355c12942cf7a6b91a6cfaea8b3e", - "Requirements": [] + "Repository": "RSPM", + "Requirements": [ + "R", + "stats", + "utils" + ], + "Hash": "e0ef355c12942cf7a6b91a6cfaea8b3e" }, "ps": { "Package": "ps", - "Version": "1.7.2", + "Version": "1.7.5", "Source": "Repository", "Repository": "CRAN", - "Hash": "68dd03d98a5efd1eb3012436de45ba83", - "Requirements": [] + "Requirements": [ + "R", + "utils" + ], + "Hash": "709d852d33178db54b17c722e5b1e594" }, "purrr": { "Package": "purrr", - "Version": "0.3.5", + "Version": "1.0.1", "Source": "Repository", "Repository": "CRAN", - "Hash": "54842a2443c76267152eface28d9e90a", "Requirements": [ + "R", + "cli", + "lifecycle", "magrittr", - "rlang" - ] + "rlang", + "vctrs" + ], + "Hash": "d71c815267c640f17ddbf7f16144b4bb" }, "ragg": { "Package": "ragg", - "Version": "1.2.4", + "Version": "1.2.5", "Source": "Repository", "Repository": "CRAN", - "Hash": "0db17bd5a1d4abfec76487b6f5dd957b", "Requirements": [ "systemfonts", "textshaping" - ] + ], + "Hash": "690bc058ea2b1b8a407d3cfe3dce3ef9" }, "rappdirs": { "Package": "rappdirs", "Version": "0.3.3", "Source": "Repository", "Repository": "CRAN", - "Hash": "5e3c5dc0b071b21fa128676560dbe94d", - "Requirements": [] + "Requirements": [ + "R" + ], + "Hash": "5e3c5dc0b071b21fa128676560dbe94d" }, "raster": { "Package": "raster", - "Version": "3.6-3", + "Version": "3.6-23", "Source": "Repository", - "Repository": "CRAN", - "Hash": "d550f9d6dbb4dce7cbd146b09d663343", + "Repository": "RSPM", "Requirements": [ + "R", "Rcpp", + "methods", "sp", "terra" - ] - }, - "rcmdcheck": { - "Package": "rcmdcheck", - "Version": "1.4.0", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "8f25ebe2ec38b1f2aef3b0d2ef76f6c4", - "Requirements": [ - "R6", - "callr", - "cli", - "curl", - "desc", - "digest", - "pkgbuild", - "prettyunits", - "rprojroot", - "sessioninfo", - "withr", - "xopen" - ] + ], + "Hash": "337d6d70f7d6bf78df236a5a53f09db0" }, "rematch2": { "Package": "rematch2", "Version": "2.1.2", "Source": "Repository", "Repository": "CRAN", - "Hash": "76c9e04c712a05848ae7a23d2f170a40", "Requirements": [ "tibble" - ] - }, - "remotes": { - "Package": "remotes", - "Version": "2.4.2", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "227045be9aee47e6dda9bb38ac870d67", - "Requirements": [] + ], + "Hash": "76c9e04c712a05848ae7a23d2f170a40" }, "renv": { "Package": "renv", - "Version": "0.16.0", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "c9e8442ab69bc21c9697ecf856c1e6c7", - "Requirements": [] - }, - "rex": { - "Package": "rex", - "Version": "1.2.1", + "Version": "1.0.2", "Source": "Repository", "Repository": "CRAN", - "Hash": "ae34cd56890607370665bee5bd17812f", "Requirements": [ - "lazyeval" - ] - }, - "rgdal": { - "Package": "rgdal", - "Version": "1.5-32", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "7e8f18c3a55c90a44ea05e0620c05a7e", - "Requirements": [ - "sp" - ] - }, - "rjson": { - "Package": "rjson", - "Version": "0.2.21", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "f9da75e6444e95a1baf8ca24909d63b9", - "Requirements": [] + "utils" + ], + "Hash": "4b22ac016fe54028b88d0c68badbd061" }, "rlang": { "Package": "rlang", - "Version": "1.0.6", + "Version": "1.1.0", "Source": "Repository", "Repository": "CRAN", - "Hash": "4ed1f8336c8d52c3e750adcdc57228a7", - "Requirements": [] + "Requirements": [ + "R", + "utils" + ], + "Hash": "dc079ccd156cde8647360f473c1fa718" }, "rmarkdown": { "Package": "rmarkdown", - "Version": "2.17", + "Version": "2.21", "Source": "Repository", "Repository": "CRAN", - "Hash": "e97c8be593e010f93520e8215c0f9189", "Requirements": [ + "R", "bslib", "evaluate", + "fontawesome", "htmltools", "jquerylib", "jsonlite", "knitr", + "methods", "stringr", "tinytex", + "tools", + "utils", "xfun", "yaml" - ] + ], + "Hash": "493df4ae51e2e984952ea4d5c75786a3" }, "rnaturalearth": { "Package": "rnaturalearth", - "Version": "0.1.0", + "Version": "0.3.4", "Source": "Repository", - "Repository": "CRAN", - "Hash": "946d1b43d7aba91dfa804f02302a5125", + "Repository": "RSPM", "Requirements": [ + "R", + "httr", + "jsonlite", "sf", - "sp" - ] + "sp", + "terra", + "utils" + ], + "Hash": "cc93c2e9d777b357103cdc322fb9a649" }, "rnaturalearthdata": { "Package": "rnaturalearthdata", "Version": "0.1.0", "Source": "Repository", - "Repository": "CRAN", - "Hash": "0d34b89b43e900467e60f5449226f3e3", + "Repository": "RSPM", "Requirements": [ + "R", "sp" - ] + ], + "Hash": "0d34b89b43e900467e60f5449226f3e3" }, "rosm": { "Package": "rosm", - "Version": "0.2.6", + "Version": "0.3.0", "Source": "Repository", - "Repository": "CRAN", - "Hash": "28c1e811f574441769c93e5367726c8e", + "Repository": "RSPM", "Requirements": [ - "abind", "curl", + "glue", "jpeg", - "plyr", "png", - "prettymapr", - "rgdal", - "rjson", - "sp" - ] - }, - "roxygen2": { - "Package": "roxygen2", - "Version": "7.2.1", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "da1f278262e563c835345872f2fef537", - "Requirements": [ - "R6", - "brew", - "cli", - "commonmark", - "cpp11", - "desc", - "digest", - "knitr", - "pkgload", - "purrr", + "progress", "rlang", - "stringi", - "stringr", - "withr", - "xml2" - ] + "wk" + ], + "Hash": "fcd529f183c4163a91430d7b7bbaece5" }, "rprojroot": { "Package": "rprojroot", "Version": "2.0.3", "Source": "Repository", "Repository": "CRAN", - "Hash": "1de7ab598047a87bba48434ba35d497d", - "Requirements": [] - }, - "rstudioapi": { - "Package": "rstudioapi", - "Version": "0.14", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "690bd2acc42a9166ce34845884459320", - "Requirements": [] + "Requirements": [ + "R" + ], + "Hash": "1de7ab598047a87bba48434ba35d497d" }, "s2": { "Package": "s2", - "Version": "1.1.0", + "Version": "1.1.4", "Source": "Repository", - "Repository": "CRAN", - "Hash": "73748e27d17db3c1c400e8114fcf9824", + "Repository": "RSPM", "Requirements": [ + "R", "Rcpp", "wk" - ] + ], + "Hash": "f1cbe03bb3346f8e817518ffa20f9f5a" }, "sass": { "Package": "sass", - "Version": "0.4.2", + "Version": "0.4.5", "Source": "Repository", "Repository": "CRAN", - "Hash": "1b191143d7d3444d504277843f3a95fe", "Requirements": [ "R6", "fs", "htmltools", "rappdirs", "rlang" - ] + ], + "Hash": "2bb4371a4c80115518261866eab6ab11" }, "scales": { "Package": "scales", "Version": "1.2.1", "Source": "Repository", "Repository": "CRAN", - "Hash": "906cb23d2f1c5680b8ce439b44c6fa63", "Requirements": [ + "R", "R6", "RColorBrewer", "farver", @@ -1411,127 +1346,130 @@ "munsell", "rlang", "viridisLite" - ] - }, - "sessioninfo": { - "Package": "sessioninfo", - "Version": "1.2.2", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "3f9796a8d0a0e8c6eb49a4b029359d1f", - "Requirements": [ - "cli" - ] + ], + "Hash": "906cb23d2f1c5680b8ce439b44c6fa63" }, "sf": { "Package": "sf", - "Version": "1.0-8", + "Version": "1.0-14", "Source": "Repository", - "Repository": "CRAN", - "Hash": "153da622b27630793858f24436bc0871", + "Repository": "RSPM", "Requirements": [ "DBI", + "R", "Rcpp", "classInt", + "grDevices", + "graphics", + "grid", "magrittr", + "methods", "s2", - "units" - ] + "stats", + "tools", + "units", + "utils" + ], + "Hash": "e2111252a76984ca50bf8d6314348681" }, "slippymath": { "Package": "slippymath", "Version": "0.3.1", "Source": "Repository", - "Repository": "CRAN", - "Hash": "abdaf883004a4791545655d79ca3aae0", + "Repository": "RSPM", "Requirements": [ + "R", "png", "purrr", - "raster" - ] + "raster", + "stats" + ], + "Hash": "abdaf883004a4791545655d79ca3aae0" }, "sp": { "Package": "sp", - "Version": "1.5-0", + "Version": "2.0-0", "Source": "Repository", - "Repository": "CRAN", - "Hash": "2a118bdd2db0a301711e0a9e3e3206d5", + "Repository": "RSPM", "Requirements": [ - "lattice" - ] + "R", + "grDevices", + "graphics", + "grid", + "lattice", + "methods", + "stats", + "utils" + ], + "Hash": "2551981e6f85d59c81652bf654d6c3ca" }, "stringi": { "Package": "stringi", - "Version": "1.7.8", + "Version": "1.7.12", "Source": "Repository", "Repository": "CRAN", - "Hash": "a68b980681bcbc84c7a67003fa796bfb", - "Requirements": [] + "Requirements": [ + "R", + "stats", + "tools", + "utils" + ], + "Hash": "ca8bd84263c77310739d2cf64d84d7c9" }, "stringr": { "Package": "stringr", - "Version": "1.4.1", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "a66ad12140cd34d4f9dfcc19e84fc2a5", - "Requirements": [ - "glue", - "magrittr", - "stringi" - ] - }, - "styler": { - "Package": "styler", - "Version": "1.8.0", + "Version": "1.5.0", "Source": "Repository", "Repository": "CRAN", - "Hash": "c855e70eb69b3dd8883660b7110e0c44", "Requirements": [ - "R.cache", + "R", "cli", + "glue", + "lifecycle", "magrittr", - "purrr", "rlang", - "rprojroot", - "vctrs", - "withr" - ] + "stringi", + "vctrs" + ], + "Hash": "671a4d384ae9d32fc47a14e98bfa3dc8" }, "sys": { "Package": "sys", "Version": "3.4.1", "Source": "Repository", "Repository": "CRAN", - "Hash": "34c16f1ef796057bfa06d3f4ff818a5d", - "Requirements": [] + "Hash": "34c16f1ef796057bfa06d3f4ff818a5d" }, "systemfonts": { "Package": "systemfonts", "Version": "1.0.4", "Source": "Repository", "Repository": "CRAN", - "Hash": "90b28393209827327de889f49935140a", "Requirements": [ + "R", "cpp11" - ] + ], + "Hash": "90b28393209827327de889f49935140a" }, "terra": { "Package": "terra", - "Version": "1.6-17", + "Version": "1.7-46", "Source": "Repository", - "Repository": "CRAN", - "Hash": "3e264754dde87261bc7ccdb30d29d3b4", + "Repository": "RSPM", "Requirements": [ - "Rcpp" - ] + "R", + "Rcpp", + "methods" + ], + "Hash": "d15182a8a20ffc5880e721bfa1bf4ce9" }, "testthat": { "Package": "testthat", - "Version": "3.1.5", + "Version": "3.1.7", "Source": "Repository", "Repository": "CRAN", - "Hash": "6e3c4843f1ed0d3d90f35498671a001c", "Requirements": [ + "R", "R6", "brio", "callr", @@ -1543,276 +1481,265 @@ "jsonlite", "lifecycle", "magrittr", + "methods", "pkgload", "praise", "processx", "ps", "rlang", + "utils", "waldo", "withr" - ] + ], + "Hash": "7eb5fd202a61d2fb78af5869b6c08998" }, "textshaping": { "Package": "textshaping", "Version": "0.3.6", "Source": "Repository", "Repository": "CRAN", - "Hash": "1ab6223d3670fac7143202cb6a2d43d5", "Requirements": [ + "R", "cpp11", "systemfonts" - ] + ], + "Hash": "1ab6223d3670fac7143202cb6a2d43d5" }, "tibble": { "Package": "tibble", - "Version": "3.1.8", + "Version": "3.2.1", "Source": "Repository", "Repository": "CRAN", - "Hash": "56b6934ef0f8c68225949a8672fe1a8f", "Requirements": [ + "R", "fansi", "lifecycle", "magrittr", + "methods", "pillar", "pkgconfig", "rlang", + "utils", "vctrs" - ] + ], + "Hash": "a84e2cc86d07289b3b6f5069df7a004c" }, "tidyr": { "Package": "tidyr", - "Version": "1.2.1", + "Version": "1.3.0", "Source": "Repository", "Repository": "CRAN", - "Hash": "cdb403db0de33ccd1b6f53b83736efa8", "Requirements": [ + "R", + "cli", "cpp11", "dplyr", - "ellipsis", "glue", "lifecycle", "magrittr", "purrr", "rlang", + "stringr", "tibble", "tidyselect", + "utils", "vctrs" - ] + ], + "Hash": "e47debdc7ce599b070c8e78e8ac0cfcf" }, "tidyselect": { "Package": "tidyselect", "Version": "1.2.0", "Source": "Repository", "Repository": "CRAN", - "Hash": "79540e5fcd9e0435af547d885f184fd5", "Requirements": [ + "R", "cli", "glue", "lifecycle", "rlang", "vctrs", "withr" - ] + ], + "Hash": "79540e5fcd9e0435af547d885f184fd5" + }, + "timechange": { + "Package": "timechange", + "Version": "0.2.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cpp11" + ], + "Hash": "8548b44f79a35ba1791308b61e6012d7" }, "tinytex": { "Package": "tinytex", - "Version": "0.42", + "Version": "0.45", "Source": "Repository", "Repository": "CRAN", - "Hash": "7629c6c1540835d5248e6e7df265fa74", "Requirements": [ "xfun" - ] + ], + "Hash": "e4e357f28c2edff493936b6cb30c3d65" }, "triebeard": { "Package": "triebeard", - "Version": "0.3.0", + "Version": "0.4.1", "Source": "Repository", - "Repository": "CRAN", - "Hash": "847a9d113b78baca4a9a8639609ea228", + "Repository": "RSPM", "Requirements": [ "Rcpp" - ] + ], + "Hash": "642507a148b0dd9b5620177e0a044413" }, "units": { "Package": "units", - "Version": "0.8-0", + "Version": "0.8-3", "Source": "Repository", - "Repository": "CRAN", - "Hash": "6c374b265ba437f8d384ec7a313edd96", + "Repository": "RSPM", "Requirements": [ + "R", "Rcpp" - ] + ], + "Hash": "880ebc99e4d8f7e5f3caeb2f12632583" }, "urltools": { "Package": "urltools", "Version": "1.7.3", "Source": "Repository", - "Repository": "CRAN", - "Hash": "e86a704261a105f4703f653e05defa3e", + "Repository": "RSPM", "Requirements": [ + "R", "Rcpp", + "methods", "triebeard" - ] - }, - "usethis": { - "Package": "usethis", - "Version": "2.1.6", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "a67a22c201832b12c036cc059f1d137d", - "Requirements": [ - "cli", - "clipr", - "crayon", - "curl", - "desc", - "fs", - "gert", - "gh", - "glue", - "jsonlite", - "lifecycle", - "purrr", - "rappdirs", - "rlang", - "rprojroot", - "rstudioapi", - "whisker", - "withr", - "yaml" - ] + ], + "Hash": "e86a704261a105f4703f653e05defa3e" }, "utf8": { "Package": "utf8", - "Version": "1.2.2", + "Version": "1.2.3", "Source": "Repository", "Repository": "CRAN", - "Hash": "c9c462b759a5cc844ae25b5942654d13", - "Requirements": [] + "Requirements": [ + "R" + ], + "Hash": "1fe17157424bb09c48a8b3b550c753bc" }, "vctrs": { "Package": "vctrs", - "Version": "0.5.0", + "Version": "0.6.2", "Source": "Repository", "Repository": "CRAN", - "Hash": "001fd6a5ebfff8316baf9fb2b5516dc9", "Requirements": [ + "R", "cli", "glue", "lifecycle", "rlang" - ] + ], + "Hash": "a745bda7aff4734c17294bb41d4e4607" }, "viridis": { "Package": "viridis", - "Version": "0.6.2", + "Version": "0.6.4", "Source": "Repository", - "Repository": "CRAN", - "Hash": "ee96aee95a7a563e5496f8991e9fde4b", + "Repository": "RSPM", "Requirements": [ + "R", "ggplot2", "gridExtra", "viridisLite" - ] + ], + "Hash": "80cd127bc8c9d3d9f0904ead9a9102f1" }, "viridisLite": { "Package": "viridisLite", "Version": "0.4.1", "Source": "Repository", "Repository": "CRAN", - "Hash": "62f4b5da3e08d8e5bcba6cac15603f70", - "Requirements": [] + "Requirements": [ + "R" + ], + "Hash": "62f4b5da3e08d8e5bcba6cac15603f70" }, "waldo": { "Package": "waldo", "Version": "0.4.0", "Source": "Repository", "Repository": "CRAN", - "Hash": "035fba89d0c86e2113120f93301b98ad", "Requirements": [ "cli", "diffobj", "fansi", "glue", + "methods", "rematch2", "rlang", "tibble" - ] + ], + "Hash": "035fba89d0c86e2113120f93301b98ad" }, "whisker": { "Package": "whisker", - "Version": "0.4", + "Version": "0.4.1", "Source": "Repository", "Repository": "CRAN", - "Hash": "ca970b96d894e90397ed20637a0c1bbe", - "Requirements": [] + "Hash": "c6abfa47a46d281a7d5159d0a8891e88" }, "withr": { "Package": "withr", "Version": "2.5.0", "Source": "Repository", "Repository": "CRAN", - "Hash": "c0e49a9760983e81e55cdd9be92e7182", - "Requirements": [] + "Requirements": [ + "R", + "grDevices", + "graphics", + "stats" + ], + "Hash": "c0e49a9760983e81e55cdd9be92e7182" }, "wk": { "Package": "wk", - "Version": "0.7.0", + "Version": "0.8.0", "Source": "Repository", - "Repository": "CRAN", - "Hash": "4801d436beeacde30e87f3485a042326", - "Requirements": [] + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "aaf7e20556e3125a09d53453814ad339" }, "xfun": { "Package": "xfun", - "Version": "0.34", + "Version": "0.39", "Source": "Repository", "Repository": "CRAN", - "Hash": "9eba2411b0b1f879797141bd24df7407", - "Requirements": [] + "Requirements": [ + "stats", + "tools" + ], + "Hash": "8f56e9acb54fb525e66464d57ab58bcb" }, "xml2": { "Package": "xml2", - "Version": "1.3.3", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "40682ed6a969ea5abfd351eb67833adc", - "Requirements": [] - }, - "xmlparsedata": { - "Package": "xmlparsedata", - "Version": "1.0.5", + "Version": "1.3.4", "Source": "Repository", "Repository": "CRAN", - "Hash": "45e4bf3c46476896e821fc0a408fb4fc", - "Requirements": [] - }, - "xopen": { - "Package": "xopen", - "Version": "1.0.0", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "6c85f015dee9cc7710ddd20f86881f58", "Requirements": [ - "processx" - ] + "R", + "methods" + ], + "Hash": "7dc765ac9b909487326a7d471fdd3821" }, "yaml": { "Package": "yaml", - "Version": "2.3.6", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "9b570515751dcbae610f29885e025b41", - "Requirements": [] - }, - "zip": { - "Package": "zip", - "Version": "2.2.2", + "Version": "2.3.7", "Source": "Repository", "Repository": "CRAN", - "Hash": "c42bfcec3fa6a0cce17ce1f8bc684f88", - "Requirements": [] + "Hash": "0d0056cc5383fbc240ccd0cb584bf436" } } } diff --git a/renv/activate.R b/renv/activate.R index 019b5a6..2969c73 100644 --- a/renv/activate.R +++ b/renv/activate.R @@ -2,11 +2,27 @@ local({ # the requested version of renv - version <- "0.16.0" + version <- "1.0.2" + attr(version, "sha") <- NULL # the project directory project <- getwd() + # use start-up diagnostics if enabled + diagnostics <- Sys.getenv("RENV_STARTUP_DIAGNOSTICS", unset = "FALSE") + if (diagnostics) { + start <- Sys.time() + profile <- tempfile("renv-startup-", fileext = ".Rprof") + utils::Rprof(profile) + on.exit({ + utils::Rprof(NULL) + elapsed <- signif(difftime(Sys.time(), start, units = "auto"), digits = 2L) + writeLines(sprintf("- renv took %s to run the autoloader.", format(elapsed))) + writeLines(sprintf("- Profile: %s", profile)) + print(utils::summaryRprof(profile)) + }, add = TRUE) + } + # figure out whether the autoloader is enabled enabled <- local({ @@ -60,21 +76,75 @@ local({ # load bootstrap tools `%||%` <- function(x, y) { - if (is.environment(x) || length(x)) x else y + if (is.null(x)) y else x + } + + catf <- function(fmt, ..., appendLF = TRUE) { + + quiet <- getOption("renv.bootstrap.quiet", default = FALSE) + if (quiet) + return(invisible()) + + msg <- sprintf(fmt, ...) + cat(msg, file = stdout(), sep = if (appendLF) "\n" else "") + + invisible(msg) + + } + + header <- function(label, + ..., + prefix = "#", + suffix = "-", + n = min(getOption("width"), 78)) + { + label <- sprintf(label, ...) + n <- max(n - nchar(label) - nchar(prefix) - 2L, 8L) + if (n <= 0) + return(paste(prefix, label)) + + tail <- paste(rep.int(suffix, n), collapse = "") + paste0(prefix, " ", label, " ", tail) + + } + + startswith <- function(string, prefix) { + substring(string, 1, nchar(prefix)) == prefix } bootstrap <- function(version, library) { + friendly <- renv_bootstrap_version_friendly(version) + section <- header(sprintf("Bootstrapping renv %s", friendly)) + catf(section) + # attempt to download renv - tarball <- tryCatch(renv_bootstrap_download(version), error = identity) - if (inherits(tarball, "error")) - stop("failed to download renv ", version) + catf("- Downloading renv ... ", appendLF = FALSE) + withCallingHandlers( + tarball <- renv_bootstrap_download(version), + error = function(err) { + catf("FAILED") + stop("failed to download:\n", conditionMessage(err)) + } + ) + catf("OK") + on.exit(unlink(tarball), add = TRUE) # now attempt to install - status <- tryCatch(renv_bootstrap_install(version, tarball, library), error = identity) - if (inherits(status, "error")) - stop("failed to install renv ", version) + catf("- Installing renv ... ", appendLF = FALSE) + withCallingHandlers( + status <- renv_bootstrap_install(version, tarball, library), + error = function(err) { + catf("FAILED") + stop("failed to install:\n", conditionMessage(err)) + } + ) + catf("OK") + + # add empty line to break up bootstrapping from normal output + catf("") + return(invisible()) } renv_bootstrap_tests_running <- function() { @@ -83,28 +153,32 @@ local({ renv_bootstrap_repos <- function() { + # get CRAN repository + cran <- getOption("renv.repos.cran", "https://cloud.r-project.org") + # check for repos override repos <- Sys.getenv("RENV_CONFIG_REPOS_OVERRIDE", unset = NA) - if (!is.na(repos)) + if (!is.na(repos)) { + + # check for RSPM; if set, use a fallback repository for renv + rspm <- Sys.getenv("RSPM", unset = NA) + if (identical(rspm, repos)) + repos <- c(RSPM = rspm, CRAN = cran) + return(repos) + } + # check for lockfile repositories repos <- tryCatch(renv_bootstrap_repos_lockfile(), error = identity) if (!inherits(repos, "error") && length(repos)) return(repos) - # if we're testing, re-use the test repositories - if (renv_bootstrap_tests_running()) - return(getOption("renv.tests.repos")) - # retrieve current repos repos <- getOption("repos") # ensure @CRAN@ entries are resolved - repos[repos == "@CRAN@"] <- getOption( - "renv.repos.cran", - "https://cloud.r-project.org" - ) + repos[repos == "@CRAN@"] <- cran # add in renv.bootstrap.repos if set default <- c(FALLBACK = "https://cloud.r-project.org") @@ -143,33 +217,34 @@ local({ renv_bootstrap_download <- function(version) { - # if the renv version number has 4 components, assume it must - # be retrieved via github - nv <- numeric_version(version) - components <- unclass(nv)[[1]] - - # if this appears to be a development version of 'renv', we'll - # try to restore from github - dev <- length(components) == 4L - - # begin collecting different methods for finding renv - methods <- c( - renv_bootstrap_download_tarball, - if (dev) - renv_bootstrap_download_github - else c( - renv_bootstrap_download_cran_latest, - renv_bootstrap_download_cran_archive + sha <- attr(version, "sha", exact = TRUE) + + methods <- if (!is.null(sha)) { + + # attempting to bootstrap a development version of renv + c( + function() renv_bootstrap_download_tarball(sha), + function() renv_bootstrap_download_github(sha) ) - ) + + } else { + + # attempting to bootstrap a release version of renv + c( + function() renv_bootstrap_download_tarball(version), + function() renv_bootstrap_download_cran_latest(version), + function() renv_bootstrap_download_cran_archive(version) + ) + + } for (method in methods) { - path <- tryCatch(method(version), error = identity) + path <- tryCatch(method(), error = identity) if (is.character(path) && file.exists(path)) return(path) } - stop("failed to download renv ", version) + stop("All download methods failed") } @@ -233,8 +308,6 @@ local({ type <- spec$type repos <- spec$repos - message("* Downloading renv ", version, " ... ", appendLF = FALSE) - baseurl <- utils::contrib.url(repos = repos, type = type) ext <- if (identical(type, "source")) ".tar.gz" @@ -251,13 +324,10 @@ local({ condition = identity ) - if (inherits(status, "condition")) { - message("FAILED") + if (inherits(status, "condition")) return(FALSE) - } # report success and return - message("OK (downloaded ", type, ")") destfile } @@ -314,8 +384,6 @@ local({ urls <- file.path(repos, "src/contrib/Archive/renv", name) destfile <- file.path(tempdir(), name) - message("* Downloading renv ", version, " ... ", appendLF = FALSE) - for (url in urls) { status <- tryCatch( @@ -323,14 +391,11 @@ local({ condition = identity ) - if (identical(status, 0L)) { - message("OK") + if (identical(status, 0L)) return(destfile) - } } - message("FAILED") return(FALSE) } @@ -344,8 +409,7 @@ local({ return() # allow directories - info <- file.info(tarball, extra_cols = FALSE) - if (identical(info$isdir, TRUE)) { + if (dir.exists(tarball)) { name <- sprintf("renv_%s.tar.gz", version) tarball <- file.path(tarball, name) } @@ -354,7 +418,7 @@ local({ if (!file.exists(tarball)) { # let the user know we weren't able to honour their request - fmt <- "* RENV_BOOTSTRAP_TARBALL is set (%s) but does not exist." + fmt <- "- RENV_BOOTSTRAP_TARBALL is set (%s) but does not exist." msg <- sprintf(fmt, tarball) warning(msg) @@ -363,10 +427,7 @@ local({ } - fmt <- "* Bootstrapping with tarball at path '%s'." - msg <- sprintf(fmt, tarball) - message(msg) - + catf("- Using local tarball '%s'.", tarball) tarball } @@ -393,8 +454,6 @@ local({ on.exit(do.call(base::options, saved), add = TRUE) } - message("* Downloading renv ", version, " from GitHub ... ", appendLF = FALSE) - url <- file.path("https://api.github.com/repos/rstudio/renv/tarball", version) name <- sprintf("renv_%s.tar.gz", version) destfile <- file.path(tempdir(), name) @@ -404,26 +463,105 @@ local({ condition = identity ) - if (!identical(status, 0L)) { - message("FAILED") + if (!identical(status, 0L)) return(FALSE) - } - message("OK") + renv_bootstrap_download_augment(destfile) + return(destfile) } + # Add Sha to DESCRIPTION. This is stop gap until #890, after which we + # can use renv::install() to fully capture metadata. + renv_bootstrap_download_augment <- function(destfile) { + sha <- renv_bootstrap_git_extract_sha1_tar(destfile) + if (is.null(sha)) { + return() + } + + # Untar + tempdir <- tempfile("renv-github-") + on.exit(unlink(tempdir, recursive = TRUE), add = TRUE) + untar(destfile, exdir = tempdir) + pkgdir <- dir(tempdir, full.names = TRUE)[[1]] + + # Modify description + desc_path <- file.path(pkgdir, "DESCRIPTION") + desc_lines <- readLines(desc_path) + remotes_fields <- c( + "RemoteType: github", + "RemoteHost: api.github.com", + "RemoteRepo: renv", + "RemoteUsername: rstudio", + "RemotePkgRef: rstudio/renv", + paste("RemoteRef: ", sha), + paste("RemoteSha: ", sha) + ) + writeLines(c(desc_lines[desc_lines != ""], remotes_fields), con = desc_path) + + # Re-tar + local({ + old <- setwd(tempdir) + on.exit(setwd(old), add = TRUE) + + tar(destfile, compression = "gzip") + }) + invisible() + } + + # Extract the commit hash from a git archive. Git archives include the SHA1 + # hash as the comment field of the tarball pax extended header + # (see https://www.kernel.org/pub/software/scm/git/docs/git-archive.html) + # For GitHub archives this should be the first header after the default one + # (512 byte) header. + renv_bootstrap_git_extract_sha1_tar <- function(bundle) { + + # open the bundle for reading + # We use gzcon for everything because (from ?gzcon) + # > Reading from a connection which does not supply a 'gzip' magic + # > header is equivalent to reading from the original connection + conn <- gzcon(file(bundle, open = "rb", raw = TRUE)) + on.exit(close(conn)) + + # The default pax header is 512 bytes long and the first pax extended header + # with the comment should be 51 bytes long + # `52 comment=` (11 chars) + 40 byte SHA1 hash + len <- 0x200 + 0x33 + res <- rawToChar(readBin(conn, "raw", n = len)[0x201:len]) + + if (grepl("^52 comment=", res)) { + sub("52 comment=", "", res) + } else { + NULL + } + } + renv_bootstrap_install <- function(version, tarball, library) { # attempt to install it into project library - message("* Installing renv ", version, " ... ", appendLF = FALSE) dir.create(library, showWarnings = FALSE, recursive = TRUE) + output <- renv_bootstrap_install_impl(library, tarball) + + # check for successful install + status <- attr(output, "status") + if (is.null(status) || identical(status, 0L)) + return(status) + + # an error occurred; report it + header <- "installation of renv failed" + lines <- paste(rep.int("=", nchar(header)), collapse = "") + text <- paste(c(header, lines, output), collapse = "\n") + stop(text) + + } + + renv_bootstrap_install_impl <- function(library, tarball) { # invoke using system2 so we can capture and report output bin <- R.home("bin") exe <- if (Sys.info()[["sysname"]] == "Windows") "R.exe" else "R" - r <- file.path(bin, exe) + R <- file.path(bin, exe) args <- c( "--vanilla", "CMD", "INSTALL", "--no-multiarch", @@ -431,19 +569,7 @@ local({ shQuote(path.expand(tarball)) ) - output <- system2(r, args, stdout = TRUE, stderr = TRUE) - message("Done!") - - # check for successful install - status <- attr(output, "status") - if (is.numeric(status) && !identical(status, 0L)) { - header <- "Error installing renv:" - lines <- paste(rep.int("=", nchar(header)), collapse = "") - text <- c(header, lines, output) - writeLines(text, con = stderr()) - } - - status + system2(R, args, stdout = TRUE, stderr = TRUE) } @@ -653,34 +779,62 @@ local({ } - renv_bootstrap_validate_version <- function(version) { + renv_bootstrap_validate_version <- function(version, description = NULL) { - loadedversion <- utils::packageDescription("renv", fields = "Version") - if (version == loadedversion) - return(TRUE) + # resolve description file + # + # avoid passing lib.loc to `packageDescription()` below, since R will + # use the loaded version of the package by default anyhow. note that + # this function should only be called after 'renv' is loaded + # https://github.com/rstudio/renv/issues/1625 + description <- description %||% packageDescription("renv") - # assume four-component versions are from GitHub; three-component - # versions are from CRAN - components <- strsplit(loadedversion, "[.-]")[[1]] - remote <- if (length(components) == 4L) - paste("rstudio/renv", loadedversion, sep = "@") + # check whether requested version 'version' matches loaded version of renv + sha <- attr(version, "sha", exact = TRUE) + valid <- if (!is.null(sha)) + renv_bootstrap_validate_version_dev(sha, description) else - paste("renv", loadedversion, sep = "@") + renv_bootstrap_validate_version_release(version, description) + + if (valid) + return(TRUE) + + # the loaded version of renv doesn't match the requested version; + # give the user instructions on how to proceed + remote <- if (!is.null(description[["RemoteSha"]])) { + paste("rstudio/renv", description[["RemoteSha"]], sep = "@") + } else { + paste("renv", description[["Version"]], sep = "@") + } + + # display both loaded version + sha if available + friendly <- renv_bootstrap_version_friendly( + version = description[["Version"]], + sha = description[["RemoteSha"]] + ) fmt <- paste( "renv %1$s was loaded from project library, but this project is configured to use renv %2$s.", - "Use `renv::record(\"%3$s\")` to record renv %1$s in the lockfile.", - "Use `renv::restore(packages = \"renv\")` to install renv %2$s into the project library.", + "- Use `renv::record(\"%3$s\")` to record renv %1$s in the lockfile.", + "- Use `renv::restore(packages = \"renv\")` to install renv %2$s into the project library.", sep = "\n" ) - - msg <- sprintf(fmt, loadedversion, version, remote) - warning(msg, call. = FALSE) + catf(fmt, friendly, renv_bootstrap_version_friendly(version), remote) FALSE } + renv_bootstrap_validate_version_dev <- function(version, description) { + expected <- description[["RemoteSha"]] + is.character(expected) && startswith(expected, version) + } + + renv_bootstrap_validate_version_release <- function(version, description) { + expected <- description[["Version"]] + is.character(expected) && identical(expected, version) + } + renv_bootstrap_hash_text <- function(text) { hashfile <- tempfile("renv-hash-") @@ -700,6 +854,12 @@ local({ # warn if the version of renv loaded does not match renv_bootstrap_validate_version(version) + # execute renv load hooks, if any + hooks <- getHook("renv::autoload") + for (hook in hooks) + if (is.function(hook)) + tryCatch(hook(), error = warnify) + # load the project renv::load(project) @@ -839,14 +999,79 @@ local({ } + renv_bootstrap_version_friendly <- function(version, shafmt = NULL, sha = NULL) { + sha <- sha %||% attr(version, "sha", exact = TRUE) + parts <- c(version, sprintf(shafmt %||% " [sha: %s]", substring(sha, 1L, 7L))) + paste(parts, collapse = "") + } + + renv_bootstrap_exec <- function(project, libpath, version) { + if (!renv_bootstrap_load(project, libpath, version)) + renv_bootstrap_run(version, libpath) + } + + renv_bootstrap_run <- function(version, libpath) { + + # perform bootstrap + bootstrap(version, libpath) + + # exit early if we're just testing bootstrap + if (!is.na(Sys.getenv("RENV_BOOTSTRAP_INSTALL_ONLY", unset = NA))) + return(TRUE) + + # try again to load + if (requireNamespace("renv", lib.loc = libpath, quietly = TRUE)) { + return(renv::load(project = getwd())) + } + + # failed to download or load renv; warn the user + msg <- c( + "Failed to find an renv installation: the project will not be loaded.", + "Use `renv::activate()` to re-initialize the project." + ) + + warning(paste(msg, collapse = "\n"), call. = FALSE) + + } + + + renv_bootstrap_in_rstudio <- function() { + commandArgs()[[1]] == "RStudio" + } + + # Used to work around buglet in RStudio if hook uses readline + renv_bootstrap_flush_console <- function() { + tryCatch({ + tools <- as.environment("tools:rstudio") + tools$.rs.api.sendToConsole("", echo = FALSE, focus = FALSE) + }, error = function(cnd) {}) + } renv_json_read <- function(file = NULL, text = NULL) { + jlerr <- NULL + # if jsonlite is loaded, use that instead - if ("jsonlite" %in% loadedNamespaces()) - renv_json_read_jsonlite(file, text) + if ("jsonlite" %in% loadedNamespaces()) { + + json <- catch(renv_json_read_jsonlite(file, text)) + if (!inherits(json, "error")) + return(json) + + jlerr <- json + + } + + # otherwise, fall back to the default JSON reader + json <- catch(renv_json_read_default(file, text)) + if (!inherits(json, "error")) + return(json) + + # report an error + if (!is.null(jlerr)) + stop(jlerr) else - renv_json_read_default(file, text) + stop(json) } @@ -960,35 +1185,17 @@ local({ # construct full libpath libpath <- file.path(root, prefix) - # attempt to load - if (renv_bootstrap_load(project, libpath, version)) - return(TRUE) - - # load failed; inform user we're about to bootstrap - prefix <- paste("# Bootstrapping renv", version) - postfix <- paste(rep.int("-", 77L - nchar(prefix)), collapse = "") - header <- paste(prefix, postfix) - message(header) - - # perform bootstrap - bootstrap(version, libpath) - - # exit early if we're just testing bootstrap - if (!is.na(Sys.getenv("RENV_BOOTSTRAP_INSTALL_ONLY", unset = NA))) - return(TRUE) - - # try again to load - if (requireNamespace("renv", lib.loc = libpath, quietly = TRUE)) { - message("* Successfully installed and loaded renv ", version, ".") - return(renv::load()) + if (renv_bootstrap_in_rstudio()) { + # RStudio only updates console once .Rprofile is finished, so + # instead run code on sessionInit + setHook("rstudio.sessionInit", function(...) { + renv_bootstrap_exec(project, libpath, version) + renv_bootstrap_flush_console() + }) + } else { + renv_bootstrap_exec(project, libpath, version) } - # failed to download or load renv; warn the user - msg <- c( - "Failed to find an renv installation: the project will not be loaded.", - "Use `renv::activate()` to re-initialize the project." - ) - - warning(paste(msg, collapse = "\n"), call. = FALSE) + invisible() }) diff --git a/renv/settings.json b/renv/settings.json new file mode 100644 index 0000000..f836f3f --- /dev/null +++ b/renv/settings.json @@ -0,0 +1,19 @@ +{ + "bioconductor.version": null, + "external.libraries": [], + "ignored.packages": [], + "package.dependency.fields": [ + "Imports", + "Depends", + "LinkingTo" + ], + "ppm.enabled": null, + "ppm.ignored.urls": [], + "r.version": [], + "snapshot.type": "implicit", + "use.cache": true, + "vcs.ignore.cellar": true, + "vcs.ignore.library": true, + "vcs.ignore.local": true, + "vcs.manage.ignores": true +} From 44dbc24867ea4c28898347461c3e8307ab5b770d Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Fri, 8 Sep 2023 15:06:51 +0200 Subject: [PATCH 02/35] :green_heart: add missing libraries to github actions --- .github/workflows/R-CMD-check.yaml | 8 +++++++- .github/workflows/lint.yaml | 8 +++++++- renv.lock | 4 ++-- 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index ba4b762..1307e0f 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -50,7 +50,13 @@ jobs: - uses: r-lib/actions/setup-renv@v2 with: - cache-version: 2 + cache-version: 1 + + - uses: r-lib/actions/setup-r-dependencies@v2 + with: + extra-packages: | + any::rcmdcheck + any::lintr - uses: r-lib/actions/check-r-package@v2 with: diff --git a/.github/workflows/lint.yaml b/.github/workflows/lint.yaml index feddb50..c82e6be 100644 --- a/.github/workflows/lint.yaml +++ b/.github/workflows/lint.yaml @@ -28,7 +28,13 @@ jobs: - uses: r-lib/actions/setup-renv@v2 with: - cache-version: 2 + cache-version: 1 + + - uses: r-lib/actions/setup-r-dependencies@v2 + with: + extra-packages: | + any::rcmdcheck + any::lintr - name: Lint run: lintr::lint_package() diff --git a/renv.lock b/renv.lock index a5a1254..499d196 100644 --- a/renv.lock +++ b/renv.lock @@ -741,7 +741,7 @@ }, "knitr": { "Package": "knitr", - "Version": "1.42", + "Version": "1.43", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -753,7 +753,7 @@ "xfun", "yaml" ], - "Hash": "8329a9bcc82943c8069104d4be3ee22d" + "Hash": "9775eb076713f627c07ce41d8199d8f6" }, "labeling": { "Package": "labeling", From 46066ed6d0aaa13f84463335b9b0055374fe3d30 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Fri, 8 Sep 2023 15:29:30 +0200 Subject: [PATCH 03/35] :construction_worker: update check workflow --- .github/workflows/R-CMD-check.yaml | 19 +++++++++---------- DESCRIPTION | 1 + README.Rmd | 2 +- README.md | 2 +- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index 1307e0f..c64393a 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -1,4 +1,4 @@ -# Workflow derived from https://github.com/r-lib/actions/tree/master/examples +# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples # Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help on: push: @@ -24,12 +24,16 @@ jobs: fail-fast: false matrix: config: - - {os: macOS-latest, r: 'release'} + - {os: macos-latest, r: 'release'} - {os: windows-latest, r: 'release'} - {os: ubuntu-latest, r: 'release'} + env: + GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + R_KEEP_PKG_SOURCE: yes + steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Install dependencies on Linux if: runner.os == 'Linux' @@ -48,15 +52,10 @@ jobs: http-user-agent: ${{ matrix.config.http-user-agent }} use-public-rspm: true - - uses: r-lib/actions/setup-renv@v2 - with: - cache-version: 1 - - uses: r-lib/actions/setup-r-dependencies@v2 with: - extra-packages: | - any::rcmdcheck - any::lintr + extra-packages: any::rcmdcheck + needs: check - uses: r-lib/actions/check-r-package@v2 with: diff --git a/DESCRIPTION b/DESCRIPTION index 15411d0..e926721 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -33,6 +33,7 @@ Suggests: rnaturalearth, rnaturalearthdata Config/testthat/edition: 3 +Config/Needs/check: lintr, rcmdcheck Imports: jsonlite, httr, diff --git a/README.Rmd b/README.Rmd index 242d2c8..4a276f0 100644 --- a/README.Rmd +++ b/README.Rmd @@ -16,7 +16,7 @@ knitr::opts_chunk$set( # smarterapi -[![R-CMD-check](https://github.com/cnr-ibba/r-smarter-api/workflows/R-CMD-check/badge.svg)](https://github.com/cnr-ibba/r-smarter-api/actions) +[![R-CMD-check](https://github.com/cnr-ibba/r-smarter-api/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/cnr-ibba/r-smarter-api/actions/workflows/R-CMD-check.yaml) The goal of `smarterapi` is to collect data from *SMARTER REST API* diff --git a/README.md b/README.md index e95627c..174716d 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ -[![R-CMD-check](https://github.com/cnr-ibba/r-smarter-api/workflows/R-CMD-check/badge.svg)](https://github.com/cnr-ibba/r-smarter-api/actions) +[![R-CMD-check](https://github.com/cnr-ibba/r-smarter-api/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/cnr-ibba/r-smarter-api/actions/workflows/R-CMD-check.yaml) The goal of `smarterapi` is to collect data from *SMARTER REST API* From 5e6f0693dff8bda84731e15b735c157dd04fca17 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Fri, 8 Sep 2023 15:53:48 +0200 Subject: [PATCH 04/35] :wrench: using renv with profiles --- .github/workflows/R-CMD-check.yaml | 5 +- .github/workflows/lint.yaml | 6 - DESCRIPTION | 3 +- renv/profile | 1 + renv/profiles/dev/renv.lock | 1890 ++++++++++++++++++++++++++++ renv/profiles/dev/renv/.gitignore | 7 + 6 files changed, 1902 insertions(+), 10 deletions(-) create mode 100644 renv/profile create mode 100644 renv/profiles/dev/renv.lock create mode 100644 renv/profiles/dev/renv/.gitignore diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index c64393a..bd11544 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -52,10 +52,9 @@ jobs: http-user-agent: ${{ matrix.config.http-user-agent }} use-public-rspm: true - - uses: r-lib/actions/setup-r-dependencies@v2 + - uses: r-lib/actions/setup-renv@v2 with: - extra-packages: any::rcmdcheck - needs: check + cache-version: 1 - uses: r-lib/actions/check-r-package@v2 with: diff --git a/.github/workflows/lint.yaml b/.github/workflows/lint.yaml index c82e6be..374a4b8 100644 --- a/.github/workflows/lint.yaml +++ b/.github/workflows/lint.yaml @@ -30,12 +30,6 @@ jobs: with: cache-version: 1 - - uses: r-lib/actions/setup-r-dependencies@v2 - with: - extra-packages: | - any::rcmdcheck - any::lintr - - name: Lint run: lintr::lint_package() shell: Rscript {0} diff --git a/DESCRIPTION b/DESCRIPTION index e926721..48ce021 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -23,6 +23,7 @@ Suggests: leaflet, knitr, rmarkdown, + yaml, pander, ggplot2, ggspatial, @@ -33,7 +34,7 @@ Suggests: rnaturalearth, rnaturalearthdata Config/testthat/edition: 3 -Config/Needs/check: lintr, rcmdcheck +Config/renv/profiles/dev/dependencies: lintr, rcmdcheck Imports: jsonlite, httr, diff --git a/renv/profile b/renv/profile new file mode 100644 index 0000000..38f8e88 --- /dev/null +++ b/renv/profile @@ -0,0 +1 @@ +dev diff --git a/renv/profiles/dev/renv.lock b/renv/profiles/dev/renv.lock new file mode 100644 index 0000000..d90b3c4 --- /dev/null +++ b/renv/profiles/dev/renv.lock @@ -0,0 +1,1890 @@ +{ + "R": { + "Version": "4.3.1", + "Repositories": [ + { + "Name": "CRAN", + "URL": "https://cloud.r-project.org" + } + ] + }, + "Packages": { + "DBI": { + "Package": "DBI", + "Version": "1.1.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods" + ], + "Hash": "b2866e62bab9378c3cc9476a1954226b" + }, + "KernSmooth": { + "Package": "KernSmooth", + "Version": "2.23-20", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "stats" + ], + "Hash": "8dcfa99b14c296bc9f1fd64d52fd3ce7" + }, + "MASS": { + "Package": "MASS", + "Version": "7.3-58.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics", + "methods", + "stats", + "utils" + ], + "Hash": "9586b552d57f5516fe4d25398c1bacd6" + }, + "Matrix": { + "Package": "Matrix", + "Version": "1.5-3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "graphics", + "grid", + "lattice", + "methods", + "stats", + "utils" + ], + "Hash": "4006dffe49958d2dd591c17e61e60591" + }, + "R6": { + "Package": "R6", + "Version": "2.5.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "470851b6d5d0ac559e9d01bb352b4021" + }, + "RColorBrewer": { + "Package": "RColorBrewer", + "Version": "1.1-3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "45f0398006e83a5b10b72a90663d8d8c" + }, + "Rcpp": { + "Package": "Rcpp", + "Version": "1.0.11", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "methods", + "utils" + ], + "Hash": "ae6cbbe1492f4de79c45fce06f967ce8" + }, + "abind": { + "Package": "abind", + "Version": "1.4-5", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "methods", + "utils" + ], + "Hash": "4f57884290cc75ab22f4af9e9d4ca862" + }, + "askpass": { + "Package": "askpass", + "Version": "1.2.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "sys" + ], + "Hash": "cad6cf7f1d5f6e906700b9d3e718c796" + }, + "backports": { + "Package": "backports", + "Version": "1.4.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "c39fbec8a30d23e721980b8afb31984c" + }, + "base64enc": { + "Package": "base64enc", + "Version": "0.1-3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "543776ae6848fde2f48ff3816d0628bc" + }, + "brio": { + "Package": "brio", + "Version": "1.1.3", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "976cf154dfb043c012d87cddd8bca363" + }, + "bslib": { + "Package": "bslib", + "Version": "0.5.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "base64enc", + "cachem", + "grDevices", + "htmltools", + "jquerylib", + "jsonlite", + "memoise", + "mime", + "rlang", + "sass" + ], + "Hash": "283015ddfbb9d7bf15ea9f0b5698f0d9" + }, + "cachem": { + "Package": "cachem", + "Version": "1.0.8", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "fastmap", + "rlang" + ], + "Hash": "c35768291560ce302c0a6589f92e837d" + }, + "callr": { + "Package": "callr", + "Version": "3.7.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "processx", + "utils" + ], + "Hash": "9b2191ede20fa29828139b9900922e51" + }, + "class": { + "Package": "class", + "Version": "7.3-21", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "MASS", + "R", + "stats", + "utils" + ], + "Hash": "8ae0d4328e2eb3a582dfd5391a3663b7" + }, + "classInt": { + "Package": "classInt", + "Version": "0.4-10", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "KernSmooth", + "R", + "class", + "e1071", + "grDevices", + "graphics", + "stats" + ], + "Hash": "f5a40793b1ae463a7ffb3902a95bf864" + }, + "cli": { + "Package": "cli", + "Version": "3.6.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "utils" + ], + "Hash": "89e6d8219950eac806ae0c489052048a" + }, + "codetools": { + "Package": "codetools", + "Version": "0.2-19", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "c089a619a7fae175d149d89164f8c7d8" + }, + "colorspace": { + "Package": "colorspace", + "Version": "2.1-0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics", + "methods", + "stats" + ], + "Hash": "f20c47fd52fae58b4e377c37bb8c335b" + }, + "cpp11": { + "Package": "cpp11", + "Version": "0.4.6", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "707fae4bbf73697ec8d85f9d7076c061" + }, + "crayon": { + "Package": "crayon", + "Version": "1.5.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "grDevices", + "methods", + "utils" + ], + "Hash": "e8a1e41acf02548751f45c718d55aa6a" + }, + "crosstalk": { + "Package": "crosstalk", + "Version": "1.2.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R6", + "htmltools", + "jsonlite", + "lazyeval" + ], + "Hash": "6aa54f69598c32177e920eb3402e8293" + }, + "curl": { + "Package": "curl", + "Version": "5.0.2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "511bacbfa153a15251166b463b4da4f9" + }, + "cyclocomp": { + "Package": "cyclocomp", + "Version": "1.1.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "callr", + "crayon", + "desc", + "remotes", + "withr" + ], + "Hash": "cdc4a473222b0112d4df0bcfbed12d44" + }, + "desc": { + "Package": "desc", + "Version": "1.4.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "cli", + "rprojroot", + "utils" + ], + "Hash": "6b9602c7ebbe87101a9c8edb6e8b6d21" + }, + "diffobj": { + "Package": "diffobj", + "Version": "0.3.5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "crayon", + "methods", + "stats", + "tools", + "utils" + ], + "Hash": "bcaa8b95f8d7d01a5dedfd959ce88ab8" + }, + "digest": { + "Package": "digest", + "Version": "0.6.33", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "utils" + ], + "Hash": "b18a9cf3c003977b0cc49d5e76ebe48d" + }, + "downlit": { + "Package": "downlit", + "Version": "0.4.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "brio", + "desc", + "digest", + "evaluate", + "fansi", + "memoise", + "rlang", + "vctrs", + "withr", + "yaml" + ], + "Hash": "14fa1f248b60ed67e1f5418391a17b14" + }, + "dplyr": { + "Package": "dplyr", + "Version": "1.1.3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "R6", + "cli", + "generics", + "glue", + "lifecycle", + "magrittr", + "methods", + "pillar", + "rlang", + "tibble", + "tidyselect", + "utils", + "vctrs" + ], + "Hash": "e85ffbebaad5f70e1a2e2ef4302b4949" + }, + "e1071": { + "Package": "e1071", + "Version": "1.7-13", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "class", + "grDevices", + "graphics", + "methods", + "proxy", + "stats", + "utils" + ], + "Hash": "1046cb48d06cb40c2900d8878f03a0fe" + }, + "elevatr": { + "Package": "elevatr", + "Version": "0.4.5", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "curl", + "furrr", + "future", + "httr", + "jsonlite", + "methods", + "progressr", + "purrr", + "raster", + "sf", + "slippymath", + "sp", + "units" + ], + "Hash": "867bc9d9ed45489aa01cb30c51fbaec2" + }, + "ellipsis": { + "Package": "ellipsis", + "Version": "0.3.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "rlang" + ], + "Hash": "bb0eec2fe32e88d9e2836c2f73ea2077" + }, + "evaluate": { + "Package": "evaluate", + "Version": "0.21", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods" + ], + "Hash": "d59f3b464e8da1aef82dc04b588b8dfb" + }, + "fansi": { + "Package": "fansi", + "Version": "1.0.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "utils" + ], + "Hash": "1d9e7ad3c8312a192dea7d3db0274fde" + }, + "farver": { + "Package": "farver", + "Version": "2.1.1", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "8106d78941f34855c440ddb946b8f7a5" + }, + "fastmap": { + "Package": "fastmap", + "Version": "1.1.1", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "f7736a18de97dea803bde0a2daaafb27" + }, + "fontawesome": { + "Package": "fontawesome", + "Version": "0.5.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "htmltools", + "rlang" + ], + "Hash": "c2efdd5f0bcd1ea861c2d4e2a883a67d" + }, + "fs": { + "Package": "fs", + "Version": "1.6.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods" + ], + "Hash": "47b5f30c720c23999b913a1a635cf0bb" + }, + "furrr": { + "Package": "furrr", + "Version": "0.3.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "future", + "globals", + "lifecycle", + "purrr", + "rlang", + "vctrs" + ], + "Hash": "da7a4c32196cb2262a41dd5a25d486ff" + }, + "future": { + "Package": "future", + "Version": "1.33.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "digest", + "globals", + "listenv", + "parallel", + "parallelly", + "utils" + ], + "Hash": "8e92c7bc53e91b9bb1faf9a6ef0e8514" + }, + "generics": { + "Package": "generics", + "Version": "0.1.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods" + ], + "Hash": "15e9634c0fcd294799e9b2e929ed1b86" + }, + "geodata": { + "Package": "geodata", + "Version": "0.5-8", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "terra" + ], + "Hash": "93d238706f3fe7c326a7d0bbc2fecdb8" + }, + "ggplot2": { + "Package": "ggplot2", + "Version": "3.4.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "MASS", + "R", + "cli", + "glue", + "grDevices", + "grid", + "gtable", + "isoband", + "lifecycle", + "mgcv", + "rlang", + "scales", + "stats", + "tibble", + "vctrs", + "withr" + ], + "Hash": "85846544c596e71f8f46483ab165da33" + }, + "ggspatial": { + "Package": "ggspatial", + "Version": "1.1.9", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "abind", + "ggplot2", + "glue", + "grid", + "methods", + "rlang", + "rosm", + "scales", + "sf", + "tibble", + "tidyr" + ], + "Hash": "0a4e5ed181eb823957df790ec11a28fc" + }, + "globals": { + "Package": "globals", + "Version": "0.16.2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "codetools" + ], + "Hash": "baa9585ab4ce47a9f4618e671778cc6f" + }, + "glue": { + "Package": "glue", + "Version": "1.6.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods" + ], + "Hash": "4f2596dfb05dac67b9dc558e5c6fba2e" + }, + "gridExtra": { + "Package": "gridExtra", + "Version": "2.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "grDevices", + "graphics", + "grid", + "gtable", + "utils" + ], + "Hash": "7d7f283939f563670a697165b2cf5560" + }, + "gtable": { + "Package": "gtable", + "Version": "0.3.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "glue", + "grid", + "lifecycle", + "rlang" + ], + "Hash": "b29cf3031f49b04ab9c852c912547eef" + }, + "highr": { + "Package": "highr", + "Version": "0.10", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "xfun" + ], + "Hash": "06230136b2d2b9ba5805e1963fa6e890" + }, + "hms": { + "Package": "hms", + "Version": "1.1.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "lifecycle", + "methods", + "pkgconfig", + "rlang", + "vctrs" + ], + "Hash": "b59377caa7ed00fa41808342002138f9" + }, + "htmltools": { + "Package": "htmltools", + "Version": "0.5.6", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "base64enc", + "digest", + "ellipsis", + "fastmap", + "grDevices", + "rlang", + "utils" + ], + "Hash": "a2326a66919a3311f7fbb1e3bf568283" + }, + "htmlwidgets": { + "Package": "htmlwidgets", + "Version": "1.6.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "grDevices", + "htmltools", + "jsonlite", + "knitr", + "rmarkdown", + "yaml" + ], + "Hash": "a865aa85bcb2697f47505bfd70422471" + }, + "httr": { + "Package": "httr", + "Version": "1.4.7", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "R6", + "curl", + "jsonlite", + "mime", + "openssl" + ], + "Hash": "ac107251d9d9fd72f0ca8049988f1d7f" + }, + "isoband": { + "Package": "isoband", + "Version": "0.2.7", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "grid", + "utils" + ], + "Hash": "0080607b4a1a7b28979aecef976d8bc2" + }, + "jpeg": { + "Package": "jpeg", + "Version": "0.1-10", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "031a0b683d001a7519202f0628fc0358" + }, + "jquerylib": { + "Package": "jquerylib", + "Version": "0.1.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "htmltools" + ], + "Hash": "5aab57a3bd297eee1c1d862735972182" + }, + "jsonlite": { + "Package": "jsonlite", + "Version": "1.8.7", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "methods" + ], + "Hash": "266a20443ca13c65688b2116d5220f76" + }, + "knitr": { + "Package": "knitr", + "Version": "1.43", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "evaluate", + "highr", + "methods", + "tools", + "xfun", + "yaml" + ], + "Hash": "9775eb076713f627c07ce41d8199d8f6" + }, + "labeling": { + "Package": "labeling", + "Version": "0.4.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "graphics", + "stats" + ], + "Hash": "b64ec208ac5bc1852b285f665d6368b3" + }, + "lattice": { + "Package": "lattice", + "Version": "0.20-45", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics", + "grid", + "stats", + "utils" + ], + "Hash": "b64cdbb2b340437c4ee047a1f4c4377b" + }, + "lazyeval": { + "Package": "lazyeval", + "Version": "0.2.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "d908914ae53b04d4c0c0fd72ecc35370" + }, + "leaflet": { + "Package": "leaflet", + "Version": "2.2.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "RColorBrewer", + "crosstalk", + "htmltools", + "htmlwidgets", + "jquerylib", + "leaflet.providers", + "magrittr", + "methods", + "png", + "raster", + "scales", + "sp", + "stats", + "viridis", + "xfun" + ], + "Hash": "f73dcc38ff38127bc11ea776786996de" + }, + "leaflet.providers": { + "Package": "leaflet.providers", + "Version": "1.13.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "235cd5abed82d9e6e79eb05eee248983" + }, + "lifecycle": { + "Package": "lifecycle", + "Version": "1.0.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "glue", + "rlang" + ], + "Hash": "001cecbeac1cff9301bdc3775ee46a86" + }, + "lintr": { + "Package": "lintr", + "Version": "3.1.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "backports", + "codetools", + "cyclocomp", + "digest", + "glue", + "knitr", + "rex", + "stats", + "utils", + "xml2", + "xmlparsedata" + ], + "Hash": "2b4b803af6017e93b67ddaf0eacba918" + }, + "listenv": { + "Package": "listenv", + "Version": "0.9.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "4fbd3679ec8ee169ba28d4b1ea7d0e8f" + }, + "logger": { + "Package": "logger", + "Version": "0.2.2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "utils" + ], + "Hash": "c269b06beb2bbadb0d058c0e6fa4ec3d" + }, + "lubridate": { + "Package": "lubridate", + "Version": "1.9.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "generics", + "methods", + "timechange" + ], + "Hash": "e25f18436e3efd42c7c590a1c4c15390" + }, + "magrittr": { + "Package": "magrittr", + "Version": "2.0.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "7ce2733a9826b3aeb1775d56fd305472" + }, + "memoise": { + "Package": "memoise", + "Version": "2.0.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "cachem", + "rlang" + ], + "Hash": "e2817ccf4a065c5d9d7f2cfbe7c1d78c" + }, + "mgcv": { + "Package": "mgcv", + "Version": "1.8-42", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "Matrix", + "R", + "graphics", + "methods", + "nlme", + "splines", + "stats", + "utils" + ], + "Hash": "3460beba7ccc8946249ba35327ba902a" + }, + "mime": { + "Package": "mime", + "Version": "0.12", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "tools" + ], + "Hash": "18e9c28c1d3ca1560ce30658b22ce104" + }, + "munsell": { + "Package": "munsell", + "Version": "0.5.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "colorspace", + "methods" + ], + "Hash": "6dfe8bf774944bd5595785e3229d8771" + }, + "nlme": { + "Package": "nlme", + "Version": "3.1-162", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "graphics", + "lattice", + "stats", + "utils" + ], + "Hash": "0984ce8da8da9ead8643c5cbbb60f83e" + }, + "openssl": { + "Package": "openssl", + "Version": "2.1.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "askpass" + ], + "Hash": "273a6bb4a9844c296a459d2176673270" + }, + "pander": { + "Package": "pander", + "Version": "0.6.5", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "Rcpp", + "digest", + "grDevices", + "graphics", + "methods", + "stats", + "tools", + "utils" + ], + "Hash": "737924139a1e4fc96356ff377c754c35" + }, + "parallelly": { + "Package": "parallelly", + "Version": "1.36.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "parallel", + "tools", + "utils" + ], + "Hash": "bca377e1c87ec89ebed77bba00635b2e" + }, + "pillar": { + "Package": "pillar", + "Version": "1.9.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "cli", + "fansi", + "glue", + "lifecycle", + "rlang", + "utf8", + "utils", + "vctrs" + ], + "Hash": "15da5a8412f317beeee6175fbc76f4bb" + }, + "pkgbuild": { + "Package": "pkgbuild", + "Version": "1.4.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "callr", + "cli", + "crayon", + "desc", + "prettyunits", + "processx", + "rprojroot" + ], + "Hash": "beb25b32a957a22a5c301a9e441190b3" + }, + "pkgconfig": { + "Package": "pkgconfig", + "Version": "2.0.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "utils" + ], + "Hash": "01f28d4278f15c76cddbea05899c5d6f" + }, + "pkgdown": { + "Package": "pkgdown", + "Version": "2.0.7", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "bslib", + "callr", + "cli", + "desc", + "digest", + "downlit", + "fs", + "httr", + "jsonlite", + "magrittr", + "memoise", + "purrr", + "ragg", + "rlang", + "rmarkdown", + "tibble", + "whisker", + "withr", + "xml2", + "yaml" + ], + "Hash": "16fa15449c930bf3a7761d3c68f8abf9" + }, + "pkgload": { + "Package": "pkgload", + "Version": "1.3.2.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "crayon", + "desc", + "fs", + "glue", + "methods", + "rlang", + "rprojroot", + "utils", + "withr" + ], + "Hash": "a7f498a1b2a4a6816148e498509f6e1d" + }, + "png": { + "Package": "png", + "Version": "0.1-8", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "bd54ba8a0a5faded999a7aab6e46b374" + }, + "praise": { + "Package": "praise", + "Version": "1.0.0", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "a555924add98c99d2f411e37e7d25e9f" + }, + "prettyunits": { + "Package": "prettyunits", + "Version": "1.1.1", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "95ef9167b75dde9d2ccc3c7528393e7e" + }, + "processx": { + "Package": "processx", + "Version": "3.8.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "ps", + "utils" + ], + "Hash": "3efbd8ac1be0296a46c55387aeace0f3" + }, + "progress": { + "Package": "progress", + "Version": "1.2.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R6", + "crayon", + "hms", + "prettyunits" + ], + "Hash": "14dc9f7a3c91ebb14ec5bb9208a07061" + }, + "progressr": { + "Package": "progressr", + "Version": "0.14.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "digest", + "utils" + ], + "Hash": "ac50c4ffa8f6a46580dd4d7813add3c4" + }, + "proxy": { + "Package": "proxy", + "Version": "0.4-27", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "stats", + "utils" + ], + "Hash": "e0ef355c12942cf7a6b91a6cfaea8b3e" + }, + "ps": { + "Package": "ps", + "Version": "1.7.5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "utils" + ], + "Hash": "709d852d33178db54b17c722e5b1e594" + }, + "purrr": { + "Package": "purrr", + "Version": "1.0.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "lifecycle", + "magrittr", + "rlang", + "vctrs" + ], + "Hash": "1cba04a4e9414bdefc9dcaa99649a8dc" + }, + "ragg": { + "Package": "ragg", + "Version": "1.2.5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "systemfonts", + "textshaping" + ], + "Hash": "690bc058ea2b1b8a407d3cfe3dce3ef9" + }, + "rappdirs": { + "Package": "rappdirs", + "Version": "0.3.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "5e3c5dc0b071b21fa128676560dbe94d" + }, + "raster": { + "Package": "raster", + "Version": "3.6-23", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "Rcpp", + "methods", + "sp", + "terra" + ], + "Hash": "337d6d70f7d6bf78df236a5a53f09db0" + }, + "rcmdcheck": { + "Package": "rcmdcheck", + "Version": "1.4.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R6", + "callr", + "cli", + "curl", + "desc", + "digest", + "pkgbuild", + "prettyunits", + "rprojroot", + "sessioninfo", + "utils", + "withr", + "xopen" + ], + "Hash": "8f25ebe2ec38b1f2aef3b0d2ef76f6c4" + }, + "rematch2": { + "Package": "rematch2", + "Version": "2.1.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "tibble" + ], + "Hash": "76c9e04c712a05848ae7a23d2f170a40" + }, + "remotes": { + "Package": "remotes", + "Version": "2.4.2.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods", + "stats", + "tools", + "utils" + ], + "Hash": "63d15047eb239f95160112bcadc4fcb9" + }, + "renv": { + "Package": "renv", + "Version": "1.0.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "utils" + ], + "Hash": "4b22ac016fe54028b88d0c68badbd061" + }, + "rex": { + "Package": "rex", + "Version": "1.2.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "lazyeval" + ], + "Hash": "ae34cd56890607370665bee5bd17812f" + }, + "rlang": { + "Package": "rlang", + "Version": "1.1.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "utils" + ], + "Hash": "a85c767b55f0bf9b7ad16c6d7baee5bb" + }, + "rmarkdown": { + "Package": "rmarkdown", + "Version": "2.24", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "bslib", + "evaluate", + "fontawesome", + "htmltools", + "jquerylib", + "jsonlite", + "knitr", + "methods", + "stringr", + "tinytex", + "tools", + "utils", + "xfun", + "yaml" + ], + "Hash": "3854c37590717c08c32ec8542a2e0a35" + }, + "rnaturalearth": { + "Package": "rnaturalearth", + "Version": "0.3.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "httr", + "jsonlite", + "sf", + "sp", + "terra", + "utils" + ], + "Hash": "cc93c2e9d777b357103cdc322fb9a649" + }, + "rnaturalearthdata": { + "Package": "rnaturalearthdata", + "Version": "0.1.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "sp" + ], + "Hash": "0d34b89b43e900467e60f5449226f3e3" + }, + "rosm": { + "Package": "rosm", + "Version": "0.3.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "curl", + "glue", + "jpeg", + "png", + "progress", + "rlang", + "wk" + ], + "Hash": "fcd529f183c4163a91430d7b7bbaece5" + }, + "rprojroot": { + "Package": "rprojroot", + "Version": "2.0.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "1de7ab598047a87bba48434ba35d497d" + }, + "s2": { + "Package": "s2", + "Version": "1.1.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "Rcpp", + "wk" + ], + "Hash": "f1cbe03bb3346f8e817518ffa20f9f5a" + }, + "sass": { + "Package": "sass", + "Version": "0.4.7", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R6", + "fs", + "htmltools", + "rappdirs", + "rlang" + ], + "Hash": "6bd4d33b50ff927191ec9acbf52fd056" + }, + "scales": { + "Package": "scales", + "Version": "1.2.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "RColorBrewer", + "farver", + "labeling", + "lifecycle", + "munsell", + "rlang", + "viridisLite" + ], + "Hash": "906cb23d2f1c5680b8ce439b44c6fa63" + }, + "sessioninfo": { + "Package": "sessioninfo", + "Version": "1.2.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "tools", + "utils" + ], + "Hash": "3f9796a8d0a0e8c6eb49a4b029359d1f" + }, + "sf": { + "Package": "sf", + "Version": "1.0-14", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "DBI", + "R", + "Rcpp", + "classInt", + "grDevices", + "graphics", + "grid", + "magrittr", + "methods", + "s2", + "stats", + "tools", + "units", + "utils" + ], + "Hash": "e2111252a76984ca50bf8d6314348681" + }, + "slippymath": { + "Package": "slippymath", + "Version": "0.3.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "png", + "purrr", + "raster", + "stats" + ], + "Hash": "abdaf883004a4791545655d79ca3aae0" + }, + "sp": { + "Package": "sp", + "Version": "2.0-0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "grDevices", + "graphics", + "grid", + "lattice", + "methods", + "stats", + "utils" + ], + "Hash": "2551981e6f85d59c81652bf654d6c3ca" + }, + "stringi": { + "Package": "stringi", + "Version": "1.7.12", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "stats", + "tools", + "utils" + ], + "Hash": "ca8bd84263c77310739d2cf64d84d7c9" + }, + "stringr": { + "Package": "stringr", + "Version": "1.5.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "glue", + "lifecycle", + "magrittr", + "rlang", + "stringi", + "vctrs" + ], + "Hash": "671a4d384ae9d32fc47a14e98bfa3dc8" + }, + "sys": { + "Package": "sys", + "Version": "3.4.2", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "3a1be13d68d47a8cd0bfd74739ca1555" + }, + "systemfonts": { + "Package": "systemfonts", + "Version": "1.0.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cpp11" + ], + "Hash": "90b28393209827327de889f49935140a" + }, + "terra": { + "Package": "terra", + "Version": "1.7-46", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "Rcpp", + "methods" + ], + "Hash": "d15182a8a20ffc5880e721bfa1bf4ce9" + }, + "testthat": { + "Package": "testthat", + "Version": "3.1.10", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "R6", + "brio", + "callr", + "cli", + "desc", + "digest", + "ellipsis", + "evaluate", + "jsonlite", + "lifecycle", + "magrittr", + "methods", + "pkgload", + "praise", + "processx", + "ps", + "rlang", + "utils", + "waldo", + "withr" + ], + "Hash": "6f403dc49295610a3a67ea1a9ca64346" + }, + "textshaping": { + "Package": "textshaping", + "Version": "0.3.6", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cpp11", + "systemfonts" + ], + "Hash": "1ab6223d3670fac7143202cb6a2d43d5" + }, + "tibble": { + "Package": "tibble", + "Version": "3.2.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "fansi", + "lifecycle", + "magrittr", + "methods", + "pillar", + "pkgconfig", + "rlang", + "utils", + "vctrs" + ], + "Hash": "a84e2cc86d07289b3b6f5069df7a004c" + }, + "tidyr": { + "Package": "tidyr", + "Version": "1.3.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "cpp11", + "dplyr", + "glue", + "lifecycle", + "magrittr", + "purrr", + "rlang", + "stringr", + "tibble", + "tidyselect", + "utils", + "vctrs" + ], + "Hash": "e47debdc7ce599b070c8e78e8ac0cfcf" + }, + "tidyselect": { + "Package": "tidyselect", + "Version": "1.2.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "glue", + "lifecycle", + "rlang", + "vctrs", + "withr" + ], + "Hash": "79540e5fcd9e0435af547d885f184fd5" + }, + "timechange": { + "Package": "timechange", + "Version": "0.2.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cpp11" + ], + "Hash": "8548b44f79a35ba1791308b61e6012d7" + }, + "tinytex": { + "Package": "tinytex", + "Version": "0.46", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "xfun" + ], + "Hash": "0c41a73214d982f539c56a7773c7afa5" + }, + "triebeard": { + "Package": "triebeard", + "Version": "0.4.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "Rcpp" + ], + "Hash": "642507a148b0dd9b5620177e0a044413" + }, + "units": { + "Package": "units", + "Version": "0.8-3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "Rcpp" + ], + "Hash": "880ebc99e4d8f7e5f3caeb2f12632583" + }, + "urltools": { + "Package": "urltools", + "Version": "1.7.3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "Rcpp", + "methods", + "triebeard" + ], + "Hash": "e86a704261a105f4703f653e05defa3e" + }, + "utf8": { + "Package": "utf8", + "Version": "1.2.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "1fe17157424bb09c48a8b3b550c753bc" + }, + "vctrs": { + "Package": "vctrs", + "Version": "0.6.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "glue", + "lifecycle", + "rlang" + ], + "Hash": "d0ef2856b83dc33ea6e255caf6229ee2" + }, + "viridis": { + "Package": "viridis", + "Version": "0.6.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "ggplot2", + "gridExtra", + "viridisLite" + ], + "Hash": "80cd127bc8c9d3d9f0904ead9a9102f1" + }, + "viridisLite": { + "Package": "viridisLite", + "Version": "0.4.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "c826c7c4241b6fc89ff55aaea3fa7491" + }, + "waldo": { + "Package": "waldo", + "Version": "0.5.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "cli", + "diffobj", + "fansi", + "glue", + "methods", + "rematch2", + "rlang", + "tibble" + ], + "Hash": "2c993415154cdb94649d99ae138ff5e5" + }, + "whisker": { + "Package": "whisker", + "Version": "0.4.1", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "c6abfa47a46d281a7d5159d0a8891e88" + }, + "withr": { + "Package": "withr", + "Version": "2.5.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics", + "stats" + ], + "Hash": "c0e49a9760983e81e55cdd9be92e7182" + }, + "wk": { + "Package": "wk", + "Version": "0.8.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "aaf7e20556e3125a09d53453814ad339" + }, + "xfun": { + "Package": "xfun", + "Version": "0.40", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "stats", + "tools" + ], + "Hash": "be07d23211245fc7d4209f54c4e4ffc8" + }, + "xml2": { + "Package": "xml2", + "Version": "1.3.5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods" + ], + "Hash": "6c40e5cfcc6aefd88110666e18c31f40" + }, + "xmlparsedata": { + "Package": "xmlparsedata", + "Version": "1.0.5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "45e4bf3c46476896e821fc0a408fb4fc" + }, + "xopen": { + "Package": "xopen", + "Version": "1.0.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "processx" + ], + "Hash": "6c85f015dee9cc7710ddd20f86881f58" + }, + "yaml": { + "Package": "yaml", + "Version": "2.3.7", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "0d0056cc5383fbc240ccd0cb584bf436" + } + } +} diff --git a/renv/profiles/dev/renv/.gitignore b/renv/profiles/dev/renv/.gitignore new file mode 100644 index 0000000..0ec0cbb --- /dev/null +++ b/renv/profiles/dev/renv/.gitignore @@ -0,0 +1,7 @@ +library/ +local/ +cellar/ +lock/ +python/ +sandbox/ +staging/ From 23351239b88a316b5f9a9ce28e294df129c86043 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Fri, 8 Sep 2023 15:59:00 +0200 Subject: [PATCH 05/35] :green_heart: force renv profile --- .github/workflows/R-CMD-check.yaml | 1 + .github/workflows/lint.yaml | 1 + 2 files changed, 2 insertions(+) diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index bd11544..a864543 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -55,6 +55,7 @@ jobs: - uses: r-lib/actions/setup-renv@v2 with: cache-version: 1 + profile: '"dev"' - uses: r-lib/actions/check-r-package@v2 with: diff --git a/.github/workflows/lint.yaml b/.github/workflows/lint.yaml index 374a4b8..f092027 100644 --- a/.github/workflows/lint.yaml +++ b/.github/workflows/lint.yaml @@ -29,6 +29,7 @@ jobs: - uses: r-lib/actions/setup-renv@v2 with: cache-version: 1 + profile: '"dev"' - name: Lint run: lintr::lint_package() From 286b723eae450e1a690dfb1d814c27e4b6f4ab0f Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Thu, 9 May 2024 17:22:42 +0200 Subject: [PATCH 06/35] :arrow_up: update dependencies --- DESCRIPTION | 2 +- renv.lock | 492 +++++++++++++------------- renv/activate.R | 105 +++--- renv/profiles/dev/renv.lock | 508 +++++++++++++-------------- renv/profiles/dev/renv/settings.json | 19 + 5 files changed, 561 insertions(+), 565 deletions(-) create mode 100644 renv/profiles/dev/renv/settings.json diff --git a/DESCRIPTION b/DESCRIPTION index 48ce021..213b52d 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -11,7 +11,7 @@ Description: smarterapi is an interface which interacts with SMARTER REST API License: GPL (>= 3) Encoding: UTF-8 Roxygen: list(markdown = TRUE) -RoxygenNote: 7.2.3 +RoxygenNote: 7.3.1 Suggests: lintr, styler, diff --git a/renv.lock b/renv.lock index 499d196..78ec8fd 100644 --- a/renv.lock +++ b/renv.lock @@ -1,6 +1,6 @@ { "R": { - "Version": "4.3.1", + "Version": "4.4.0", "Repositories": [ { "Name": "CRAN", @@ -11,14 +11,14 @@ "Packages": { "DBI": { "Package": "DBI", - "Version": "1.1.3", + "Version": "1.2.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "b2866e62bab9378c3cc9476a1954226b" + "Hash": "164809cd72e1d5160b4cb3aa57f510fe" }, "KernSmooth": { "Package": "KernSmooth", @@ -33,7 +33,7 @@ }, "MASS": { "Package": "MASS", - "Version": "7.3-60", + "Version": "7.3-60.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -44,11 +44,11 @@ "stats", "utils" ], - "Hash": "a56a6365b3fa73293ea8d084be0d9bb0" + "Hash": "2f342c46163b0b54d7b64d1f798e2c78" }, "Matrix": { "Package": "Matrix", - "Version": "1.6-1", + "Version": "1.7-0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -61,7 +61,7 @@ "stats", "utils" ], - "Hash": "cb6855ac711958ca734b75e631b2035d" + "Hash": "1920b2f11133b12350024297d8a4ff4a" }, "R6": { "Package": "R6", @@ -85,14 +85,14 @@ }, "Rcpp": { "Package": "Rcpp", - "Version": "1.0.10", + "Version": "1.0.12", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "methods", "utils" ], - "Hash": "e749cae40fa9ef469b6050959517453c" + "Hash": "5ea2700d21e038ace58269ecdbeb9ec0" }, "abind": { "Package": "abind", @@ -108,13 +108,13 @@ }, "askpass": { "Package": "askpass", - "Version": "1.1", + "Version": "1.2.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "sys" ], - "Hash": "e8a22846fff485f0be3770c2da758713" + "Hash": "cad6cf7f1d5f6e906700b9d3e718c796" }, "base64enc": { "Package": "base64enc", @@ -128,45 +128,50 @@ }, "brio": { "Package": "brio", - "Version": "1.1.3", + "Version": "1.1.5", "Source": "Repository", "Repository": "CRAN", - "Hash": "976cf154dfb043c012d87cddd8bca363" + "Requirements": [ + "R" + ], + "Hash": "c1ee497a6d999947c2c224ae46799b1a" }, "bslib": { "Package": "bslib", - "Version": "0.4.2", + "Version": "0.7.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "base64enc", "cachem", + "fastmap", "grDevices", "htmltools", "jquerylib", "jsonlite", + "lifecycle", "memoise", "mime", "rlang", "sass" ], - "Hash": "a7fbf03946ad741129dc81098722fca1" + "Hash": "8644cc53f43828f19133548195d7e59e" }, "cachem": { "Package": "cachem", - "Version": "1.0.7", + "Version": "1.0.8", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "fastmap", "rlang" ], - "Hash": "cda74447c42f529de601fe4d4050daef" + "Hash": "c35768291560ce302c0a6589f92e837d" }, "callr": { "Package": "callr", - "Version": "3.7.3", + "Version": "3.7.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -175,7 +180,7 @@ "processx", "utils" ], - "Hash": "9b2191ede20fa29828139b9900922e51" + "Hash": "d7e13f49c19103ece9e58ad2d83a7354" }, "class": { "Package": "class", @@ -208,24 +213,24 @@ }, "cli": { "Package": "cli", - "Version": "3.6.1", + "Version": "3.6.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "89e6d8219950eac806ae0c489052048a" + "Hash": "1216ac65ac55ec0058a6f75d7ca0fd52" }, "codetools": { "Package": "codetools", - "Version": "0.2-19", + "Version": "0.2-20", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "c089a619a7fae175d149d89164f8c7d8" + "Hash": "61e097f35917d342622f21cdc79c256e" }, "colorspace": { "Package": "colorspace", @@ -243,10 +248,13 @@ }, "cpp11": { "Package": "cpp11", - "Version": "0.4.3", + "Version": "0.4.7", "Source": "Repository", "Repository": "CRAN", - "Hash": "ed588261931ee3be2c700d22e94a29ab" + "Requirements": [ + "R" + ], + "Hash": "5a295d7d963cc5035284dcdbaf334f4e" }, "crayon": { "Package": "crayon", @@ -262,7 +270,7 @@ }, "crosstalk": { "Package": "crosstalk", - "Version": "1.2.0", + "Version": "1.2.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -271,31 +279,30 @@ "jsonlite", "lazyeval" ], - "Hash": "6aa54f69598c32177e920eb3402e8293" + "Hash": "ab12c7b080a57475248a30f4db6298c0" }, "curl": { "Package": "curl", - "Version": "5.0.0", + "Version": "5.2.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "e4f97056611e8e6b8b852d13b7400cf1" + "Hash": "411ca2c03b1ce5f548345d2fc2685f7a" }, "desc": { "Package": "desc", - "Version": "1.4.2", + "Version": "1.4.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "R6", "cli", - "rprojroot", "utils" ], - "Hash": "6b9602c7ebbe87101a9c8edb6e8b6d21" + "Hash": "99b79fcbd6c4d1ce087f5c5c758b384f" }, "diffobj": { "Package": "diffobj", @@ -314,18 +321,18 @@ }, "digest": { "Package": "digest", - "Version": "0.6.31", + "Version": "0.6.35", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "8b708f296afd9ae69f450f9640be8990" + "Hash": "698ece7ba5a4fa4559e3d537e7ec3d31" }, "downlit": { "Package": "downlit", - "Version": "0.4.2", + "Version": "0.4.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -341,13 +348,13 @@ "withr", "yaml" ], - "Hash": "79bf3f66590752ffbba20f8d2da94c7c" + "Hash": "14fa1f248b60ed67e1f5418391a17b14" }, "dplyr": { "Package": "dplyr", - "Version": "1.1.3", + "Version": "1.1.4", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "R6", @@ -364,13 +371,13 @@ "utils", "vctrs" ], - "Hash": "e85ffbebaad5f70e1a2e2ef4302b4949" + "Hash": "fedd9d00c2944ff00a0e2696ccf048ec" }, "e1071": { "Package": "e1071", - "Version": "1.7-13", + "Version": "1.7-14", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "class", "grDevices", @@ -380,13 +387,13 @@ "stats", "utils" ], - "Hash": "1046cb48d06cb40c2900d8878f03a0fe" + "Hash": "4ef372b716824753719a8a38b258442d" }, "elevatr": { "Package": "elevatr", - "Version": "0.4.5", + "Version": "0.99.0", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "curl", @@ -400,36 +407,25 @@ "raster", "sf", "slippymath", - "sp", + "terra", "units" ], - "Hash": "867bc9d9ed45489aa01cb30c51fbaec2" - }, - "ellipsis": { - "Package": "ellipsis", - "Version": "0.3.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "rlang" - ], - "Hash": "bb0eec2fe32e88d9e2836c2f73ea2077" + "Hash": "f5a648116dfa343b1c76c40d33a8e834" }, "evaluate": { "Package": "evaluate", - "Version": "0.20", + "Version": "0.23", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "4b68aa51edd89a0e044a66e75ae3cc6c" + "Hash": "daf4a1246be12c1fa8c7705a0935c1a0" }, "fansi": { "Package": "fansi", - "Version": "1.0.4", + "Version": "1.0.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -437,7 +433,7 @@ "grDevices", "utils" ], - "Hash": "1d9e7ad3c8312a192dea7d3db0274fde" + "Hash": "962174cf2aeb5b9eea581522286a911f" }, "farver": { "Package": "farver", @@ -455,7 +451,7 @@ }, "fontawesome": { "Package": "fontawesome", - "Version": "0.5.1", + "Version": "0.5.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -463,18 +459,18 @@ "htmltools", "rlang" ], - "Hash": "1e22b8cabbad1eae951a75e9f8b52378" + "Hash": "c2efdd5f0bcd1ea861c2d4e2a883a67d" }, "fs": { "Package": "fs", - "Version": "1.6.2", + "Version": "1.6.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "94af08e0aa9675a16fadbb3aaaa90d2a" + "Hash": "15aeb8c27f5ea5161f9f6a641fafd93a" }, "furrr": { "Package": "furrr", @@ -494,9 +490,9 @@ }, "future": { "Package": "future", - "Version": "1.33.0", + "Version": "1.33.2", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "digest", "globals", @@ -505,7 +501,7 @@ "parallelly", "utils" ], - "Hash": "8e92c7bc53e91b9bb1faf9a6ef0e8514" + "Hash": "fd7b1d69d16d0d114e4fa82db68f184c" }, "generics": { "Package": "generics", @@ -520,18 +516,18 @@ }, "geodata": { "Package": "geodata", - "Version": "0.5-8", + "Version": "0.5-9", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "terra" ], - "Hash": "93d238706f3fe7c326a7d0bbc2fecdb8" + "Hash": "5937c0840e80ae8a7506f1d12e454e5a" }, "ggplot2": { "Package": "ggplot2", - "Version": "3.4.2", + "Version": "3.5.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -552,7 +548,7 @@ "vctrs", "withr" ], - "Hash": "3a147ee02e85a8941aad9909f1b43b7b" + "Hash": "44c6a2f8202d5b7e878ea274b1092426" }, "ggspatial": { "Package": "ggspatial", @@ -577,43 +573,29 @@ }, "globals": { "Package": "globals", - "Version": "0.16.2", + "Version": "0.16.3", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "codetools" ], - "Hash": "baa9585ab4ce47a9f4618e671778cc6f" + "Hash": "2580567908cafd4f187c1e5a91e98b7f" }, "glue": { "Package": "glue", - "Version": "1.6.2", + "Version": "1.7.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "4f2596dfb05dac67b9dc558e5c6fba2e" - }, - "gridExtra": { - "Package": "gridExtra", - "Version": "2.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "grDevices", - "graphics", - "grid", - "gtable", - "utils" - ], - "Hash": "7d7f283939f563670a697165b2cf5560" + "Hash": "e0b3a53876554bd45879e596cdb10a52" }, "gtable": { "Package": "gtable", - "Version": "0.3.3", + "Version": "0.3.5", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -624,7 +606,7 @@ "lifecycle", "rlang" ], - "Hash": "b44addadb528a0d227794121c00572a0" + "Hash": "e18861963cbc65a27736e02b3cd3c4a0" }, "highr": { "Package": "highr", @@ -653,24 +635,23 @@ }, "htmltools": { "Package": "htmltools", - "Version": "0.5.5", + "Version": "0.5.8.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "base64enc", "digest", - "ellipsis", "fastmap", "grDevices", "rlang", "utils" ], - "Hash": "ba0240784ad50a62165058a27459304a" + "Hash": "81d371a9cc60640e74e4ab6ac46dcedc" }, "htmlwidgets": { "Package": "htmlwidgets", - "Version": "1.6.2", + "Version": "1.6.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -681,11 +662,11 @@ "rmarkdown", "yaml" ], - "Hash": "a865aa85bcb2697f47505bfd70422471" + "Hash": "04291cc45198225444a397606810ac37" }, "httr": { "Package": "httr", - "Version": "1.4.5", + "Version": "1.4.7", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -696,7 +677,7 @@ "mime", "openssl" ], - "Hash": "f6844033201269bec3ca0097bc6c97b3" + "Hash": "ac107251d9d9fd72f0ca8049988f1d7f" }, "isoband": { "Package": "isoband", @@ -731,17 +712,17 @@ }, "jsonlite": { "Package": "jsonlite", - "Version": "1.8.4", + "Version": "1.8.8", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "methods" ], - "Hash": "a4269a09a9b865579b2635c77e572374" + "Hash": "e1b9c55281c5adc4dd113652d9e26768" }, "knitr": { "Package": "knitr", - "Version": "1.43", + "Version": "1.46", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -753,22 +734,22 @@ "xfun", "yaml" ], - "Hash": "9775eb076713f627c07ce41d8199d8f6" + "Hash": "6e008ab1d696a5283c79765fa7b56b47" }, "labeling": { "Package": "labeling", - "Version": "0.4.2", + "Version": "0.4.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "graphics", "stats" ], - "Hash": "3d5108641f47470611a32d0bdf357a72" + "Hash": "b64ec208ac5bc1852b285f665d6368b3" }, "lattice": { "Package": "lattice", - "Version": "0.21-8", + "Version": "0.22-6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -779,7 +760,7 @@ "stats", "utils" ], - "Hash": "0b8a6d63c8770f02a8b5635f3c431e6b" + "Hash": "cc5ac1ba4c238c7ca9fa6a87ca11a7e2" }, "lazyeval": { "Package": "lazyeval", @@ -793,9 +774,9 @@ }, "leaflet": { "Package": "leaflet", - "Version": "2.2.0", + "Version": "2.2.2", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "RColorBrewer", @@ -811,24 +792,25 @@ "scales", "sp", "stats", - "viridis", + "viridisLite", "xfun" ], - "Hash": "f73dcc38ff38127bc11ea776786996de" + "Hash": "ca012d4a706e21ce217ba15f22d402b2" }, "leaflet.providers": { "Package": "leaflet.providers", - "Version": "1.13.0", + "Version": "2.0.0", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ - "R" + "R", + "htmltools" ], - "Hash": "235cd5abed82d9e6e79eb05eee248983" + "Hash": "c0b81ad9d5d932772f7a457ac398cf36" }, "lifecycle": { "Package": "lifecycle", - "Version": "1.0.3", + "Version": "1.0.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -837,31 +819,31 @@ "glue", "rlang" ], - "Hash": "001cecbeac1cff9301bdc3775ee46a86" + "Hash": "b8552d117e1b808b09a832f589b79035" }, "listenv": { "Package": "listenv", - "Version": "0.9.0", + "Version": "0.9.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "4fbd3679ec8ee169ba28d4b1ea7d0e8f" + "Hash": "e2fca3e12e4db979dccc6e519b10a7ee" }, "logger": { "Package": "logger", - "Version": "0.2.2", + "Version": "0.3.0", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "utils" ], - "Hash": "c269b06beb2bbadb0d058c0e6fa4ec3d" + "Hash": "c145edf05cc128e6ffcfa5d872c46329" }, "lubridate": { "Package": "lubridate", - "Version": "1.9.2", + "Version": "1.9.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -870,7 +852,7 @@ "methods", "timechange" ], - "Hash": "e25f18436e3efd42c7c590a1c4c15390" + "Hash": "680ad542fbcf801442c83a6ac5a2126c" }, "magrittr": { "Package": "magrittr", @@ -895,7 +877,7 @@ }, "mgcv": { "Package": "mgcv", - "Version": "1.9-0", + "Version": "1.9-1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -908,7 +890,7 @@ "stats", "utils" ], - "Hash": "086028ca0460d0c368028d3bda58f31b" + "Hash": "110ee9d83b496279960e162ac97764ce" }, "mime": { "Package": "mime", @@ -922,18 +904,18 @@ }, "munsell": { "Package": "munsell", - "Version": "0.5.0", + "Version": "0.5.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "colorspace", "methods" ], - "Hash": "6dfe8bf774944bd5595785e3229d8771" + "Hash": "4fd8900853b746af55b81fda99da7695" }, "nlme": { "Package": "nlme", - "Version": "3.1-163", + "Version": "3.1-164", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -943,17 +925,17 @@ "stats", "utils" ], - "Hash": "8d1938040a05566f4f7a14af4feadd6b" + "Hash": "a623a2239e642806158bc4dc3f51565d" }, "openssl": { "Package": "openssl", - "Version": "2.0.6", + "Version": "2.1.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "askpass" ], - "Hash": "0f7cd2962e3044bb940cca4f4b5cecbe" + "Hash": "ea2475b073243d9d338aa8f086ce973e" }, "pander": { "Package": "pander", @@ -975,15 +957,15 @@ }, "parallelly": { "Package": "parallelly", - "Version": "1.36.0", + "Version": "1.37.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "parallel", "tools", "utils" ], - "Hash": "bca377e1c87ec89ebed77bba00635b2e" + "Hash": "5410df8d22bd36e616f2a2343dbb328c" }, "pillar": { "Package": "pillar", @@ -1002,6 +984,21 @@ ], "Hash": "15da5a8412f317beeee6175fbc76f4bb" }, + "pkgbuild": { + "Package": "pkgbuild", + "Version": "1.4.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "callr", + "cli", + "desc", + "processx" + ], + "Hash": "a29e8e134a460a01e0ca67a4763c595b" + }, "pkgconfig": { "Package": "pkgconfig", "Version": "2.0.3", @@ -1014,7 +1011,7 @@ }, "pkgdown": { "Package": "pkgdown", - "Version": "2.0.7", + "Version": "2.0.9", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1040,11 +1037,11 @@ "xml2", "yaml" ], - "Hash": "16fa15449c930bf3a7761d3c68f8abf9" + "Hash": "8bf1151ed1a48328d71b937e651117a6" }, "pkgload": { "Package": "pkgload", - "Version": "1.3.2", + "Version": "1.3.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1055,12 +1052,13 @@ "fs", "glue", "methods", + "pkgbuild", "rlang", "rprojroot", "utils", "withr" ], - "Hash": "6b0c222c5071efe0f3baf3dae9aa40e2" + "Hash": "876c618df5ae610be84356d5d7a5d124" }, "png": { "Package": "png", @@ -1081,14 +1079,17 @@ }, "prettyunits": { "Package": "prettyunits", - "Version": "1.1.1", + "Version": "1.2.0", "Source": "Repository", "Repository": "CRAN", - "Hash": "95ef9167b75dde9d2ccc3c7528393e7e" + "Requirements": [ + "R" + ], + "Hash": "6b01fc98b1e86c4f705ce9dcfd2f57c7" }, "processx": { "Package": "processx", - "Version": "3.8.1", + "Version": "3.8.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1097,20 +1098,21 @@ "ps", "utils" ], - "Hash": "d75b4059d781336efba24021915902b4" + "Hash": "0c90a7d71988856bad2a2a45dd871bb9" }, "progress": { "Package": "progress", - "Version": "1.2.2", + "Version": "1.2.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ + "R", "R6", "crayon", "hms", "prettyunits" ], - "Hash": "14dc9f7a3c91ebb14ec5bb9208a07061" + "Hash": "f4625e061cb2865f111b47ff163a5ca6" }, "progressr": { "Package": "progressr", @@ -1138,18 +1140,18 @@ }, "ps": { "Package": "ps", - "Version": "1.7.5", + "Version": "1.7.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "709d852d33178db54b17c722e5b1e594" + "Hash": "dd2b9319ee0656c8acf45c7f40c59de7" }, "purrr": { "Package": "purrr", - "Version": "1.0.1", + "Version": "1.0.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1160,18 +1162,18 @@ "rlang", "vctrs" ], - "Hash": "d71c815267c640f17ddbf7f16144b4bb" + "Hash": "1cba04a4e9414bdefc9dcaa99649a8dc" }, "ragg": { "Package": "ragg", - "Version": "1.2.5", + "Version": "1.3.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "systemfonts", "textshaping" ], - "Hash": "690bc058ea2b1b8a407d3cfe3dce3ef9" + "Hash": "539dcb63ce611fe389b4c8e2b546cf24" }, "rappdirs": { "Package": "rappdirs", @@ -1185,9 +1187,9 @@ }, "raster": { "Package": "raster", - "Version": "3.6-23", + "Version": "3.6-26", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "Rcpp", @@ -1195,7 +1197,7 @@ "sp", "terra" ], - "Hash": "337d6d70f7d6bf78df236a5a53f09db0" + "Hash": "7d6eda494f34a644420ac1bfd2a8023a" }, "rematch2": { "Package": "rematch2", @@ -1209,28 +1211,28 @@ }, "renv": { "Package": "renv", - "Version": "1.0.2", + "Version": "1.0.7", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "utils" ], - "Hash": "4b22ac016fe54028b88d0c68badbd061" + "Hash": "397b7b2a265bc5a7a06852524dabae20" }, "rlang": { "Package": "rlang", - "Version": "1.1.0", + "Version": "1.1.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "dc079ccd156cde8647360f473c1fa718" + "Hash": "42548638fae05fd9a9b5f3f437fbbbe2" }, "rmarkdown": { "Package": "rmarkdown", - "Version": "2.21", + "Version": "2.26", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1243,41 +1245,38 @@ "jsonlite", "knitr", "methods", - "stringr", "tinytex", "tools", "utils", "xfun", "yaml" ], - "Hash": "493df4ae51e2e984952ea4d5c75786a3" + "Hash": "9b148e7f95d33aac01f31282d49e4f44" }, "rnaturalearth": { "Package": "rnaturalearth", - "Version": "0.3.4", + "Version": "1.0.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "httr", "jsonlite", "sf", - "sp", "terra", "utils" ], - "Hash": "cc93c2e9d777b357103cdc322fb9a649" + "Hash": "741166cab0fe76d8a5670d3ee459a2a4" }, "rnaturalearthdata": { "Package": "rnaturalearthdata", - "Version": "0.1.0", + "Version": "1.0.0", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ - "R", - "sp" + "R" ], - "Hash": "0d34b89b43e900467e60f5449226f3e3" + "Hash": "650339de24d9574c0079a4a13baa623d" }, "rosm": { "Package": "rosm", @@ -1297,29 +1296,29 @@ }, "rprojroot": { "Package": "rprojroot", - "Version": "2.0.3", + "Version": "2.0.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "1de7ab598047a87bba48434ba35d497d" + "Hash": "4c8415e0ec1e29f3f4f6fc108bef0144" }, "s2": { "Package": "s2", - "Version": "1.1.4", + "Version": "1.1.6", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "Rcpp", "wk" ], - "Hash": "f1cbe03bb3346f8e817518ffa20f9f5a" + "Hash": "32f7b1a15bb01ae809022960abad5363" }, "sass": { "Package": "sass", - "Version": "0.4.5", + "Version": "0.4.9", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1329,31 +1328,33 @@ "rappdirs", "rlang" ], - "Hash": "2bb4371a4c80115518261866eab6ab11" + "Hash": "d53dbfddf695303ea4ad66f86e99b95d" }, "scales": { "Package": "scales", - "Version": "1.2.1", + "Version": "1.3.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "R6", "RColorBrewer", + "cli", "farver", + "glue", "labeling", "lifecycle", "munsell", "rlang", "viridisLite" ], - "Hash": "906cb23d2f1c5680b8ce439b44c6fa63" + "Hash": "c19df082ba346b0ffa6f833e92de34d1" }, "sf": { "Package": "sf", - "Version": "1.0-14", + "Version": "1.0-16", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "DBI", "R", @@ -1370,7 +1371,7 @@ "units", "utils" ], - "Hash": "e2111252a76984ca50bf8d6314348681" + "Hash": "ad57b543f7c3fca05213ba78ff63df9b" }, "slippymath": { "Package": "slippymath", @@ -1388,9 +1389,9 @@ }, "sp": { "Package": "sp", - "Version": "2.0-0", + "Version": "2.1-4", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "grDevices", @@ -1401,11 +1402,11 @@ "stats", "utils" ], - "Hash": "2551981e6f85d59c81652bf654d6c3ca" + "Hash": "75940133cca2e339afce15a586f85b11" }, "stringi": { "Package": "stringi", - "Version": "1.7.12", + "Version": "1.8.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1414,11 +1415,11 @@ "tools", "utils" ], - "Hash": "ca8bd84263c77310739d2cf64d84d7c9" + "Hash": "39e1144fd75428983dc3f63aa53dfa91" }, "stringr": { "Package": "stringr", - "Version": "1.5.0", + "Version": "1.5.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1431,41 +1432,41 @@ "stringi", "vctrs" ], - "Hash": "671a4d384ae9d32fc47a14e98bfa3dc8" + "Hash": "960e2ae9e09656611e0b8214ad543207" }, "sys": { "Package": "sys", - "Version": "3.4.1", + "Version": "3.4.2", "Source": "Repository", "Repository": "CRAN", - "Hash": "34c16f1ef796057bfa06d3f4ff818a5d" + "Hash": "3a1be13d68d47a8cd0bfd74739ca1555" }, "systemfonts": { "Package": "systemfonts", - "Version": "1.0.4", + "Version": "1.0.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "cpp11" ], - "Hash": "90b28393209827327de889f49935140a" + "Hash": "6d538cff441f0f1f36db2209ac7495ac" }, "terra": { "Package": "terra", - "Version": "1.7-46", + "Version": "1.7-71", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "Rcpp", "methods" ], - "Hash": "d15182a8a20ffc5880e721bfa1bf4ce9" + "Hash": "e8611881ab70a4fb7a1f629b31e6fcff" }, "testthat": { "Package": "testthat", - "Version": "3.1.7", + "Version": "3.2.1.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1476,7 +1477,6 @@ "cli", "desc", "digest", - "ellipsis", "evaluate", "jsonlite", "lifecycle", @@ -1491,11 +1491,11 @@ "waldo", "withr" ], - "Hash": "7eb5fd202a61d2fb78af5869b6c08998" + "Hash": "3f6e7e5e2220856ff865e4834766bf2b" }, "textshaping": { "Package": "textshaping", - "Version": "0.3.6", + "Version": "0.3.7", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1503,7 +1503,7 @@ "cpp11", "systemfonts" ], - "Hash": "1ab6223d3670fac7143202cb6a2d43d5" + "Hash": "997aac9ad649e0ef3b97f96cddd5622b" }, "tibble": { "Package": "tibble", @@ -1526,7 +1526,7 @@ }, "tidyr": { "Package": "tidyr", - "Version": "1.3.0", + "Version": "1.3.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1545,11 +1545,11 @@ "utils", "vctrs" ], - "Hash": "e47debdc7ce599b070c8e78e8ac0cfcf" + "Hash": "915fb7ce036c22a6a33b5a8adb712eb1" }, "tidyselect": { "Package": "tidyselect", - "Version": "1.2.0", + "Version": "1.2.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1561,28 +1561,28 @@ "vctrs", "withr" ], - "Hash": "79540e5fcd9e0435af547d885f184fd5" + "Hash": "829f27b9c4919c16b593794a6344d6c0" }, "timechange": { "Package": "timechange", - "Version": "0.2.0", + "Version": "0.3.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "cpp11" ], - "Hash": "8548b44f79a35ba1791308b61e6012d7" + "Hash": "c5f3c201b931cd6474d17d8700ccb1c8" }, "tinytex": { "Package": "tinytex", - "Version": "0.45", + "Version": "0.51", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "xfun" ], - "Hash": "e4e357f28c2edff493936b6cb30c3d65" + "Hash": "d44e2fcd2e4e076f0aac540208559d1d" }, "triebeard": { "Package": "triebeard", @@ -1596,14 +1596,14 @@ }, "units": { "Package": "units", - "Version": "0.8-3", + "Version": "0.8-5", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "Rcpp" ], - "Hash": "880ebc99e4d8f7e5f3caeb2f12632583" + "Hash": "119d19da480e873f72241ff6962ffd83" }, "urltools": { "Package": "urltools", @@ -1620,17 +1620,17 @@ }, "utf8": { "Package": "utf8", - "Version": "1.2.3", + "Version": "1.2.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "1fe17157424bb09c48a8b3b550c753bc" + "Hash": "62b65c52671e6665f803ff02954446e9" }, "vctrs": { "Package": "vctrs", - "Version": "0.6.2", + "Version": "0.6.5", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1640,37 +1640,25 @@ "lifecycle", "rlang" ], - "Hash": "a745bda7aff4734c17294bb41d4e4607" - }, - "viridis": { - "Package": "viridis", - "Version": "0.6.4", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "ggplot2", - "gridExtra", - "viridisLite" - ], - "Hash": "80cd127bc8c9d3d9f0904ead9a9102f1" + "Hash": "c03fa420630029418f7e6da3667aac4a" }, "viridisLite": { "Package": "viridisLite", - "Version": "0.4.1", + "Version": "0.4.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "62f4b5da3e08d8e5bcba6cac15603f70" + "Hash": "c826c7c4241b6fc89ff55aaea3fa7491" }, "waldo": { "Package": "waldo", - "Version": "0.4.0", + "Version": "0.5.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ + "R", "cli", "diffobj", "fansi", @@ -1680,7 +1668,7 @@ "rlang", "tibble" ], - "Hash": "035fba89d0c86e2113120f93301b98ad" + "Hash": "c7d3fd6d29ab077cbac8f0e2751449e6" }, "whisker": { "Package": "whisker", @@ -1691,55 +1679,57 @@ }, "withr": { "Package": "withr", - "Version": "2.5.0", + "Version": "3.0.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "grDevices", - "graphics", - "stats" + "graphics" ], - "Hash": "c0e49a9760983e81e55cdd9be92e7182" + "Hash": "d31b6c62c10dcf11ec530ca6b0dd5d35" }, "wk": { "Package": "wk", - "Version": "0.8.0", + "Version": "0.9.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "aaf7e20556e3125a09d53453814ad339" + "Hash": "5d4545e140e36476f35f20d0ca87963e" }, "xfun": { "Package": "xfun", - "Version": "0.39", + "Version": "0.43", "Source": "Repository", "Repository": "CRAN", "Requirements": [ + "grDevices", "stats", "tools" ], - "Hash": "8f56e9acb54fb525e66464d57ab58bcb" + "Hash": "ab6371d8653ce5f2f9290f4ec7b42a8e" }, "xml2": { "Package": "xml2", - "Version": "1.3.4", + "Version": "1.3.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", - "methods" + "cli", + "methods", + "rlang" ], - "Hash": "7dc765ac9b909487326a7d471fdd3821" + "Hash": "1d0336142f4cd25d8d23cd3ba7a8fb61" }, "yaml": { "Package": "yaml", - "Version": "2.3.7", + "Version": "2.3.8", "Source": "Repository", "Repository": "CRAN", - "Hash": "0d0056cc5383fbc240ccd0cb584bf436" + "Hash": "29240487a071f535f5e5d5a323b7afbd" } } } diff --git a/renv/activate.R b/renv/activate.R index 2969c73..d13f993 100644 --- a/renv/activate.R +++ b/renv/activate.R @@ -2,11 +2,13 @@ local({ # the requested version of renv - version <- "1.0.2" + version <- "1.0.7" attr(version, "sha") <- NULL # the project directory - project <- getwd() + project <- Sys.getenv("RENV_PROJECT") + if (!nzchar(project)) + project <- getwd() # use start-up diagnostics if enabled diagnostics <- Sys.getenv("RENV_STARTUP_DIAGNOSTICS", unset = "FALSE") @@ -31,6 +33,14 @@ local({ if (!is.null(override)) return(override) + # if we're being run in a context where R_LIBS is already set, + # don't load -- presumably we're being run as a sub-process and + # the parent process has already set up library paths for us + rcmd <- Sys.getenv("R_CMD", unset = NA) + rlibs <- Sys.getenv("R_LIBS", unset = NA) + if (!is.na(rlibs) && !is.na(rcmd)) + return(FALSE) + # next, check environment variables # TODO: prefer using the configuration one in the future envvars <- c( @@ -50,9 +60,22 @@ local({ }) - if (!enabled) + # bail if we're not enabled + if (!enabled) { + + # if we're not enabled, we might still need to manually load + # the user profile here + profile <- Sys.getenv("R_PROFILE_USER", unset = "~/.Rprofile") + if (file.exists(profile)) { + cfg <- Sys.getenv("RENV_CONFIG_USER_PROFILE", unset = "TRUE") + if (tolower(cfg) %in% c("true", "t", "1")) + sys.source(profile, envir = globalenv()) + } + return(FALSE) + } + # avoid recursion if (identical(getOption("renv.autoloader.running"), TRUE)) { warning("ignoring recursive attempt to run renv autoloader") @@ -108,6 +131,21 @@ local({ } + heredoc <- function(text, leave = 0) { + + # remove leading, trailing whitespace + trimmed <- gsub("^\\s*\\n|\\n\\s*$", "", text) + + # split into lines + lines <- strsplit(trimmed, "\n", fixed = TRUE)[[1L]] + + # compute common indent + indent <- regexpr("[^[:space:]]", lines) + common <- min(setdiff(indent, -1L)) - leave + paste(substring(lines, common), collapse = "\n") + + } + startswith <- function(string, prefix) { substring(string, 1, nchar(prefix)) == prefix } @@ -610,6 +648,9 @@ local({ # if the user has requested an automatic prefix, generate it auto <- Sys.getenv("RENV_PATHS_PREFIX_AUTO", unset = NA) + if (is.na(auto) && getRversion() >= "4.4.0") + auto <- "TRUE" + if (auto %in% c("TRUE", "True", "true", "1")) return(renv_bootstrap_platform_prefix_auto()) @@ -801,24 +842,23 @@ local({ # the loaded version of renv doesn't match the requested version; # give the user instructions on how to proceed - remote <- if (!is.null(description[["RemoteSha"]])) { + dev <- identical(description[["RemoteType"]], "github") + remote <- if (dev) paste("rstudio/renv", description[["RemoteSha"]], sep = "@") - } else { + else paste("renv", description[["Version"]], sep = "@") - } # display both loaded version + sha if available friendly <- renv_bootstrap_version_friendly( version = description[["Version"]], - sha = description[["RemoteSha"]] + sha = if (dev) description[["RemoteSha"]] ) - fmt <- paste( - "renv %1$s was loaded from project library, but this project is configured to use renv %2$s.", - "- Use `renv::record(\"%3$s\")` to record renv %1$s in the lockfile.", - "- Use `renv::restore(packages = \"renv\")` to install renv %2$s into the project library.", - sep = "\n" - ) + fmt <- heredoc(" + renv %1$s was loaded from project library, but this project is configured to use renv %2$s. + - Use `renv::record(\"%3$s\")` to record renv %1$s in the lockfile. + - Use `renv::restore(packages = \"renv\")` to install renv %2$s into the project library. + ") catf(fmt, friendly, renv_bootstrap_version_friendly(version), remote) FALSE @@ -1034,19 +1074,6 @@ local({ } - - renv_bootstrap_in_rstudio <- function() { - commandArgs()[[1]] == "RStudio" - } - - # Used to work around buglet in RStudio if hook uses readline - renv_bootstrap_flush_console <- function() { - tryCatch({ - tools <- as.environment("tools:rstudio") - tools$.rs.api.sendToConsole("", echo = FALSE, focus = FALSE) - }, error = function(cnd) {}) - } - renv_json_read <- function(file = NULL, text = NULL) { jlerr <- NULL @@ -1054,7 +1081,7 @@ local({ # if jsonlite is loaded, use that instead if ("jsonlite" %in% loadedNamespaces()) { - json <- catch(renv_json_read_jsonlite(file, text)) + json <- tryCatch(renv_json_read_jsonlite(file, text), error = identity) if (!inherits(json, "error")) return(json) @@ -1063,7 +1090,7 @@ local({ } # otherwise, fall back to the default JSON reader - json <- catch(renv_json_read_default(file, text)) + json <- tryCatch(renv_json_read_default(file, text), error = identity) if (!inherits(json, "error")) return(json) @@ -1076,14 +1103,14 @@ local({ } renv_json_read_jsonlite <- function(file = NULL, text = NULL) { - text <- paste(text %||% read(file), collapse = "\n") + text <- paste(text %||% readLines(file, warn = FALSE), collapse = "\n") jsonlite::fromJSON(txt = text, simplifyVector = FALSE) } renv_json_read_default <- function(file = NULL, text = NULL) { # find strings in the JSON - text <- paste(text %||% read(file), collapse = "\n") + text <- paste(text %||% readLines(file, warn = FALSE), collapse = "\n") pattern <- '["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]' locs <- gregexpr(pattern, text, perl = TRUE)[[1]] @@ -1131,14 +1158,14 @@ local({ map <- as.list(map) # remap strings in object - remapped <- renv_json_remap(json, map) + remapped <- renv_json_read_remap(json, map) # evaluate eval(remapped, envir = baseenv()) } - renv_json_remap <- function(json, map) { + renv_json_read_remap <- function(json, map) { # fix names if (!is.null(names(json))) { @@ -1165,7 +1192,7 @@ local({ # recurse if (is.recursive(json)) { for (i in seq_along(json)) { - json[i] <- list(renv_json_remap(json[[i]], map)) + json[i] <- list(renv_json_read_remap(json[[i]], map)) } } @@ -1185,16 +1212,8 @@ local({ # construct full libpath libpath <- file.path(root, prefix) - if (renv_bootstrap_in_rstudio()) { - # RStudio only updates console once .Rprofile is finished, so - # instead run code on sessionInit - setHook("rstudio.sessionInit", function(...) { - renv_bootstrap_exec(project, libpath, version) - renv_bootstrap_flush_console() - }) - } else { - renv_bootstrap_exec(project, libpath, version) - } + # run bootstrap code + renv_bootstrap_exec(project, libpath, version) invisible() diff --git a/renv/profiles/dev/renv.lock b/renv/profiles/dev/renv.lock index d90b3c4..bb31c91 100644 --- a/renv/profiles/dev/renv.lock +++ b/renv/profiles/dev/renv.lock @@ -1,6 +1,6 @@ { "R": { - "Version": "4.3.1", + "Version": "4.4.0", "Repositories": [ { "Name": "CRAN", @@ -11,29 +11,29 @@ "Packages": { "DBI": { "Package": "DBI", - "Version": "1.1.3", + "Version": "1.2.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "b2866e62bab9378c3cc9476a1954226b" + "Hash": "164809cd72e1d5160b4cb3aa57f510fe" }, "KernSmooth": { "Package": "KernSmooth", - "Version": "2.23-20", + "Version": "2.23-22", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "stats" ], - "Hash": "8dcfa99b14c296bc9f1fd64d52fd3ce7" + "Hash": "2fecebc3047322fa5930f74fae5de70f" }, "MASS": { "Package": "MASS", - "Version": "7.3-58.3", + "Version": "7.3-60.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -44,15 +44,16 @@ "stats", "utils" ], - "Hash": "9586b552d57f5516fe4d25398c1bacd6" + "Hash": "2f342c46163b0b54d7b64d1f798e2c78" }, "Matrix": { "Package": "Matrix", - "Version": "1.5-3", + "Version": "1.7-0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", + "grDevices", "graphics", "grid", "lattice", @@ -60,7 +61,7 @@ "stats", "utils" ], - "Hash": "4006dffe49958d2dd591c17e61e60591" + "Hash": "1920b2f11133b12350024297d8a4ff4a" }, "R6": { "Package": "R6", @@ -84,20 +85,20 @@ }, "Rcpp": { "Package": "Rcpp", - "Version": "1.0.11", + "Version": "1.0.12", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "methods", "utils" ], - "Hash": "ae6cbbe1492f4de79c45fce06f967ce8" + "Hash": "5ea2700d21e038ace58269ecdbeb9ec0" }, "abind": { "Package": "abind", "Version": "1.4-5", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "methods", @@ -137,30 +138,35 @@ }, "brio": { "Package": "brio", - "Version": "1.1.3", + "Version": "1.1.5", "Source": "Repository", "Repository": "CRAN", - "Hash": "976cf154dfb043c012d87cddd8bca363" + "Requirements": [ + "R" + ], + "Hash": "c1ee497a6d999947c2c224ae46799b1a" }, "bslib": { "Package": "bslib", - "Version": "0.5.1", + "Version": "0.7.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "base64enc", "cachem", + "fastmap", "grDevices", "htmltools", "jquerylib", "jsonlite", + "lifecycle", "memoise", "mime", "rlang", "sass" ], - "Hash": "283015ddfbb9d7bf15ea9f0b5698f0d9" + "Hash": "8644cc53f43828f19133548195d7e59e" }, "cachem": { "Package": "cachem", @@ -175,7 +181,7 @@ }, "callr": { "Package": "callr", - "Version": "3.7.3", + "Version": "3.7.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -184,11 +190,11 @@ "processx", "utils" ], - "Hash": "9b2191ede20fa29828139b9900922e51" + "Hash": "d7e13f49c19103ece9e58ad2d83a7354" }, "class": { "Package": "class", - "Version": "7.3-21", + "Version": "7.3-22", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -197,13 +203,13 @@ "stats", "utils" ], - "Hash": "8ae0d4328e2eb3a582dfd5391a3663b7" + "Hash": "f91f6b29f38b8c280f2b9477787d4bb2" }, "classInt": { "Package": "classInt", "Version": "0.4-10", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "KernSmooth", "R", @@ -217,24 +223,24 @@ }, "cli": { "Package": "cli", - "Version": "3.6.1", + "Version": "3.6.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "89e6d8219950eac806ae0c489052048a" + "Hash": "1216ac65ac55ec0058a6f75d7ca0fd52" }, "codetools": { "Package": "codetools", - "Version": "0.2-19", + "Version": "0.2-20", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "c089a619a7fae175d149d89164f8c7d8" + "Hash": "61e097f35917d342622f21cdc79c256e" }, "colorspace": { "Package": "colorspace", @@ -252,13 +258,13 @@ }, "cpp11": { "Package": "cpp11", - "Version": "0.4.6", + "Version": "0.4.7", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "707fae4bbf73697ec8d85f9d7076c061" + "Hash": "5a295d7d963cc5035284dcdbaf334f4e" }, "crayon": { "Package": "crayon", @@ -274,7 +280,7 @@ }, "crosstalk": { "Package": "crosstalk", - "Version": "1.2.0", + "Version": "1.2.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -283,17 +289,17 @@ "jsonlite", "lazyeval" ], - "Hash": "6aa54f69598c32177e920eb3402e8293" + "Hash": "ab12c7b080a57475248a30f4db6298c0" }, "curl": { "Package": "curl", - "Version": "5.0.2", + "Version": "5.2.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "511bacbfa153a15251166b463b4da4f9" + "Hash": "411ca2c03b1ce5f548345d2fc2685f7a" }, "cyclocomp": { "Package": "cyclocomp", @@ -311,17 +317,16 @@ }, "desc": { "Package": "desc", - "Version": "1.4.2", + "Version": "1.4.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "R6", "cli", - "rprojroot", "utils" ], - "Hash": "6b9602c7ebbe87101a9c8edb6e8b6d21" + "Hash": "99b79fcbd6c4d1ce087f5c5c758b384f" }, "diffobj": { "Package": "diffobj", @@ -340,14 +345,14 @@ }, "digest": { "Package": "digest", - "Version": "0.6.33", + "Version": "0.6.35", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "b18a9cf3c003977b0cc49d5e76ebe48d" + "Hash": "698ece7ba5a4fa4559e3d537e7ec3d31" }, "downlit": { "Package": "downlit", @@ -371,9 +376,9 @@ }, "dplyr": { "Package": "dplyr", - "Version": "1.1.3", + "Version": "1.1.4", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "R6", @@ -390,13 +395,13 @@ "utils", "vctrs" ], - "Hash": "e85ffbebaad5f70e1a2e2ef4302b4949" + "Hash": "fedd9d00c2944ff00a0e2696ccf048ec" }, "e1071": { "Package": "e1071", - "Version": "1.7-13", + "Version": "1.7-14", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "class", "grDevices", @@ -406,13 +411,13 @@ "stats", "utils" ], - "Hash": "1046cb48d06cb40c2900d8878f03a0fe" + "Hash": "4ef372b716824753719a8a38b258442d" }, "elevatr": { "Package": "elevatr", - "Version": "0.4.5", + "Version": "0.99.0", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "curl", @@ -426,36 +431,25 @@ "raster", "sf", "slippymath", - "sp", + "terra", "units" ], - "Hash": "867bc9d9ed45489aa01cb30c51fbaec2" - }, - "ellipsis": { - "Package": "ellipsis", - "Version": "0.3.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "rlang" - ], - "Hash": "bb0eec2fe32e88d9e2836c2f73ea2077" + "Hash": "f5a648116dfa343b1c76c40d33a8e834" }, "evaluate": { "Package": "evaluate", - "Version": "0.21", + "Version": "0.23", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "d59f3b464e8da1aef82dc04b588b8dfb" + "Hash": "daf4a1246be12c1fa8c7705a0935c1a0" }, "fansi": { "Package": "fansi", - "Version": "1.0.4", + "Version": "1.0.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -463,7 +457,7 @@ "grDevices", "utils" ], - "Hash": "1d9e7ad3c8312a192dea7d3db0274fde" + "Hash": "962174cf2aeb5b9eea581522286a911f" }, "farver": { "Package": "farver", @@ -493,20 +487,20 @@ }, "fs": { "Package": "fs", - "Version": "1.6.3", + "Version": "1.6.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "47b5f30c720c23999b913a1a635cf0bb" + "Hash": "15aeb8c27f5ea5161f9f6a641fafd93a" }, "furrr": { "Package": "furrr", "Version": "0.3.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "future", @@ -520,9 +514,9 @@ }, "future": { "Package": "future", - "Version": "1.33.0", + "Version": "1.33.2", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "digest", "globals", @@ -531,7 +525,7 @@ "parallelly", "utils" ], - "Hash": "8e92c7bc53e91b9bb1faf9a6ef0e8514" + "Hash": "fd7b1d69d16d0d114e4fa82db68f184c" }, "generics": { "Package": "generics", @@ -546,18 +540,18 @@ }, "geodata": { "Package": "geodata", - "Version": "0.5-8", + "Version": "0.5-9", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "terra" ], - "Hash": "93d238706f3fe7c326a7d0bbc2fecdb8" + "Hash": "5937c0840e80ae8a7506f1d12e454e5a" }, "ggplot2": { "Package": "ggplot2", - "Version": "3.4.3", + "Version": "3.5.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -578,13 +572,13 @@ "vctrs", "withr" ], - "Hash": "85846544c596e71f8f46483ab165da33" + "Hash": "44c6a2f8202d5b7e878ea274b1092426" }, "ggspatial": { "Package": "ggspatial", "Version": "1.1.9", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "abind", @@ -603,43 +597,29 @@ }, "globals": { "Package": "globals", - "Version": "0.16.2", + "Version": "0.16.3", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "codetools" ], - "Hash": "baa9585ab4ce47a9f4618e671778cc6f" + "Hash": "2580567908cafd4f187c1e5a91e98b7f" }, "glue": { "Package": "glue", - "Version": "1.6.2", + "Version": "1.7.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "4f2596dfb05dac67b9dc558e5c6fba2e" - }, - "gridExtra": { - "Package": "gridExtra", - "Version": "2.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "grDevices", - "graphics", - "grid", - "gtable", - "utils" - ], - "Hash": "7d7f283939f563670a697165b2cf5560" + "Hash": "e0b3a53876554bd45879e596cdb10a52" }, "gtable": { "Package": "gtable", - "Version": "0.3.4", + "Version": "0.3.5", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -650,7 +630,7 @@ "lifecycle", "rlang" ], - "Hash": "b29cf3031f49b04ab9c852c912547eef" + "Hash": "e18861963cbc65a27736e02b3cd3c4a0" }, "highr": { "Package": "highr", @@ -679,24 +659,23 @@ }, "htmltools": { "Package": "htmltools", - "Version": "0.5.6", + "Version": "0.5.8.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "base64enc", "digest", - "ellipsis", "fastmap", "grDevices", "rlang", "utils" ], - "Hash": "a2326a66919a3311f7fbb1e3bf568283" + "Hash": "81d371a9cc60640e74e4ab6ac46dcedc" }, "htmlwidgets": { "Package": "htmlwidgets", - "Version": "1.6.2", + "Version": "1.6.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -707,13 +686,13 @@ "rmarkdown", "yaml" ], - "Hash": "a865aa85bcb2697f47505bfd70422471" + "Hash": "04291cc45198225444a397606810ac37" }, "httr": { "Package": "httr", "Version": "1.4.7", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "R6", @@ -739,7 +718,7 @@ "Package": "jpeg", "Version": "0.1-10", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R" ], @@ -757,17 +736,17 @@ }, "jsonlite": { "Package": "jsonlite", - "Version": "1.8.7", + "Version": "1.8.8", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "methods" ], - "Hash": "266a20443ca13c65688b2116d5220f76" + "Hash": "e1b9c55281c5adc4dd113652d9e26768" }, "knitr": { "Package": "knitr", - "Version": "1.43", + "Version": "1.46", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -779,7 +758,7 @@ "xfun", "yaml" ], - "Hash": "9775eb076713f627c07ce41d8199d8f6" + "Hash": "6e008ab1d696a5283c79765fa7b56b47" }, "labeling": { "Package": "labeling", @@ -794,7 +773,7 @@ }, "lattice": { "Package": "lattice", - "Version": "0.20-45", + "Version": "0.22-6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -805,7 +784,7 @@ "stats", "utils" ], - "Hash": "b64cdbb2b340437c4ee047a1f4c4377b" + "Hash": "cc5ac1ba4c238c7ca9fa6a87ca11a7e2" }, "lazyeval": { "Package": "lazyeval", @@ -819,9 +798,9 @@ }, "leaflet": { "Package": "leaflet", - "Version": "2.2.0", + "Version": "2.2.2", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "RColorBrewer", @@ -837,24 +816,25 @@ "scales", "sp", "stats", - "viridis", + "viridisLite", "xfun" ], - "Hash": "f73dcc38ff38127bc11ea776786996de" + "Hash": "ca012d4a706e21ce217ba15f22d402b2" }, "leaflet.providers": { "Package": "leaflet.providers", - "Version": "1.13.0", + "Version": "2.0.0", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ - "R" + "R", + "htmltools" ], - "Hash": "235cd5abed82d9e6e79eb05eee248983" + "Hash": "c0b81ad9d5d932772f7a457ac398cf36" }, "lifecycle": { "Package": "lifecycle", - "Version": "1.0.3", + "Version": "1.0.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -863,13 +843,13 @@ "glue", "rlang" ], - "Hash": "001cecbeac1cff9301bdc3775ee46a86" + "Hash": "b8552d117e1b808b09a832f589b79035" }, "lintr": { "Package": "lintr", - "Version": "3.1.0", + "Version": "3.1.2", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "backports", @@ -884,31 +864,31 @@ "xml2", "xmlparsedata" ], - "Hash": "2b4b803af6017e93b67ddaf0eacba918" + "Hash": "08cff46381a242d44c0d8dd0aabd9f71" }, "listenv": { "Package": "listenv", - "Version": "0.9.0", + "Version": "0.9.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "4fbd3679ec8ee169ba28d4b1ea7d0e8f" + "Hash": "e2fca3e12e4db979dccc6e519b10a7ee" }, "logger": { "Package": "logger", - "Version": "0.2.2", + "Version": "0.3.0", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "utils" ], - "Hash": "c269b06beb2bbadb0d058c0e6fa4ec3d" + "Hash": "c145edf05cc128e6ffcfa5d872c46329" }, "lubridate": { "Package": "lubridate", - "Version": "1.9.2", + "Version": "1.9.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -917,7 +897,7 @@ "methods", "timechange" ], - "Hash": "e25f18436e3efd42c7c590a1c4c15390" + "Hash": "680ad542fbcf801442c83a6ac5a2126c" }, "magrittr": { "Package": "magrittr", @@ -942,7 +922,7 @@ }, "mgcv": { "Package": "mgcv", - "Version": "1.8-42", + "Version": "1.9-1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -955,7 +935,7 @@ "stats", "utils" ], - "Hash": "3460beba7ccc8946249ba35327ba902a" + "Hash": "110ee9d83b496279960e162ac97764ce" }, "mime": { "Package": "mime", @@ -969,18 +949,18 @@ }, "munsell": { "Package": "munsell", - "Version": "0.5.0", + "Version": "0.5.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "colorspace", "methods" ], - "Hash": "6dfe8bf774944bd5595785e3229d8771" + "Hash": "4fd8900853b746af55b81fda99da7695" }, "nlme": { "Package": "nlme", - "Version": "3.1-162", + "Version": "3.1-164", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -990,23 +970,23 @@ "stats", "utils" ], - "Hash": "0984ce8da8da9ead8643c5cbbb60f83e" + "Hash": "a623a2239e642806158bc4dc3f51565d" }, "openssl": { "Package": "openssl", - "Version": "2.1.0", + "Version": "2.1.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "askpass" ], - "Hash": "273a6bb4a9844c296a459d2176673270" + "Hash": "ea2475b073243d9d338aa8f086ce973e" }, "pander": { "Package": "pander", "Version": "0.6.5", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "Rcpp", @@ -1022,15 +1002,15 @@ }, "parallelly": { "Package": "parallelly", - "Version": "1.36.0", + "Version": "1.37.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "parallel", "tools", "utils" ], - "Hash": "bca377e1c87ec89ebed77bba00635b2e" + "Hash": "5410df8d22bd36e616f2a2343dbb328c" }, "pillar": { "Package": "pillar", @@ -1051,7 +1031,7 @@ }, "pkgbuild": { "Package": "pkgbuild", - "Version": "1.4.2", + "Version": "1.4.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1059,13 +1039,10 @@ "R6", "callr", "cli", - "crayon", "desc", - "prettyunits", - "processx", - "rprojroot" + "processx" ], - "Hash": "beb25b32a957a22a5c301a9e441190b3" + "Hash": "a29e8e134a460a01e0ca67a4763c595b" }, "pkgconfig": { "Package": "pkgconfig", @@ -1079,7 +1056,7 @@ }, "pkgdown": { "Package": "pkgdown", - "Version": "2.0.7", + "Version": "2.0.9", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1105,11 +1082,11 @@ "xml2", "yaml" ], - "Hash": "16fa15449c930bf3a7761d3c68f8abf9" + "Hash": "8bf1151ed1a48328d71b937e651117a6" }, "pkgload": { "Package": "pkgload", - "Version": "1.3.2.1", + "Version": "1.3.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1120,12 +1097,13 @@ "fs", "glue", "methods", + "pkgbuild", "rlang", "rprojroot", "utils", "withr" ], - "Hash": "a7f498a1b2a4a6816148e498509f6e1d" + "Hash": "876c618df5ae610be84356d5d7a5d124" }, "png": { "Package": "png", @@ -1146,14 +1124,17 @@ }, "prettyunits": { "Package": "prettyunits", - "Version": "1.1.1", + "Version": "1.2.0", "Source": "Repository", "Repository": "CRAN", - "Hash": "95ef9167b75dde9d2ccc3c7528393e7e" + "Requirements": [ + "R" + ], + "Hash": "6b01fc98b1e86c4f705ce9dcfd2f57c7" }, "processx": { "Package": "processx", - "Version": "3.8.2", + "Version": "3.8.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1162,26 +1143,27 @@ "ps", "utils" ], - "Hash": "3efbd8ac1be0296a46c55387aeace0f3" + "Hash": "0c90a7d71988856bad2a2a45dd871bb9" }, "progress": { "Package": "progress", - "Version": "1.2.2", + "Version": "1.2.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ + "R", "R6", "crayon", "hms", "prettyunits" ], - "Hash": "14dc9f7a3c91ebb14ec5bb9208a07061" + "Hash": "f4625e061cb2865f111b47ff163a5ca6" }, "progressr": { "Package": "progressr", "Version": "0.14.0", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "digest", @@ -1193,7 +1175,7 @@ "Package": "proxy", "Version": "0.4-27", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "stats", @@ -1203,14 +1185,14 @@ }, "ps": { "Package": "ps", - "Version": "1.7.5", + "Version": "1.7.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "709d852d33178db54b17c722e5b1e594" + "Hash": "dd2b9319ee0656c8acf45c7f40c59de7" }, "purrr": { "Package": "purrr", @@ -1229,14 +1211,14 @@ }, "ragg": { "Package": "ragg", - "Version": "1.2.5", + "Version": "1.3.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "systemfonts", "textshaping" ], - "Hash": "690bc058ea2b1b8a407d3cfe3dce3ef9" + "Hash": "539dcb63ce611fe389b4c8e2b546cf24" }, "rappdirs": { "Package": "rappdirs", @@ -1250,9 +1232,9 @@ }, "raster": { "Package": "raster", - "Version": "3.6-23", + "Version": "3.6-26", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "Rcpp", @@ -1260,7 +1242,7 @@ "sp", "terra" ], - "Hash": "337d6d70f7d6bf78df236a5a53f09db0" + "Hash": "7d6eda494f34a644420ac1bfd2a8023a" }, "rcmdcheck": { "Package": "rcmdcheck", @@ -1296,7 +1278,7 @@ }, "remotes": { "Package": "remotes", - "Version": "2.4.2.1", + "Version": "2.5.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1306,17 +1288,15 @@ "tools", "utils" ], - "Hash": "63d15047eb239f95160112bcadc4fcb9" + "Hash": "3ee025083e66f18db6cf27b56e23e141" }, "renv": { "Package": "renv", - "Version": "1.0.2", - "Source": "Repository", + "Version": "1.0.7", + "OS_type": null, + "NeedsCompilation": "no", "Repository": "CRAN", - "Requirements": [ - "utils" - ], - "Hash": "4b22ac016fe54028b88d0c68badbd061" + "Source": "Repository" }, "rex": { "Package": "rex", @@ -1330,20 +1310,20 @@ }, "rlang": { "Package": "rlang", - "Version": "1.1.1", + "Version": "1.1.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "a85c767b55f0bf9b7ad16c6d7baee5bb" + "Hash": "42548638fae05fd9a9b5f3f437fbbbe2" }, "rmarkdown": { "Package": "rmarkdown", - "Version": "2.24", + "Version": "2.26", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "bslib", @@ -1354,47 +1334,44 @@ "jsonlite", "knitr", "methods", - "stringr", "tinytex", "tools", "utils", "xfun", "yaml" ], - "Hash": "3854c37590717c08c32ec8542a2e0a35" + "Hash": "9b148e7f95d33aac01f31282d49e4f44" }, "rnaturalearth": { "Package": "rnaturalearth", - "Version": "0.3.4", + "Version": "1.0.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "httr", "jsonlite", "sf", - "sp", "terra", "utils" ], - "Hash": "cc93c2e9d777b357103cdc322fb9a649" + "Hash": "741166cab0fe76d8a5670d3ee459a2a4" }, "rnaturalearthdata": { "Package": "rnaturalearthdata", - "Version": "0.1.0", + "Version": "1.0.0", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ - "R", - "sp" + "R" ], - "Hash": "0d34b89b43e900467e60f5449226f3e3" + "Hash": "650339de24d9574c0079a4a13baa623d" }, "rosm": { "Package": "rosm", "Version": "0.3.0", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "curl", "glue", @@ -1408,29 +1385,29 @@ }, "rprojroot": { "Package": "rprojroot", - "Version": "2.0.3", + "Version": "2.0.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "1de7ab598047a87bba48434ba35d497d" + "Hash": "4c8415e0ec1e29f3f4f6fc108bef0144" }, "s2": { "Package": "s2", - "Version": "1.1.4", + "Version": "1.1.6", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "Rcpp", "wk" ], - "Hash": "f1cbe03bb3346f8e817518ffa20f9f5a" + "Hash": "32f7b1a15bb01ae809022960abad5363" }, "sass": { "Package": "sass", - "Version": "0.4.7", + "Version": "0.4.9", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1440,25 +1417,27 @@ "rappdirs", "rlang" ], - "Hash": "6bd4d33b50ff927191ec9acbf52fd056" + "Hash": "d53dbfddf695303ea4ad66f86e99b95d" }, "scales": { "Package": "scales", - "Version": "1.2.1", + "Version": "1.3.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "R6", "RColorBrewer", + "cli", "farver", + "glue", "labeling", "lifecycle", "munsell", "rlang", "viridisLite" ], - "Hash": "906cb23d2f1c5680b8ce439b44c6fa63" + "Hash": "c19df082ba346b0ffa6f833e92de34d1" }, "sessioninfo": { "Package": "sessioninfo", @@ -1475,9 +1454,9 @@ }, "sf": { "Package": "sf", - "Version": "1.0-14", + "Version": "1.0-16", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "DBI", "R", @@ -1494,13 +1473,13 @@ "units", "utils" ], - "Hash": "e2111252a76984ca50bf8d6314348681" + "Hash": "ad57b543f7c3fca05213ba78ff63df9b" }, "slippymath": { "Package": "slippymath", "Version": "0.3.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "png", @@ -1512,9 +1491,9 @@ }, "sp": { "Package": "sp", - "Version": "2.0-0", + "Version": "2.1-4", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "grDevices", @@ -1525,11 +1504,11 @@ "stats", "utils" ], - "Hash": "2551981e6f85d59c81652bf654d6c3ca" + "Hash": "75940133cca2e339afce15a586f85b11" }, "stringi": { "Package": "stringi", - "Version": "1.7.12", + "Version": "1.8.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1538,11 +1517,11 @@ "tools", "utils" ], - "Hash": "ca8bd84263c77310739d2cf64d84d7c9" + "Hash": "39e1144fd75428983dc3f63aa53dfa91" }, "stringr": { "Package": "stringr", - "Version": "1.5.0", + "Version": "1.5.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1555,7 +1534,7 @@ "stringi", "vctrs" ], - "Hash": "671a4d384ae9d32fc47a14e98bfa3dc8" + "Hash": "960e2ae9e09656611e0b8214ad543207" }, "sys": { "Package": "sys", @@ -1566,32 +1545,32 @@ }, "systemfonts": { "Package": "systemfonts", - "Version": "1.0.4", + "Version": "1.0.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "cpp11" ], - "Hash": "90b28393209827327de889f49935140a" + "Hash": "6d538cff441f0f1f36db2209ac7495ac" }, "terra": { "Package": "terra", - "Version": "1.7-46", + "Version": "1.7-71", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "Rcpp", "methods" ], - "Hash": "d15182a8a20ffc5880e721bfa1bf4ce9" + "Hash": "e8611881ab70a4fb7a1f629b31e6fcff" }, "testthat": { "Package": "testthat", - "Version": "3.1.10", + "Version": "3.2.1.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "R6", @@ -1600,7 +1579,6 @@ "cli", "desc", "digest", - "ellipsis", "evaluate", "jsonlite", "lifecycle", @@ -1615,11 +1593,11 @@ "waldo", "withr" ], - "Hash": "6f403dc49295610a3a67ea1a9ca64346" + "Hash": "3f6e7e5e2220856ff865e4834766bf2b" }, "textshaping": { "Package": "textshaping", - "Version": "0.3.6", + "Version": "0.3.7", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1627,7 +1605,7 @@ "cpp11", "systemfonts" ], - "Hash": "1ab6223d3670fac7143202cb6a2d43d5" + "Hash": "997aac9ad649e0ef3b97f96cddd5622b" }, "tibble": { "Package": "tibble", @@ -1650,7 +1628,7 @@ }, "tidyr": { "Package": "tidyr", - "Version": "1.3.0", + "Version": "1.3.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1669,11 +1647,11 @@ "utils", "vctrs" ], - "Hash": "e47debdc7ce599b070c8e78e8ac0cfcf" + "Hash": "915fb7ce036c22a6a33b5a8adb712eb1" }, "tidyselect": { "Package": "tidyselect", - "Version": "1.2.0", + "Version": "1.2.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1685,34 +1663,34 @@ "vctrs", "withr" ], - "Hash": "79540e5fcd9e0435af547d885f184fd5" + "Hash": "829f27b9c4919c16b593794a6344d6c0" }, "timechange": { "Package": "timechange", - "Version": "0.2.0", + "Version": "0.3.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "cpp11" ], - "Hash": "8548b44f79a35ba1791308b61e6012d7" + "Hash": "c5f3c201b931cd6474d17d8700ccb1c8" }, "tinytex": { "Package": "tinytex", - "Version": "0.46", + "Version": "0.51", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "xfun" ], - "Hash": "0c41a73214d982f539c56a7773c7afa5" + "Hash": "d44e2fcd2e4e076f0aac540208559d1d" }, "triebeard": { "Package": "triebeard", "Version": "0.4.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "Rcpp" ], @@ -1720,20 +1698,20 @@ }, "units": { "Package": "units", - "Version": "0.8-3", + "Version": "0.8-5", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "Rcpp" ], - "Hash": "880ebc99e4d8f7e5f3caeb2f12632583" + "Hash": "119d19da480e873f72241ff6962ffd83" }, "urltools": { "Package": "urltools", "Version": "1.7.3", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "Rcpp", @@ -1744,17 +1722,17 @@ }, "utf8": { "Package": "utf8", - "Version": "1.2.3", + "Version": "1.2.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "1fe17157424bb09c48a8b3b550c753bc" + "Hash": "62b65c52671e6665f803ff02954446e9" }, "vctrs": { "Package": "vctrs", - "Version": "0.6.3", + "Version": "0.6.5", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1764,20 +1742,7 @@ "lifecycle", "rlang" ], - "Hash": "d0ef2856b83dc33ea6e255caf6229ee2" - }, - "viridis": { - "Package": "viridis", - "Version": "0.6.4", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "ggplot2", - "gridExtra", - "viridisLite" - ], - "Hash": "80cd127bc8c9d3d9f0904ead9a9102f1" + "Hash": "c03fa420630029418f7e6da3667aac4a" }, "viridisLite": { "Package": "viridisLite", @@ -1791,10 +1756,11 @@ }, "waldo": { "Package": "waldo", - "Version": "0.5.1", + "Version": "0.5.2", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ + "R", "cli", "diffobj", "fansi", @@ -1804,7 +1770,7 @@ "rlang", "tibble" ], - "Hash": "2c993415154cdb94649d99ae138ff5e5" + "Hash": "c7d3fd6d29ab077cbac8f0e2751449e6" }, "whisker": { "Package": "whisker", @@ -1815,48 +1781,50 @@ }, "withr": { "Package": "withr", - "Version": "2.5.0", + "Version": "3.0.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "grDevices", - "graphics", - "stats" + "graphics" ], - "Hash": "c0e49a9760983e81e55cdd9be92e7182" + "Hash": "d31b6c62c10dcf11ec530ca6b0dd5d35" }, "wk": { "Package": "wk", - "Version": "0.8.0", + "Version": "0.9.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "aaf7e20556e3125a09d53453814ad339" + "Hash": "5d4545e140e36476f35f20d0ca87963e" }, "xfun": { "Package": "xfun", - "Version": "0.40", + "Version": "0.43", "Source": "Repository", "Repository": "CRAN", "Requirements": [ + "grDevices", "stats", "tools" ], - "Hash": "be07d23211245fc7d4209f54c4e4ffc8" + "Hash": "ab6371d8653ce5f2f9290f4ec7b42a8e" }, "xml2": { "Package": "xml2", - "Version": "1.3.5", + "Version": "1.3.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", - "methods" + "cli", + "methods", + "rlang" ], - "Hash": "6c40e5cfcc6aefd88110666e18c31f40" + "Hash": "1d0336142f4cd25d8d23cd3ba7a8fb61" }, "xmlparsedata": { "Package": "xmlparsedata", @@ -1870,21 +1838,21 @@ }, "xopen": { "Package": "xopen", - "Version": "1.0.0", + "Version": "1.0.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "processx" ], - "Hash": "6c85f015dee9cc7710ddd20f86881f58" + "Hash": "423df1e86d5533fcb73c6b02b4923b49" }, "yaml": { "Package": "yaml", - "Version": "2.3.7", + "Version": "2.3.8", "Source": "Repository", "Repository": "CRAN", - "Hash": "0d0056cc5383fbc240ccd0cb584bf436" + "Hash": "29240487a071f535f5e5d5a323b7afbd" } } } diff --git a/renv/profiles/dev/renv/settings.json b/renv/profiles/dev/renv/settings.json new file mode 100644 index 0000000..ffdbb32 --- /dev/null +++ b/renv/profiles/dev/renv/settings.json @@ -0,0 +1,19 @@ +{ + "bioconductor.version": null, + "external.libraries": [], + "ignored.packages": [], + "package.dependency.fields": [ + "Imports", + "Depends", + "LinkingTo" + ], + "ppm.enabled": null, + "ppm.ignored.urls": [], + "r.version": null, + "snapshot.type": "implicit", + "use.cache": true, + "vcs.ignore.cellar": true, + "vcs.ignore.library": true, + "vcs.ignore.local": true, + "vcs.manage.ignores": true +} From ede264416c8a2cdaf954632f30e398eccfdeff81 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Thu, 9 May 2024 18:03:19 +0200 Subject: [PATCH 07/35] :rewind: Revert ":arrow_up: update dependencies" This reverts commit 286b723eae450e1a690dfb1d814c27e4b6f4ab0f. --- DESCRIPTION | 2 +- renv.lock | 492 +++++++++++++------------- renv/activate.R | 105 +++--- renv/profiles/dev/renv.lock | 508 ++++++++++++++------------- renv/profiles/dev/renv/settings.json | 19 - 5 files changed, 565 insertions(+), 561 deletions(-) delete mode 100644 renv/profiles/dev/renv/settings.json diff --git a/DESCRIPTION b/DESCRIPTION index 213b52d..48ce021 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -11,7 +11,7 @@ Description: smarterapi is an interface which interacts with SMARTER REST API License: GPL (>= 3) Encoding: UTF-8 Roxygen: list(markdown = TRUE) -RoxygenNote: 7.3.1 +RoxygenNote: 7.2.3 Suggests: lintr, styler, diff --git a/renv.lock b/renv.lock index 78ec8fd..499d196 100644 --- a/renv.lock +++ b/renv.lock @@ -1,6 +1,6 @@ { "R": { - "Version": "4.4.0", + "Version": "4.3.1", "Repositories": [ { "Name": "CRAN", @@ -11,14 +11,14 @@ "Packages": { "DBI": { "Package": "DBI", - "Version": "1.2.2", + "Version": "1.1.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "164809cd72e1d5160b4cb3aa57f510fe" + "Hash": "b2866e62bab9378c3cc9476a1954226b" }, "KernSmooth": { "Package": "KernSmooth", @@ -33,7 +33,7 @@ }, "MASS": { "Package": "MASS", - "Version": "7.3-60.2", + "Version": "7.3-60", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -44,11 +44,11 @@ "stats", "utils" ], - "Hash": "2f342c46163b0b54d7b64d1f798e2c78" + "Hash": "a56a6365b3fa73293ea8d084be0d9bb0" }, "Matrix": { "Package": "Matrix", - "Version": "1.7-0", + "Version": "1.6-1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -61,7 +61,7 @@ "stats", "utils" ], - "Hash": "1920b2f11133b12350024297d8a4ff4a" + "Hash": "cb6855ac711958ca734b75e631b2035d" }, "R6": { "Package": "R6", @@ -85,14 +85,14 @@ }, "Rcpp": { "Package": "Rcpp", - "Version": "1.0.12", + "Version": "1.0.10", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "methods", "utils" ], - "Hash": "5ea2700d21e038ace58269ecdbeb9ec0" + "Hash": "e749cae40fa9ef469b6050959517453c" }, "abind": { "Package": "abind", @@ -108,13 +108,13 @@ }, "askpass": { "Package": "askpass", - "Version": "1.2.0", + "Version": "1.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "sys" ], - "Hash": "cad6cf7f1d5f6e906700b9d3e718c796" + "Hash": "e8a22846fff485f0be3770c2da758713" }, "base64enc": { "Package": "base64enc", @@ -128,50 +128,45 @@ }, "brio": { "Package": "brio", - "Version": "1.1.5", + "Version": "1.1.3", "Source": "Repository", "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "c1ee497a6d999947c2c224ae46799b1a" + "Hash": "976cf154dfb043c012d87cddd8bca363" }, "bslib": { "Package": "bslib", - "Version": "0.7.0", + "Version": "0.4.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "base64enc", "cachem", - "fastmap", "grDevices", "htmltools", "jquerylib", "jsonlite", - "lifecycle", "memoise", "mime", "rlang", "sass" ], - "Hash": "8644cc53f43828f19133548195d7e59e" + "Hash": "a7fbf03946ad741129dc81098722fca1" }, "cachem": { "Package": "cachem", - "Version": "1.0.8", + "Version": "1.0.7", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "fastmap", "rlang" ], - "Hash": "c35768291560ce302c0a6589f92e837d" + "Hash": "cda74447c42f529de601fe4d4050daef" }, "callr": { "Package": "callr", - "Version": "3.7.6", + "Version": "3.7.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -180,7 +175,7 @@ "processx", "utils" ], - "Hash": "d7e13f49c19103ece9e58ad2d83a7354" + "Hash": "9b2191ede20fa29828139b9900922e51" }, "class": { "Package": "class", @@ -213,24 +208,24 @@ }, "cli": { "Package": "cli", - "Version": "3.6.2", + "Version": "3.6.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "1216ac65ac55ec0058a6f75d7ca0fd52" + "Hash": "89e6d8219950eac806ae0c489052048a" }, "codetools": { "Package": "codetools", - "Version": "0.2-20", + "Version": "0.2-19", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "61e097f35917d342622f21cdc79c256e" + "Hash": "c089a619a7fae175d149d89164f8c7d8" }, "colorspace": { "Package": "colorspace", @@ -248,13 +243,10 @@ }, "cpp11": { "Package": "cpp11", - "Version": "0.4.7", + "Version": "0.4.3", "Source": "Repository", "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "5a295d7d963cc5035284dcdbaf334f4e" + "Hash": "ed588261931ee3be2c700d22e94a29ab" }, "crayon": { "Package": "crayon", @@ -270,7 +262,7 @@ }, "crosstalk": { "Package": "crosstalk", - "Version": "1.2.1", + "Version": "1.2.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -279,30 +271,31 @@ "jsonlite", "lazyeval" ], - "Hash": "ab12c7b080a57475248a30f4db6298c0" + "Hash": "6aa54f69598c32177e920eb3402e8293" }, "curl": { "Package": "curl", - "Version": "5.2.1", + "Version": "5.0.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "411ca2c03b1ce5f548345d2fc2685f7a" + "Hash": "e4f97056611e8e6b8b852d13b7400cf1" }, "desc": { "Package": "desc", - "Version": "1.4.3", + "Version": "1.4.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "R6", "cli", + "rprojroot", "utils" ], - "Hash": "99b79fcbd6c4d1ce087f5c5c758b384f" + "Hash": "6b9602c7ebbe87101a9c8edb6e8b6d21" }, "diffobj": { "Package": "diffobj", @@ -321,18 +314,18 @@ }, "digest": { "Package": "digest", - "Version": "0.6.35", + "Version": "0.6.31", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "698ece7ba5a4fa4559e3d537e7ec3d31" + "Hash": "8b708f296afd9ae69f450f9640be8990" }, "downlit": { "Package": "downlit", - "Version": "0.4.3", + "Version": "0.4.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -348,13 +341,13 @@ "withr", "yaml" ], - "Hash": "14fa1f248b60ed67e1f5418391a17b14" + "Hash": "79bf3f66590752ffbba20f8d2da94c7c" }, "dplyr": { "Package": "dplyr", - "Version": "1.1.4", + "Version": "1.1.3", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "R6", @@ -371,13 +364,13 @@ "utils", "vctrs" ], - "Hash": "fedd9d00c2944ff00a0e2696ccf048ec" + "Hash": "e85ffbebaad5f70e1a2e2ef4302b4949" }, "e1071": { "Package": "e1071", - "Version": "1.7-14", + "Version": "1.7-13", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "class", "grDevices", @@ -387,13 +380,13 @@ "stats", "utils" ], - "Hash": "4ef372b716824753719a8a38b258442d" + "Hash": "1046cb48d06cb40c2900d8878f03a0fe" }, "elevatr": { "Package": "elevatr", - "Version": "0.99.0", + "Version": "0.4.5", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "curl", @@ -407,25 +400,36 @@ "raster", "sf", "slippymath", - "terra", + "sp", "units" ], - "Hash": "f5a648116dfa343b1c76c40d33a8e834" + "Hash": "867bc9d9ed45489aa01cb30c51fbaec2" + }, + "ellipsis": { + "Package": "ellipsis", + "Version": "0.3.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "rlang" + ], + "Hash": "bb0eec2fe32e88d9e2836c2f73ea2077" }, "evaluate": { "Package": "evaluate", - "Version": "0.23", + "Version": "0.20", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "daf4a1246be12c1fa8c7705a0935c1a0" + "Hash": "4b68aa51edd89a0e044a66e75ae3cc6c" }, "fansi": { "Package": "fansi", - "Version": "1.0.6", + "Version": "1.0.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -433,7 +437,7 @@ "grDevices", "utils" ], - "Hash": "962174cf2aeb5b9eea581522286a911f" + "Hash": "1d9e7ad3c8312a192dea7d3db0274fde" }, "farver": { "Package": "farver", @@ -451,7 +455,7 @@ }, "fontawesome": { "Package": "fontawesome", - "Version": "0.5.2", + "Version": "0.5.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -459,18 +463,18 @@ "htmltools", "rlang" ], - "Hash": "c2efdd5f0bcd1ea861c2d4e2a883a67d" + "Hash": "1e22b8cabbad1eae951a75e9f8b52378" }, "fs": { "Package": "fs", - "Version": "1.6.4", + "Version": "1.6.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "15aeb8c27f5ea5161f9f6a641fafd93a" + "Hash": "94af08e0aa9675a16fadbb3aaaa90d2a" }, "furrr": { "Package": "furrr", @@ -490,9 +494,9 @@ }, "future": { "Package": "future", - "Version": "1.33.2", + "Version": "1.33.0", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "digest", "globals", @@ -501,7 +505,7 @@ "parallelly", "utils" ], - "Hash": "fd7b1d69d16d0d114e4fa82db68f184c" + "Hash": "8e92c7bc53e91b9bb1faf9a6ef0e8514" }, "generics": { "Package": "generics", @@ -516,18 +520,18 @@ }, "geodata": { "Package": "geodata", - "Version": "0.5-9", + "Version": "0.5-8", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "terra" ], - "Hash": "5937c0840e80ae8a7506f1d12e454e5a" + "Hash": "93d238706f3fe7c326a7d0bbc2fecdb8" }, "ggplot2": { "Package": "ggplot2", - "Version": "3.5.1", + "Version": "3.4.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -548,7 +552,7 @@ "vctrs", "withr" ], - "Hash": "44c6a2f8202d5b7e878ea274b1092426" + "Hash": "3a147ee02e85a8941aad9909f1b43b7b" }, "ggspatial": { "Package": "ggspatial", @@ -573,29 +577,43 @@ }, "globals": { "Package": "globals", - "Version": "0.16.3", + "Version": "0.16.2", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "codetools" ], - "Hash": "2580567908cafd4f187c1e5a91e98b7f" + "Hash": "baa9585ab4ce47a9f4618e671778cc6f" }, "glue": { "Package": "glue", - "Version": "1.7.0", + "Version": "1.6.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "e0b3a53876554bd45879e596cdb10a52" + "Hash": "4f2596dfb05dac67b9dc558e5c6fba2e" + }, + "gridExtra": { + "Package": "gridExtra", + "Version": "2.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "grDevices", + "graphics", + "grid", + "gtable", + "utils" + ], + "Hash": "7d7f283939f563670a697165b2cf5560" }, "gtable": { "Package": "gtable", - "Version": "0.3.5", + "Version": "0.3.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -606,7 +624,7 @@ "lifecycle", "rlang" ], - "Hash": "e18861963cbc65a27736e02b3cd3c4a0" + "Hash": "b44addadb528a0d227794121c00572a0" }, "highr": { "Package": "highr", @@ -635,23 +653,24 @@ }, "htmltools": { "Package": "htmltools", - "Version": "0.5.8.1", + "Version": "0.5.5", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "base64enc", "digest", + "ellipsis", "fastmap", "grDevices", "rlang", "utils" ], - "Hash": "81d371a9cc60640e74e4ab6ac46dcedc" + "Hash": "ba0240784ad50a62165058a27459304a" }, "htmlwidgets": { "Package": "htmlwidgets", - "Version": "1.6.4", + "Version": "1.6.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -662,11 +681,11 @@ "rmarkdown", "yaml" ], - "Hash": "04291cc45198225444a397606810ac37" + "Hash": "a865aa85bcb2697f47505bfd70422471" }, "httr": { "Package": "httr", - "Version": "1.4.7", + "Version": "1.4.5", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -677,7 +696,7 @@ "mime", "openssl" ], - "Hash": "ac107251d9d9fd72f0ca8049988f1d7f" + "Hash": "f6844033201269bec3ca0097bc6c97b3" }, "isoband": { "Package": "isoband", @@ -712,17 +731,17 @@ }, "jsonlite": { "Package": "jsonlite", - "Version": "1.8.8", + "Version": "1.8.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "methods" ], - "Hash": "e1b9c55281c5adc4dd113652d9e26768" + "Hash": "a4269a09a9b865579b2635c77e572374" }, "knitr": { "Package": "knitr", - "Version": "1.46", + "Version": "1.43", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -734,22 +753,22 @@ "xfun", "yaml" ], - "Hash": "6e008ab1d696a5283c79765fa7b56b47" + "Hash": "9775eb076713f627c07ce41d8199d8f6" }, "labeling": { "Package": "labeling", - "Version": "0.4.3", + "Version": "0.4.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "graphics", "stats" ], - "Hash": "b64ec208ac5bc1852b285f665d6368b3" + "Hash": "3d5108641f47470611a32d0bdf357a72" }, "lattice": { "Package": "lattice", - "Version": "0.22-6", + "Version": "0.21-8", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -760,7 +779,7 @@ "stats", "utils" ], - "Hash": "cc5ac1ba4c238c7ca9fa6a87ca11a7e2" + "Hash": "0b8a6d63c8770f02a8b5635f3c431e6b" }, "lazyeval": { "Package": "lazyeval", @@ -774,9 +793,9 @@ }, "leaflet": { "Package": "leaflet", - "Version": "2.2.2", + "Version": "2.2.0", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "RColorBrewer", @@ -792,25 +811,24 @@ "scales", "sp", "stats", - "viridisLite", + "viridis", "xfun" ], - "Hash": "ca012d4a706e21ce217ba15f22d402b2" + "Hash": "f73dcc38ff38127bc11ea776786996de" }, "leaflet.providers": { "Package": "leaflet.providers", - "Version": "2.0.0", + "Version": "1.13.0", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ - "R", - "htmltools" + "R" ], - "Hash": "c0b81ad9d5d932772f7a457ac398cf36" + "Hash": "235cd5abed82d9e6e79eb05eee248983" }, "lifecycle": { "Package": "lifecycle", - "Version": "1.0.4", + "Version": "1.0.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -819,31 +837,31 @@ "glue", "rlang" ], - "Hash": "b8552d117e1b808b09a832f589b79035" + "Hash": "001cecbeac1cff9301bdc3775ee46a86" }, "listenv": { "Package": "listenv", - "Version": "0.9.1", + "Version": "0.9.0", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R" ], - "Hash": "e2fca3e12e4db979dccc6e519b10a7ee" + "Hash": "4fbd3679ec8ee169ba28d4b1ea7d0e8f" }, "logger": { "Package": "logger", - "Version": "0.3.0", + "Version": "0.2.2", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "utils" ], - "Hash": "c145edf05cc128e6ffcfa5d872c46329" + "Hash": "c269b06beb2bbadb0d058c0e6fa4ec3d" }, "lubridate": { "Package": "lubridate", - "Version": "1.9.3", + "Version": "1.9.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -852,7 +870,7 @@ "methods", "timechange" ], - "Hash": "680ad542fbcf801442c83a6ac5a2126c" + "Hash": "e25f18436e3efd42c7c590a1c4c15390" }, "magrittr": { "Package": "magrittr", @@ -877,7 +895,7 @@ }, "mgcv": { "Package": "mgcv", - "Version": "1.9-1", + "Version": "1.9-0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -890,7 +908,7 @@ "stats", "utils" ], - "Hash": "110ee9d83b496279960e162ac97764ce" + "Hash": "086028ca0460d0c368028d3bda58f31b" }, "mime": { "Package": "mime", @@ -904,18 +922,18 @@ }, "munsell": { "Package": "munsell", - "Version": "0.5.1", + "Version": "0.5.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "colorspace", "methods" ], - "Hash": "4fd8900853b746af55b81fda99da7695" + "Hash": "6dfe8bf774944bd5595785e3229d8771" }, "nlme": { "Package": "nlme", - "Version": "3.1-164", + "Version": "3.1-163", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -925,17 +943,17 @@ "stats", "utils" ], - "Hash": "a623a2239e642806158bc4dc3f51565d" + "Hash": "8d1938040a05566f4f7a14af4feadd6b" }, "openssl": { "Package": "openssl", - "Version": "2.1.2", + "Version": "2.0.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "askpass" ], - "Hash": "ea2475b073243d9d338aa8f086ce973e" + "Hash": "0f7cd2962e3044bb940cca4f4b5cecbe" }, "pander": { "Package": "pander", @@ -957,15 +975,15 @@ }, "parallelly": { "Package": "parallelly", - "Version": "1.37.1", + "Version": "1.36.0", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "parallel", "tools", "utils" ], - "Hash": "5410df8d22bd36e616f2a2343dbb328c" + "Hash": "bca377e1c87ec89ebed77bba00635b2e" }, "pillar": { "Package": "pillar", @@ -984,21 +1002,6 @@ ], "Hash": "15da5a8412f317beeee6175fbc76f4bb" }, - "pkgbuild": { - "Package": "pkgbuild", - "Version": "1.4.4", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "R6", - "callr", - "cli", - "desc", - "processx" - ], - "Hash": "a29e8e134a460a01e0ca67a4763c595b" - }, "pkgconfig": { "Package": "pkgconfig", "Version": "2.0.3", @@ -1011,7 +1014,7 @@ }, "pkgdown": { "Package": "pkgdown", - "Version": "2.0.9", + "Version": "2.0.7", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1037,11 +1040,11 @@ "xml2", "yaml" ], - "Hash": "8bf1151ed1a48328d71b937e651117a6" + "Hash": "16fa15449c930bf3a7761d3c68f8abf9" }, "pkgload": { "Package": "pkgload", - "Version": "1.3.4", + "Version": "1.3.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1052,13 +1055,12 @@ "fs", "glue", "methods", - "pkgbuild", "rlang", "rprojroot", "utils", "withr" ], - "Hash": "876c618df5ae610be84356d5d7a5d124" + "Hash": "6b0c222c5071efe0f3baf3dae9aa40e2" }, "png": { "Package": "png", @@ -1079,17 +1081,14 @@ }, "prettyunits": { "Package": "prettyunits", - "Version": "1.2.0", + "Version": "1.1.1", "Source": "Repository", "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "6b01fc98b1e86c4f705ce9dcfd2f57c7" + "Hash": "95ef9167b75dde9d2ccc3c7528393e7e" }, "processx": { "Package": "processx", - "Version": "3.8.4", + "Version": "3.8.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1098,21 +1097,20 @@ "ps", "utils" ], - "Hash": "0c90a7d71988856bad2a2a45dd871bb9" + "Hash": "d75b4059d781336efba24021915902b4" }, "progress": { "Package": "progress", - "Version": "1.2.3", + "Version": "1.2.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ - "R", "R6", "crayon", "hms", "prettyunits" ], - "Hash": "f4625e061cb2865f111b47ff163a5ca6" + "Hash": "14dc9f7a3c91ebb14ec5bb9208a07061" }, "progressr": { "Package": "progressr", @@ -1140,18 +1138,18 @@ }, "ps": { "Package": "ps", - "Version": "1.7.6", + "Version": "1.7.5", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "dd2b9319ee0656c8acf45c7f40c59de7" + "Hash": "709d852d33178db54b17c722e5b1e594" }, "purrr": { "Package": "purrr", - "Version": "1.0.2", + "Version": "1.0.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1162,18 +1160,18 @@ "rlang", "vctrs" ], - "Hash": "1cba04a4e9414bdefc9dcaa99649a8dc" + "Hash": "d71c815267c640f17ddbf7f16144b4bb" }, "ragg": { "Package": "ragg", - "Version": "1.3.1", + "Version": "1.2.5", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "systemfonts", "textshaping" ], - "Hash": "539dcb63ce611fe389b4c8e2b546cf24" + "Hash": "690bc058ea2b1b8a407d3cfe3dce3ef9" }, "rappdirs": { "Package": "rappdirs", @@ -1187,9 +1185,9 @@ }, "raster": { "Package": "raster", - "Version": "3.6-26", + "Version": "3.6-23", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "Rcpp", @@ -1197,7 +1195,7 @@ "sp", "terra" ], - "Hash": "7d6eda494f34a644420ac1bfd2a8023a" + "Hash": "337d6d70f7d6bf78df236a5a53f09db0" }, "rematch2": { "Package": "rematch2", @@ -1211,28 +1209,28 @@ }, "renv": { "Package": "renv", - "Version": "1.0.7", + "Version": "1.0.2", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "utils" ], - "Hash": "397b7b2a265bc5a7a06852524dabae20" + "Hash": "4b22ac016fe54028b88d0c68badbd061" }, "rlang": { "Package": "rlang", - "Version": "1.1.3", + "Version": "1.1.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "42548638fae05fd9a9b5f3f437fbbbe2" + "Hash": "dc079ccd156cde8647360f473c1fa718" }, "rmarkdown": { "Package": "rmarkdown", - "Version": "2.26", + "Version": "2.21", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1245,38 +1243,41 @@ "jsonlite", "knitr", "methods", + "stringr", "tinytex", "tools", "utils", "xfun", "yaml" ], - "Hash": "9b148e7f95d33aac01f31282d49e4f44" + "Hash": "493df4ae51e2e984952ea4d5c75786a3" }, "rnaturalearth": { "Package": "rnaturalearth", - "Version": "1.0.1", + "Version": "0.3.4", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "httr", "jsonlite", "sf", + "sp", "terra", "utils" ], - "Hash": "741166cab0fe76d8a5670d3ee459a2a4" + "Hash": "cc93c2e9d777b357103cdc322fb9a649" }, "rnaturalearthdata": { "Package": "rnaturalearthdata", - "Version": "1.0.0", + "Version": "0.1.0", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ - "R" + "R", + "sp" ], - "Hash": "650339de24d9574c0079a4a13baa623d" + "Hash": "0d34b89b43e900467e60f5449226f3e3" }, "rosm": { "Package": "rosm", @@ -1296,29 +1297,29 @@ }, "rprojroot": { "Package": "rprojroot", - "Version": "2.0.4", + "Version": "2.0.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "4c8415e0ec1e29f3f4f6fc108bef0144" + "Hash": "1de7ab598047a87bba48434ba35d497d" }, "s2": { "Package": "s2", - "Version": "1.1.6", + "Version": "1.1.4", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "Rcpp", "wk" ], - "Hash": "32f7b1a15bb01ae809022960abad5363" + "Hash": "f1cbe03bb3346f8e817518ffa20f9f5a" }, "sass": { "Package": "sass", - "Version": "0.4.9", + "Version": "0.4.5", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1328,33 +1329,31 @@ "rappdirs", "rlang" ], - "Hash": "d53dbfddf695303ea4ad66f86e99b95d" + "Hash": "2bb4371a4c80115518261866eab6ab11" }, "scales": { "Package": "scales", - "Version": "1.3.0", + "Version": "1.2.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "R6", "RColorBrewer", - "cli", "farver", - "glue", "labeling", "lifecycle", "munsell", "rlang", "viridisLite" ], - "Hash": "c19df082ba346b0ffa6f833e92de34d1" + "Hash": "906cb23d2f1c5680b8ce439b44c6fa63" }, "sf": { "Package": "sf", - "Version": "1.0-16", + "Version": "1.0-14", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "DBI", "R", @@ -1371,7 +1370,7 @@ "units", "utils" ], - "Hash": "ad57b543f7c3fca05213ba78ff63df9b" + "Hash": "e2111252a76984ca50bf8d6314348681" }, "slippymath": { "Package": "slippymath", @@ -1389,9 +1388,9 @@ }, "sp": { "Package": "sp", - "Version": "2.1-4", + "Version": "2.0-0", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "grDevices", @@ -1402,11 +1401,11 @@ "stats", "utils" ], - "Hash": "75940133cca2e339afce15a586f85b11" + "Hash": "2551981e6f85d59c81652bf654d6c3ca" }, "stringi": { "Package": "stringi", - "Version": "1.8.4", + "Version": "1.7.12", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1415,11 +1414,11 @@ "tools", "utils" ], - "Hash": "39e1144fd75428983dc3f63aa53dfa91" + "Hash": "ca8bd84263c77310739d2cf64d84d7c9" }, "stringr": { "Package": "stringr", - "Version": "1.5.1", + "Version": "1.5.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1432,41 +1431,41 @@ "stringi", "vctrs" ], - "Hash": "960e2ae9e09656611e0b8214ad543207" + "Hash": "671a4d384ae9d32fc47a14e98bfa3dc8" }, "sys": { "Package": "sys", - "Version": "3.4.2", + "Version": "3.4.1", "Source": "Repository", "Repository": "CRAN", - "Hash": "3a1be13d68d47a8cd0bfd74739ca1555" + "Hash": "34c16f1ef796057bfa06d3f4ff818a5d" }, "systemfonts": { "Package": "systemfonts", - "Version": "1.0.6", + "Version": "1.0.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "cpp11" ], - "Hash": "6d538cff441f0f1f36db2209ac7495ac" + "Hash": "90b28393209827327de889f49935140a" }, "terra": { "Package": "terra", - "Version": "1.7-71", + "Version": "1.7-46", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "Rcpp", "methods" ], - "Hash": "e8611881ab70a4fb7a1f629b31e6fcff" + "Hash": "d15182a8a20ffc5880e721bfa1bf4ce9" }, "testthat": { "Package": "testthat", - "Version": "3.2.1.1", + "Version": "3.1.7", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1477,6 +1476,7 @@ "cli", "desc", "digest", + "ellipsis", "evaluate", "jsonlite", "lifecycle", @@ -1491,11 +1491,11 @@ "waldo", "withr" ], - "Hash": "3f6e7e5e2220856ff865e4834766bf2b" + "Hash": "7eb5fd202a61d2fb78af5869b6c08998" }, "textshaping": { "Package": "textshaping", - "Version": "0.3.7", + "Version": "0.3.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1503,7 +1503,7 @@ "cpp11", "systemfonts" ], - "Hash": "997aac9ad649e0ef3b97f96cddd5622b" + "Hash": "1ab6223d3670fac7143202cb6a2d43d5" }, "tibble": { "Package": "tibble", @@ -1526,7 +1526,7 @@ }, "tidyr": { "Package": "tidyr", - "Version": "1.3.1", + "Version": "1.3.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1545,11 +1545,11 @@ "utils", "vctrs" ], - "Hash": "915fb7ce036c22a6a33b5a8adb712eb1" + "Hash": "e47debdc7ce599b070c8e78e8ac0cfcf" }, "tidyselect": { "Package": "tidyselect", - "Version": "1.2.1", + "Version": "1.2.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1561,28 +1561,28 @@ "vctrs", "withr" ], - "Hash": "829f27b9c4919c16b593794a6344d6c0" + "Hash": "79540e5fcd9e0435af547d885f184fd5" }, "timechange": { "Package": "timechange", - "Version": "0.3.0", + "Version": "0.2.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "cpp11" ], - "Hash": "c5f3c201b931cd6474d17d8700ccb1c8" + "Hash": "8548b44f79a35ba1791308b61e6012d7" }, "tinytex": { "Package": "tinytex", - "Version": "0.51", + "Version": "0.45", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "xfun" ], - "Hash": "d44e2fcd2e4e076f0aac540208559d1d" + "Hash": "e4e357f28c2edff493936b6cb30c3d65" }, "triebeard": { "Package": "triebeard", @@ -1596,14 +1596,14 @@ }, "units": { "Package": "units", - "Version": "0.8-5", + "Version": "0.8-3", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "Rcpp" ], - "Hash": "119d19da480e873f72241ff6962ffd83" + "Hash": "880ebc99e4d8f7e5f3caeb2f12632583" }, "urltools": { "Package": "urltools", @@ -1620,17 +1620,17 @@ }, "utf8": { "Package": "utf8", - "Version": "1.2.4", + "Version": "1.2.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "62b65c52671e6665f803ff02954446e9" + "Hash": "1fe17157424bb09c48a8b3b550c753bc" }, "vctrs": { "Package": "vctrs", - "Version": "0.6.5", + "Version": "0.6.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1640,25 +1640,37 @@ "lifecycle", "rlang" ], - "Hash": "c03fa420630029418f7e6da3667aac4a" + "Hash": "a745bda7aff4734c17294bb41d4e4607" + }, + "viridis": { + "Package": "viridis", + "Version": "0.6.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "ggplot2", + "gridExtra", + "viridisLite" + ], + "Hash": "80cd127bc8c9d3d9f0904ead9a9102f1" }, "viridisLite": { "Package": "viridisLite", - "Version": "0.4.2", + "Version": "0.4.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "c826c7c4241b6fc89ff55aaea3fa7491" + "Hash": "62f4b5da3e08d8e5bcba6cac15603f70" }, "waldo": { "Package": "waldo", - "Version": "0.5.2", + "Version": "0.4.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ - "R", "cli", "diffobj", "fansi", @@ -1668,7 +1680,7 @@ "rlang", "tibble" ], - "Hash": "c7d3fd6d29ab077cbac8f0e2751449e6" + "Hash": "035fba89d0c86e2113120f93301b98ad" }, "whisker": { "Package": "whisker", @@ -1679,57 +1691,55 @@ }, "withr": { "Package": "withr", - "Version": "3.0.0", + "Version": "2.5.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "grDevices", - "graphics" + "graphics", + "stats" ], - "Hash": "d31b6c62c10dcf11ec530ca6b0dd5d35" + "Hash": "c0e49a9760983e81e55cdd9be92e7182" }, "wk": { "Package": "wk", - "Version": "0.9.1", + "Version": "0.8.0", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R" ], - "Hash": "5d4545e140e36476f35f20d0ca87963e" + "Hash": "aaf7e20556e3125a09d53453814ad339" }, "xfun": { "Package": "xfun", - "Version": "0.43", + "Version": "0.39", "Source": "Repository", "Repository": "CRAN", "Requirements": [ - "grDevices", "stats", "tools" ], - "Hash": "ab6371d8653ce5f2f9290f4ec7b42a8e" + "Hash": "8f56e9acb54fb525e66464d57ab58bcb" }, "xml2": { "Package": "xml2", - "Version": "1.3.6", + "Version": "1.3.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", - "cli", - "methods", - "rlang" + "methods" ], - "Hash": "1d0336142f4cd25d8d23cd3ba7a8fb61" + "Hash": "7dc765ac9b909487326a7d471fdd3821" }, "yaml": { "Package": "yaml", - "Version": "2.3.8", + "Version": "2.3.7", "Source": "Repository", "Repository": "CRAN", - "Hash": "29240487a071f535f5e5d5a323b7afbd" + "Hash": "0d0056cc5383fbc240ccd0cb584bf436" } } } diff --git a/renv/activate.R b/renv/activate.R index d13f993..2969c73 100644 --- a/renv/activate.R +++ b/renv/activate.R @@ -2,13 +2,11 @@ local({ # the requested version of renv - version <- "1.0.7" + version <- "1.0.2" attr(version, "sha") <- NULL # the project directory - project <- Sys.getenv("RENV_PROJECT") - if (!nzchar(project)) - project <- getwd() + project <- getwd() # use start-up diagnostics if enabled diagnostics <- Sys.getenv("RENV_STARTUP_DIAGNOSTICS", unset = "FALSE") @@ -33,14 +31,6 @@ local({ if (!is.null(override)) return(override) - # if we're being run in a context where R_LIBS is already set, - # don't load -- presumably we're being run as a sub-process and - # the parent process has already set up library paths for us - rcmd <- Sys.getenv("R_CMD", unset = NA) - rlibs <- Sys.getenv("R_LIBS", unset = NA) - if (!is.na(rlibs) && !is.na(rcmd)) - return(FALSE) - # next, check environment variables # TODO: prefer using the configuration one in the future envvars <- c( @@ -60,22 +50,9 @@ local({ }) - # bail if we're not enabled - if (!enabled) { - - # if we're not enabled, we might still need to manually load - # the user profile here - profile <- Sys.getenv("R_PROFILE_USER", unset = "~/.Rprofile") - if (file.exists(profile)) { - cfg <- Sys.getenv("RENV_CONFIG_USER_PROFILE", unset = "TRUE") - if (tolower(cfg) %in% c("true", "t", "1")) - sys.source(profile, envir = globalenv()) - } - + if (!enabled) return(FALSE) - } - # avoid recursion if (identical(getOption("renv.autoloader.running"), TRUE)) { warning("ignoring recursive attempt to run renv autoloader") @@ -131,21 +108,6 @@ local({ } - heredoc <- function(text, leave = 0) { - - # remove leading, trailing whitespace - trimmed <- gsub("^\\s*\\n|\\n\\s*$", "", text) - - # split into lines - lines <- strsplit(trimmed, "\n", fixed = TRUE)[[1L]] - - # compute common indent - indent <- regexpr("[^[:space:]]", lines) - common <- min(setdiff(indent, -1L)) - leave - paste(substring(lines, common), collapse = "\n") - - } - startswith <- function(string, prefix) { substring(string, 1, nchar(prefix)) == prefix } @@ -648,9 +610,6 @@ local({ # if the user has requested an automatic prefix, generate it auto <- Sys.getenv("RENV_PATHS_PREFIX_AUTO", unset = NA) - if (is.na(auto) && getRversion() >= "4.4.0") - auto <- "TRUE" - if (auto %in% c("TRUE", "True", "true", "1")) return(renv_bootstrap_platform_prefix_auto()) @@ -842,23 +801,24 @@ local({ # the loaded version of renv doesn't match the requested version; # give the user instructions on how to proceed - dev <- identical(description[["RemoteType"]], "github") - remote <- if (dev) + remote <- if (!is.null(description[["RemoteSha"]])) { paste("rstudio/renv", description[["RemoteSha"]], sep = "@") - else + } else { paste("renv", description[["Version"]], sep = "@") + } # display both loaded version + sha if available friendly <- renv_bootstrap_version_friendly( version = description[["Version"]], - sha = if (dev) description[["RemoteSha"]] + sha = description[["RemoteSha"]] ) - fmt <- heredoc(" - renv %1$s was loaded from project library, but this project is configured to use renv %2$s. - - Use `renv::record(\"%3$s\")` to record renv %1$s in the lockfile. - - Use `renv::restore(packages = \"renv\")` to install renv %2$s into the project library. - ") + fmt <- paste( + "renv %1$s was loaded from project library, but this project is configured to use renv %2$s.", + "- Use `renv::record(\"%3$s\")` to record renv %1$s in the lockfile.", + "- Use `renv::restore(packages = \"renv\")` to install renv %2$s into the project library.", + sep = "\n" + ) catf(fmt, friendly, renv_bootstrap_version_friendly(version), remote) FALSE @@ -1074,6 +1034,19 @@ local({ } + + renv_bootstrap_in_rstudio <- function() { + commandArgs()[[1]] == "RStudio" + } + + # Used to work around buglet in RStudio if hook uses readline + renv_bootstrap_flush_console <- function() { + tryCatch({ + tools <- as.environment("tools:rstudio") + tools$.rs.api.sendToConsole("", echo = FALSE, focus = FALSE) + }, error = function(cnd) {}) + } + renv_json_read <- function(file = NULL, text = NULL) { jlerr <- NULL @@ -1081,7 +1054,7 @@ local({ # if jsonlite is loaded, use that instead if ("jsonlite" %in% loadedNamespaces()) { - json <- tryCatch(renv_json_read_jsonlite(file, text), error = identity) + json <- catch(renv_json_read_jsonlite(file, text)) if (!inherits(json, "error")) return(json) @@ -1090,7 +1063,7 @@ local({ } # otherwise, fall back to the default JSON reader - json <- tryCatch(renv_json_read_default(file, text), error = identity) + json <- catch(renv_json_read_default(file, text)) if (!inherits(json, "error")) return(json) @@ -1103,14 +1076,14 @@ local({ } renv_json_read_jsonlite <- function(file = NULL, text = NULL) { - text <- paste(text %||% readLines(file, warn = FALSE), collapse = "\n") + text <- paste(text %||% read(file), collapse = "\n") jsonlite::fromJSON(txt = text, simplifyVector = FALSE) } renv_json_read_default <- function(file = NULL, text = NULL) { # find strings in the JSON - text <- paste(text %||% readLines(file, warn = FALSE), collapse = "\n") + text <- paste(text %||% read(file), collapse = "\n") pattern <- '["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]' locs <- gregexpr(pattern, text, perl = TRUE)[[1]] @@ -1158,14 +1131,14 @@ local({ map <- as.list(map) # remap strings in object - remapped <- renv_json_read_remap(json, map) + remapped <- renv_json_remap(json, map) # evaluate eval(remapped, envir = baseenv()) } - renv_json_read_remap <- function(json, map) { + renv_json_remap <- function(json, map) { # fix names if (!is.null(names(json))) { @@ -1192,7 +1165,7 @@ local({ # recurse if (is.recursive(json)) { for (i in seq_along(json)) { - json[i] <- list(renv_json_read_remap(json[[i]], map)) + json[i] <- list(renv_json_remap(json[[i]], map)) } } @@ -1212,8 +1185,16 @@ local({ # construct full libpath libpath <- file.path(root, prefix) - # run bootstrap code - renv_bootstrap_exec(project, libpath, version) + if (renv_bootstrap_in_rstudio()) { + # RStudio only updates console once .Rprofile is finished, so + # instead run code on sessionInit + setHook("rstudio.sessionInit", function(...) { + renv_bootstrap_exec(project, libpath, version) + renv_bootstrap_flush_console() + }) + } else { + renv_bootstrap_exec(project, libpath, version) + } invisible() diff --git a/renv/profiles/dev/renv.lock b/renv/profiles/dev/renv.lock index bb31c91..d90b3c4 100644 --- a/renv/profiles/dev/renv.lock +++ b/renv/profiles/dev/renv.lock @@ -1,6 +1,6 @@ { "R": { - "Version": "4.4.0", + "Version": "4.3.1", "Repositories": [ { "Name": "CRAN", @@ -11,29 +11,29 @@ "Packages": { "DBI": { "Package": "DBI", - "Version": "1.2.2", + "Version": "1.1.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "164809cd72e1d5160b4cb3aa57f510fe" + "Hash": "b2866e62bab9378c3cc9476a1954226b" }, "KernSmooth": { "Package": "KernSmooth", - "Version": "2.23-22", + "Version": "2.23-20", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "stats" ], - "Hash": "2fecebc3047322fa5930f74fae5de70f" + "Hash": "8dcfa99b14c296bc9f1fd64d52fd3ce7" }, "MASS": { "Package": "MASS", - "Version": "7.3-60.2", + "Version": "7.3-58.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -44,16 +44,15 @@ "stats", "utils" ], - "Hash": "2f342c46163b0b54d7b64d1f798e2c78" + "Hash": "9586b552d57f5516fe4d25398c1bacd6" }, "Matrix": { "Package": "Matrix", - "Version": "1.7-0", + "Version": "1.5-3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", - "grDevices", "graphics", "grid", "lattice", @@ -61,7 +60,7 @@ "stats", "utils" ], - "Hash": "1920b2f11133b12350024297d8a4ff4a" + "Hash": "4006dffe49958d2dd591c17e61e60591" }, "R6": { "Package": "R6", @@ -85,20 +84,20 @@ }, "Rcpp": { "Package": "Rcpp", - "Version": "1.0.12", + "Version": "1.0.11", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "methods", "utils" ], - "Hash": "5ea2700d21e038ace58269ecdbeb9ec0" + "Hash": "ae6cbbe1492f4de79c45fce06f967ce8" }, "abind": { "Package": "abind", "Version": "1.4-5", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "methods", @@ -138,35 +137,30 @@ }, "brio": { "Package": "brio", - "Version": "1.1.5", + "Version": "1.1.3", "Source": "Repository", "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "c1ee497a6d999947c2c224ae46799b1a" + "Hash": "976cf154dfb043c012d87cddd8bca363" }, "bslib": { "Package": "bslib", - "Version": "0.7.0", + "Version": "0.5.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "base64enc", "cachem", - "fastmap", "grDevices", "htmltools", "jquerylib", "jsonlite", - "lifecycle", "memoise", "mime", "rlang", "sass" ], - "Hash": "8644cc53f43828f19133548195d7e59e" + "Hash": "283015ddfbb9d7bf15ea9f0b5698f0d9" }, "cachem": { "Package": "cachem", @@ -181,7 +175,7 @@ }, "callr": { "Package": "callr", - "Version": "3.7.6", + "Version": "3.7.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -190,11 +184,11 @@ "processx", "utils" ], - "Hash": "d7e13f49c19103ece9e58ad2d83a7354" + "Hash": "9b2191ede20fa29828139b9900922e51" }, "class": { "Package": "class", - "Version": "7.3-22", + "Version": "7.3-21", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -203,13 +197,13 @@ "stats", "utils" ], - "Hash": "f91f6b29f38b8c280f2b9477787d4bb2" + "Hash": "8ae0d4328e2eb3a582dfd5391a3663b7" }, "classInt": { "Package": "classInt", "Version": "0.4-10", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "KernSmooth", "R", @@ -223,24 +217,24 @@ }, "cli": { "Package": "cli", - "Version": "3.6.2", + "Version": "3.6.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "1216ac65ac55ec0058a6f75d7ca0fd52" + "Hash": "89e6d8219950eac806ae0c489052048a" }, "codetools": { "Package": "codetools", - "Version": "0.2-20", + "Version": "0.2-19", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "61e097f35917d342622f21cdc79c256e" + "Hash": "c089a619a7fae175d149d89164f8c7d8" }, "colorspace": { "Package": "colorspace", @@ -258,13 +252,13 @@ }, "cpp11": { "Package": "cpp11", - "Version": "0.4.7", + "Version": "0.4.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "5a295d7d963cc5035284dcdbaf334f4e" + "Hash": "707fae4bbf73697ec8d85f9d7076c061" }, "crayon": { "Package": "crayon", @@ -280,7 +274,7 @@ }, "crosstalk": { "Package": "crosstalk", - "Version": "1.2.1", + "Version": "1.2.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -289,17 +283,17 @@ "jsonlite", "lazyeval" ], - "Hash": "ab12c7b080a57475248a30f4db6298c0" + "Hash": "6aa54f69598c32177e920eb3402e8293" }, "curl": { "Package": "curl", - "Version": "5.2.1", + "Version": "5.0.2", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R" ], - "Hash": "411ca2c03b1ce5f548345d2fc2685f7a" + "Hash": "511bacbfa153a15251166b463b4da4f9" }, "cyclocomp": { "Package": "cyclocomp", @@ -317,16 +311,17 @@ }, "desc": { "Package": "desc", - "Version": "1.4.3", + "Version": "1.4.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "R6", "cli", + "rprojroot", "utils" ], - "Hash": "99b79fcbd6c4d1ce087f5c5c758b384f" + "Hash": "6b9602c7ebbe87101a9c8edb6e8b6d21" }, "diffobj": { "Package": "diffobj", @@ -345,14 +340,14 @@ }, "digest": { "Package": "digest", - "Version": "0.6.35", + "Version": "0.6.33", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "698ece7ba5a4fa4559e3d537e7ec3d31" + "Hash": "b18a9cf3c003977b0cc49d5e76ebe48d" }, "downlit": { "Package": "downlit", @@ -376,9 +371,9 @@ }, "dplyr": { "Package": "dplyr", - "Version": "1.1.4", + "Version": "1.1.3", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "R6", @@ -395,13 +390,13 @@ "utils", "vctrs" ], - "Hash": "fedd9d00c2944ff00a0e2696ccf048ec" + "Hash": "e85ffbebaad5f70e1a2e2ef4302b4949" }, "e1071": { "Package": "e1071", - "Version": "1.7-14", + "Version": "1.7-13", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "class", "grDevices", @@ -411,13 +406,13 @@ "stats", "utils" ], - "Hash": "4ef372b716824753719a8a38b258442d" + "Hash": "1046cb48d06cb40c2900d8878f03a0fe" }, "elevatr": { "Package": "elevatr", - "Version": "0.99.0", + "Version": "0.4.5", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "curl", @@ -431,25 +426,36 @@ "raster", "sf", "slippymath", - "terra", + "sp", "units" ], - "Hash": "f5a648116dfa343b1c76c40d33a8e834" + "Hash": "867bc9d9ed45489aa01cb30c51fbaec2" + }, + "ellipsis": { + "Package": "ellipsis", + "Version": "0.3.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "rlang" + ], + "Hash": "bb0eec2fe32e88d9e2836c2f73ea2077" }, "evaluate": { "Package": "evaluate", - "Version": "0.23", + "Version": "0.21", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "daf4a1246be12c1fa8c7705a0935c1a0" + "Hash": "d59f3b464e8da1aef82dc04b588b8dfb" }, "fansi": { "Package": "fansi", - "Version": "1.0.6", + "Version": "1.0.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -457,7 +463,7 @@ "grDevices", "utils" ], - "Hash": "962174cf2aeb5b9eea581522286a911f" + "Hash": "1d9e7ad3c8312a192dea7d3db0274fde" }, "farver": { "Package": "farver", @@ -487,20 +493,20 @@ }, "fs": { "Package": "fs", - "Version": "1.6.4", + "Version": "1.6.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "15aeb8c27f5ea5161f9f6a641fafd93a" + "Hash": "47b5f30c720c23999b913a1a635cf0bb" }, "furrr": { "Package": "furrr", "Version": "0.3.1", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "future", @@ -514,9 +520,9 @@ }, "future": { "Package": "future", - "Version": "1.33.2", + "Version": "1.33.0", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "digest", "globals", @@ -525,7 +531,7 @@ "parallelly", "utils" ], - "Hash": "fd7b1d69d16d0d114e4fa82db68f184c" + "Hash": "8e92c7bc53e91b9bb1faf9a6ef0e8514" }, "generics": { "Package": "generics", @@ -540,18 +546,18 @@ }, "geodata": { "Package": "geodata", - "Version": "0.5-9", + "Version": "0.5-8", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "terra" ], - "Hash": "5937c0840e80ae8a7506f1d12e454e5a" + "Hash": "93d238706f3fe7c326a7d0bbc2fecdb8" }, "ggplot2": { "Package": "ggplot2", - "Version": "3.5.1", + "Version": "3.4.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -572,13 +578,13 @@ "vctrs", "withr" ], - "Hash": "44c6a2f8202d5b7e878ea274b1092426" + "Hash": "85846544c596e71f8f46483ab165da33" }, "ggspatial": { "Package": "ggspatial", "Version": "1.1.9", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "abind", @@ -597,29 +603,43 @@ }, "globals": { "Package": "globals", - "Version": "0.16.3", + "Version": "0.16.2", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "codetools" ], - "Hash": "2580567908cafd4f187c1e5a91e98b7f" + "Hash": "baa9585ab4ce47a9f4618e671778cc6f" }, "glue": { "Package": "glue", - "Version": "1.7.0", + "Version": "1.6.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "e0b3a53876554bd45879e596cdb10a52" + "Hash": "4f2596dfb05dac67b9dc558e5c6fba2e" + }, + "gridExtra": { + "Package": "gridExtra", + "Version": "2.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "grDevices", + "graphics", + "grid", + "gtable", + "utils" + ], + "Hash": "7d7f283939f563670a697165b2cf5560" }, "gtable": { "Package": "gtable", - "Version": "0.3.5", + "Version": "0.3.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -630,7 +650,7 @@ "lifecycle", "rlang" ], - "Hash": "e18861963cbc65a27736e02b3cd3c4a0" + "Hash": "b29cf3031f49b04ab9c852c912547eef" }, "highr": { "Package": "highr", @@ -659,23 +679,24 @@ }, "htmltools": { "Package": "htmltools", - "Version": "0.5.8.1", + "Version": "0.5.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "base64enc", "digest", + "ellipsis", "fastmap", "grDevices", "rlang", "utils" ], - "Hash": "81d371a9cc60640e74e4ab6ac46dcedc" + "Hash": "a2326a66919a3311f7fbb1e3bf568283" }, "htmlwidgets": { "Package": "htmlwidgets", - "Version": "1.6.4", + "Version": "1.6.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -686,13 +707,13 @@ "rmarkdown", "yaml" ], - "Hash": "04291cc45198225444a397606810ac37" + "Hash": "a865aa85bcb2697f47505bfd70422471" }, "httr": { "Package": "httr", "Version": "1.4.7", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "R6", @@ -718,7 +739,7 @@ "Package": "jpeg", "Version": "0.1-10", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R" ], @@ -736,17 +757,17 @@ }, "jsonlite": { "Package": "jsonlite", - "Version": "1.8.8", + "Version": "1.8.7", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "methods" ], - "Hash": "e1b9c55281c5adc4dd113652d9e26768" + "Hash": "266a20443ca13c65688b2116d5220f76" }, "knitr": { "Package": "knitr", - "Version": "1.46", + "Version": "1.43", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -758,7 +779,7 @@ "xfun", "yaml" ], - "Hash": "6e008ab1d696a5283c79765fa7b56b47" + "Hash": "9775eb076713f627c07ce41d8199d8f6" }, "labeling": { "Package": "labeling", @@ -773,7 +794,7 @@ }, "lattice": { "Package": "lattice", - "Version": "0.22-6", + "Version": "0.20-45", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -784,7 +805,7 @@ "stats", "utils" ], - "Hash": "cc5ac1ba4c238c7ca9fa6a87ca11a7e2" + "Hash": "b64cdbb2b340437c4ee047a1f4c4377b" }, "lazyeval": { "Package": "lazyeval", @@ -798,9 +819,9 @@ }, "leaflet": { "Package": "leaflet", - "Version": "2.2.2", + "Version": "2.2.0", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "RColorBrewer", @@ -816,25 +837,24 @@ "scales", "sp", "stats", - "viridisLite", + "viridis", "xfun" ], - "Hash": "ca012d4a706e21ce217ba15f22d402b2" + "Hash": "f73dcc38ff38127bc11ea776786996de" }, "leaflet.providers": { "Package": "leaflet.providers", - "Version": "2.0.0", + "Version": "1.13.0", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ - "R", - "htmltools" + "R" ], - "Hash": "c0b81ad9d5d932772f7a457ac398cf36" + "Hash": "235cd5abed82d9e6e79eb05eee248983" }, "lifecycle": { "Package": "lifecycle", - "Version": "1.0.4", + "Version": "1.0.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -843,13 +863,13 @@ "glue", "rlang" ], - "Hash": "b8552d117e1b808b09a832f589b79035" + "Hash": "001cecbeac1cff9301bdc3775ee46a86" }, "lintr": { "Package": "lintr", - "Version": "3.1.2", + "Version": "3.1.0", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "backports", @@ -864,31 +884,31 @@ "xml2", "xmlparsedata" ], - "Hash": "08cff46381a242d44c0d8dd0aabd9f71" + "Hash": "2b4b803af6017e93b67ddaf0eacba918" }, "listenv": { "Package": "listenv", - "Version": "0.9.1", + "Version": "0.9.0", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R" ], - "Hash": "e2fca3e12e4db979dccc6e519b10a7ee" + "Hash": "4fbd3679ec8ee169ba28d4b1ea7d0e8f" }, "logger": { "Package": "logger", - "Version": "0.3.0", + "Version": "0.2.2", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "utils" ], - "Hash": "c145edf05cc128e6ffcfa5d872c46329" + "Hash": "c269b06beb2bbadb0d058c0e6fa4ec3d" }, "lubridate": { "Package": "lubridate", - "Version": "1.9.3", + "Version": "1.9.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -897,7 +917,7 @@ "methods", "timechange" ], - "Hash": "680ad542fbcf801442c83a6ac5a2126c" + "Hash": "e25f18436e3efd42c7c590a1c4c15390" }, "magrittr": { "Package": "magrittr", @@ -922,7 +942,7 @@ }, "mgcv": { "Package": "mgcv", - "Version": "1.9-1", + "Version": "1.8-42", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -935,7 +955,7 @@ "stats", "utils" ], - "Hash": "110ee9d83b496279960e162ac97764ce" + "Hash": "3460beba7ccc8946249ba35327ba902a" }, "mime": { "Package": "mime", @@ -949,18 +969,18 @@ }, "munsell": { "Package": "munsell", - "Version": "0.5.1", + "Version": "0.5.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "colorspace", "methods" ], - "Hash": "4fd8900853b746af55b81fda99da7695" + "Hash": "6dfe8bf774944bd5595785e3229d8771" }, "nlme": { "Package": "nlme", - "Version": "3.1-164", + "Version": "3.1-162", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -970,23 +990,23 @@ "stats", "utils" ], - "Hash": "a623a2239e642806158bc4dc3f51565d" + "Hash": "0984ce8da8da9ead8643c5cbbb60f83e" }, "openssl": { "Package": "openssl", - "Version": "2.1.2", + "Version": "2.1.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "askpass" ], - "Hash": "ea2475b073243d9d338aa8f086ce973e" + "Hash": "273a6bb4a9844c296a459d2176673270" }, "pander": { "Package": "pander", "Version": "0.6.5", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "Rcpp", @@ -1002,15 +1022,15 @@ }, "parallelly": { "Package": "parallelly", - "Version": "1.37.1", + "Version": "1.36.0", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "parallel", "tools", "utils" ], - "Hash": "5410df8d22bd36e616f2a2343dbb328c" + "Hash": "bca377e1c87ec89ebed77bba00635b2e" }, "pillar": { "Package": "pillar", @@ -1031,7 +1051,7 @@ }, "pkgbuild": { "Package": "pkgbuild", - "Version": "1.4.4", + "Version": "1.4.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1039,10 +1059,13 @@ "R6", "callr", "cli", + "crayon", "desc", - "processx" + "prettyunits", + "processx", + "rprojroot" ], - "Hash": "a29e8e134a460a01e0ca67a4763c595b" + "Hash": "beb25b32a957a22a5c301a9e441190b3" }, "pkgconfig": { "Package": "pkgconfig", @@ -1056,7 +1079,7 @@ }, "pkgdown": { "Package": "pkgdown", - "Version": "2.0.9", + "Version": "2.0.7", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1082,11 +1105,11 @@ "xml2", "yaml" ], - "Hash": "8bf1151ed1a48328d71b937e651117a6" + "Hash": "16fa15449c930bf3a7761d3c68f8abf9" }, "pkgload": { "Package": "pkgload", - "Version": "1.3.4", + "Version": "1.3.2.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1097,13 +1120,12 @@ "fs", "glue", "methods", - "pkgbuild", "rlang", "rprojroot", "utils", "withr" ], - "Hash": "876c618df5ae610be84356d5d7a5d124" + "Hash": "a7f498a1b2a4a6816148e498509f6e1d" }, "png": { "Package": "png", @@ -1124,17 +1146,14 @@ }, "prettyunits": { "Package": "prettyunits", - "Version": "1.2.0", + "Version": "1.1.1", "Source": "Repository", "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "6b01fc98b1e86c4f705ce9dcfd2f57c7" + "Hash": "95ef9167b75dde9d2ccc3c7528393e7e" }, "processx": { "Package": "processx", - "Version": "3.8.4", + "Version": "3.8.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1143,27 +1162,26 @@ "ps", "utils" ], - "Hash": "0c90a7d71988856bad2a2a45dd871bb9" + "Hash": "3efbd8ac1be0296a46c55387aeace0f3" }, "progress": { "Package": "progress", - "Version": "1.2.3", + "Version": "1.2.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ - "R", "R6", "crayon", "hms", "prettyunits" ], - "Hash": "f4625e061cb2865f111b47ff163a5ca6" + "Hash": "14dc9f7a3c91ebb14ec5bb9208a07061" }, "progressr": { "Package": "progressr", "Version": "0.14.0", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "digest", @@ -1175,7 +1193,7 @@ "Package": "proxy", "Version": "0.4-27", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "stats", @@ -1185,14 +1203,14 @@ }, "ps": { "Package": "ps", - "Version": "1.7.6", + "Version": "1.7.5", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "dd2b9319ee0656c8acf45c7f40c59de7" + "Hash": "709d852d33178db54b17c722e5b1e594" }, "purrr": { "Package": "purrr", @@ -1211,14 +1229,14 @@ }, "ragg": { "Package": "ragg", - "Version": "1.3.1", + "Version": "1.2.5", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "systemfonts", "textshaping" ], - "Hash": "539dcb63ce611fe389b4c8e2b546cf24" + "Hash": "690bc058ea2b1b8a407d3cfe3dce3ef9" }, "rappdirs": { "Package": "rappdirs", @@ -1232,9 +1250,9 @@ }, "raster": { "Package": "raster", - "Version": "3.6-26", + "Version": "3.6-23", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "Rcpp", @@ -1242,7 +1260,7 @@ "sp", "terra" ], - "Hash": "7d6eda494f34a644420ac1bfd2a8023a" + "Hash": "337d6d70f7d6bf78df236a5a53f09db0" }, "rcmdcheck": { "Package": "rcmdcheck", @@ -1278,7 +1296,7 @@ }, "remotes": { "Package": "remotes", - "Version": "2.5.0", + "Version": "2.4.2.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1288,15 +1306,17 @@ "tools", "utils" ], - "Hash": "3ee025083e66f18db6cf27b56e23e141" + "Hash": "63d15047eb239f95160112bcadc4fcb9" }, "renv": { "Package": "renv", - "Version": "1.0.7", - "OS_type": null, - "NeedsCompilation": "no", + "Version": "1.0.2", + "Source": "Repository", "Repository": "CRAN", - "Source": "Repository" + "Requirements": [ + "utils" + ], + "Hash": "4b22ac016fe54028b88d0c68badbd061" }, "rex": { "Package": "rex", @@ -1310,20 +1330,20 @@ }, "rlang": { "Package": "rlang", - "Version": "1.1.3", + "Version": "1.1.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "42548638fae05fd9a9b5f3f437fbbbe2" + "Hash": "a85c767b55f0bf9b7ad16c6d7baee5bb" }, "rmarkdown": { "Package": "rmarkdown", - "Version": "2.26", + "Version": "2.24", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "bslib", @@ -1334,44 +1354,47 @@ "jsonlite", "knitr", "methods", + "stringr", "tinytex", "tools", "utils", "xfun", "yaml" ], - "Hash": "9b148e7f95d33aac01f31282d49e4f44" + "Hash": "3854c37590717c08c32ec8542a2e0a35" }, "rnaturalearth": { "Package": "rnaturalearth", - "Version": "1.0.1", + "Version": "0.3.4", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "httr", "jsonlite", "sf", + "sp", "terra", "utils" ], - "Hash": "741166cab0fe76d8a5670d3ee459a2a4" + "Hash": "cc93c2e9d777b357103cdc322fb9a649" }, "rnaturalearthdata": { "Package": "rnaturalearthdata", - "Version": "1.0.0", + "Version": "0.1.0", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ - "R" + "R", + "sp" ], - "Hash": "650339de24d9574c0079a4a13baa623d" + "Hash": "0d34b89b43e900467e60f5449226f3e3" }, "rosm": { "Package": "rosm", "Version": "0.3.0", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "curl", "glue", @@ -1385,29 +1408,29 @@ }, "rprojroot": { "Package": "rprojroot", - "Version": "2.0.4", + "Version": "2.0.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "4c8415e0ec1e29f3f4f6fc108bef0144" + "Hash": "1de7ab598047a87bba48434ba35d497d" }, "s2": { "Package": "s2", - "Version": "1.1.6", + "Version": "1.1.4", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "Rcpp", "wk" ], - "Hash": "32f7b1a15bb01ae809022960abad5363" + "Hash": "f1cbe03bb3346f8e817518ffa20f9f5a" }, "sass": { "Package": "sass", - "Version": "0.4.9", + "Version": "0.4.7", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1417,27 +1440,25 @@ "rappdirs", "rlang" ], - "Hash": "d53dbfddf695303ea4ad66f86e99b95d" + "Hash": "6bd4d33b50ff927191ec9acbf52fd056" }, "scales": { "Package": "scales", - "Version": "1.3.0", + "Version": "1.2.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "R6", "RColorBrewer", - "cli", "farver", - "glue", "labeling", "lifecycle", "munsell", "rlang", "viridisLite" ], - "Hash": "c19df082ba346b0ffa6f833e92de34d1" + "Hash": "906cb23d2f1c5680b8ce439b44c6fa63" }, "sessioninfo": { "Package": "sessioninfo", @@ -1454,9 +1475,9 @@ }, "sf": { "Package": "sf", - "Version": "1.0-16", + "Version": "1.0-14", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "DBI", "R", @@ -1473,13 +1494,13 @@ "units", "utils" ], - "Hash": "ad57b543f7c3fca05213ba78ff63df9b" + "Hash": "e2111252a76984ca50bf8d6314348681" }, "slippymath": { "Package": "slippymath", "Version": "0.3.1", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "png", @@ -1491,9 +1512,9 @@ }, "sp": { "Package": "sp", - "Version": "2.1-4", + "Version": "2.0-0", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "grDevices", @@ -1504,11 +1525,11 @@ "stats", "utils" ], - "Hash": "75940133cca2e339afce15a586f85b11" + "Hash": "2551981e6f85d59c81652bf654d6c3ca" }, "stringi": { "Package": "stringi", - "Version": "1.8.4", + "Version": "1.7.12", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1517,11 +1538,11 @@ "tools", "utils" ], - "Hash": "39e1144fd75428983dc3f63aa53dfa91" + "Hash": "ca8bd84263c77310739d2cf64d84d7c9" }, "stringr": { "Package": "stringr", - "Version": "1.5.1", + "Version": "1.5.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1534,7 +1555,7 @@ "stringi", "vctrs" ], - "Hash": "960e2ae9e09656611e0b8214ad543207" + "Hash": "671a4d384ae9d32fc47a14e98bfa3dc8" }, "sys": { "Package": "sys", @@ -1545,32 +1566,32 @@ }, "systemfonts": { "Package": "systemfonts", - "Version": "1.0.6", + "Version": "1.0.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "cpp11" ], - "Hash": "6d538cff441f0f1f36db2209ac7495ac" + "Hash": "90b28393209827327de889f49935140a" }, "terra": { "Package": "terra", - "Version": "1.7-71", + "Version": "1.7-46", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "Rcpp", "methods" ], - "Hash": "e8611881ab70a4fb7a1f629b31e6fcff" + "Hash": "d15182a8a20ffc5880e721bfa1bf4ce9" }, "testthat": { "Package": "testthat", - "Version": "3.2.1.1", + "Version": "3.1.10", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "R6", @@ -1579,6 +1600,7 @@ "cli", "desc", "digest", + "ellipsis", "evaluate", "jsonlite", "lifecycle", @@ -1593,11 +1615,11 @@ "waldo", "withr" ], - "Hash": "3f6e7e5e2220856ff865e4834766bf2b" + "Hash": "6f403dc49295610a3a67ea1a9ca64346" }, "textshaping": { "Package": "textshaping", - "Version": "0.3.7", + "Version": "0.3.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1605,7 +1627,7 @@ "cpp11", "systemfonts" ], - "Hash": "997aac9ad649e0ef3b97f96cddd5622b" + "Hash": "1ab6223d3670fac7143202cb6a2d43d5" }, "tibble": { "Package": "tibble", @@ -1628,7 +1650,7 @@ }, "tidyr": { "Package": "tidyr", - "Version": "1.3.1", + "Version": "1.3.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1647,11 +1669,11 @@ "utils", "vctrs" ], - "Hash": "915fb7ce036c22a6a33b5a8adb712eb1" + "Hash": "e47debdc7ce599b070c8e78e8ac0cfcf" }, "tidyselect": { "Package": "tidyselect", - "Version": "1.2.1", + "Version": "1.2.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1663,34 +1685,34 @@ "vctrs", "withr" ], - "Hash": "829f27b9c4919c16b593794a6344d6c0" + "Hash": "79540e5fcd9e0435af547d885f184fd5" }, "timechange": { "Package": "timechange", - "Version": "0.3.0", + "Version": "0.2.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "cpp11" ], - "Hash": "c5f3c201b931cd6474d17d8700ccb1c8" + "Hash": "8548b44f79a35ba1791308b61e6012d7" }, "tinytex": { "Package": "tinytex", - "Version": "0.51", + "Version": "0.46", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "xfun" ], - "Hash": "d44e2fcd2e4e076f0aac540208559d1d" + "Hash": "0c41a73214d982f539c56a7773c7afa5" }, "triebeard": { "Package": "triebeard", "Version": "0.4.1", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "Rcpp" ], @@ -1698,20 +1720,20 @@ }, "units": { "Package": "units", - "Version": "0.8-5", + "Version": "0.8-3", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "Rcpp" ], - "Hash": "119d19da480e873f72241ff6962ffd83" + "Hash": "880ebc99e4d8f7e5f3caeb2f12632583" }, "urltools": { "Package": "urltools", "Version": "1.7.3", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "Rcpp", @@ -1722,17 +1744,17 @@ }, "utf8": { "Package": "utf8", - "Version": "1.2.4", + "Version": "1.2.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "62b65c52671e6665f803ff02954446e9" + "Hash": "1fe17157424bb09c48a8b3b550c753bc" }, "vctrs": { "Package": "vctrs", - "Version": "0.6.5", + "Version": "0.6.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1742,7 +1764,20 @@ "lifecycle", "rlang" ], - "Hash": "c03fa420630029418f7e6da3667aac4a" + "Hash": "d0ef2856b83dc33ea6e255caf6229ee2" + }, + "viridis": { + "Package": "viridis", + "Version": "0.6.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "ggplot2", + "gridExtra", + "viridisLite" + ], + "Hash": "80cd127bc8c9d3d9f0904ead9a9102f1" }, "viridisLite": { "Package": "viridisLite", @@ -1756,11 +1791,10 @@ }, "waldo": { "Package": "waldo", - "Version": "0.5.2", + "Version": "0.5.1", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ - "R", "cli", "diffobj", "fansi", @@ -1770,7 +1804,7 @@ "rlang", "tibble" ], - "Hash": "c7d3fd6d29ab077cbac8f0e2751449e6" + "Hash": "2c993415154cdb94649d99ae138ff5e5" }, "whisker": { "Package": "whisker", @@ -1781,50 +1815,48 @@ }, "withr": { "Package": "withr", - "Version": "3.0.0", + "Version": "2.5.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "grDevices", - "graphics" + "graphics", + "stats" ], - "Hash": "d31b6c62c10dcf11ec530ca6b0dd5d35" + "Hash": "c0e49a9760983e81e55cdd9be92e7182" }, "wk": { "Package": "wk", - "Version": "0.9.1", + "Version": "0.8.0", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R" ], - "Hash": "5d4545e140e36476f35f20d0ca87963e" + "Hash": "aaf7e20556e3125a09d53453814ad339" }, "xfun": { "Package": "xfun", - "Version": "0.43", + "Version": "0.40", "Source": "Repository", "Repository": "CRAN", "Requirements": [ - "grDevices", "stats", "tools" ], - "Hash": "ab6371d8653ce5f2f9290f4ec7b42a8e" + "Hash": "be07d23211245fc7d4209f54c4e4ffc8" }, "xml2": { "Package": "xml2", - "Version": "1.3.6", + "Version": "1.3.5", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", - "cli", - "methods", - "rlang" + "methods" ], - "Hash": "1d0336142f4cd25d8d23cd3ba7a8fb61" + "Hash": "6c40e5cfcc6aefd88110666e18c31f40" }, "xmlparsedata": { "Package": "xmlparsedata", @@ -1838,21 +1870,21 @@ }, "xopen": { "Package": "xopen", - "Version": "1.0.1", + "Version": "1.0.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "processx" ], - "Hash": "423df1e86d5533fcb73c6b02b4923b49" + "Hash": "6c85f015dee9cc7710ddd20f86881f58" }, "yaml": { "Package": "yaml", - "Version": "2.3.8", + "Version": "2.3.7", "Source": "Repository", "Repository": "CRAN", - "Hash": "29240487a071f535f5e5d5a323b7afbd" + "Hash": "0d0056cc5383fbc240ccd0cb584bf436" } } } diff --git a/renv/profiles/dev/renv/settings.json b/renv/profiles/dev/renv/settings.json deleted file mode 100644 index ffdbb32..0000000 --- a/renv/profiles/dev/renv/settings.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "bioconductor.version": null, - "external.libraries": [], - "ignored.packages": [], - "package.dependency.fields": [ - "Imports", - "Depends", - "LinkingTo" - ], - "ppm.enabled": null, - "ppm.ignored.urls": [], - "r.version": null, - "snapshot.type": "implicit", - "use.cache": true, - "vcs.ignore.cellar": true, - "vcs.ignore.library": true, - "vcs.ignore.local": true, - "vcs.manage.ignores": true -} From 0dd18b9d0c179f2cdc9629f3053f7533701a52b3 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Thu, 9 May 2024 18:04:14 +0200 Subject: [PATCH 08/35] :arrow_up: update dependencies Update dependencies using the old R-4.3 --- renv/activate.R | 105 ++++---- renv/profiles/dev/renv.lock | 469 +++++++++++++++++------------------- 2 files changed, 281 insertions(+), 293 deletions(-) diff --git a/renv/activate.R b/renv/activate.R index 2969c73..d13f993 100644 --- a/renv/activate.R +++ b/renv/activate.R @@ -2,11 +2,13 @@ local({ # the requested version of renv - version <- "1.0.2" + version <- "1.0.7" attr(version, "sha") <- NULL # the project directory - project <- getwd() + project <- Sys.getenv("RENV_PROJECT") + if (!nzchar(project)) + project <- getwd() # use start-up diagnostics if enabled diagnostics <- Sys.getenv("RENV_STARTUP_DIAGNOSTICS", unset = "FALSE") @@ -31,6 +33,14 @@ local({ if (!is.null(override)) return(override) + # if we're being run in a context where R_LIBS is already set, + # don't load -- presumably we're being run as a sub-process and + # the parent process has already set up library paths for us + rcmd <- Sys.getenv("R_CMD", unset = NA) + rlibs <- Sys.getenv("R_LIBS", unset = NA) + if (!is.na(rlibs) && !is.na(rcmd)) + return(FALSE) + # next, check environment variables # TODO: prefer using the configuration one in the future envvars <- c( @@ -50,9 +60,22 @@ local({ }) - if (!enabled) + # bail if we're not enabled + if (!enabled) { + + # if we're not enabled, we might still need to manually load + # the user profile here + profile <- Sys.getenv("R_PROFILE_USER", unset = "~/.Rprofile") + if (file.exists(profile)) { + cfg <- Sys.getenv("RENV_CONFIG_USER_PROFILE", unset = "TRUE") + if (tolower(cfg) %in% c("true", "t", "1")) + sys.source(profile, envir = globalenv()) + } + return(FALSE) + } + # avoid recursion if (identical(getOption("renv.autoloader.running"), TRUE)) { warning("ignoring recursive attempt to run renv autoloader") @@ -108,6 +131,21 @@ local({ } + heredoc <- function(text, leave = 0) { + + # remove leading, trailing whitespace + trimmed <- gsub("^\\s*\\n|\\n\\s*$", "", text) + + # split into lines + lines <- strsplit(trimmed, "\n", fixed = TRUE)[[1L]] + + # compute common indent + indent <- regexpr("[^[:space:]]", lines) + common <- min(setdiff(indent, -1L)) - leave + paste(substring(lines, common), collapse = "\n") + + } + startswith <- function(string, prefix) { substring(string, 1, nchar(prefix)) == prefix } @@ -610,6 +648,9 @@ local({ # if the user has requested an automatic prefix, generate it auto <- Sys.getenv("RENV_PATHS_PREFIX_AUTO", unset = NA) + if (is.na(auto) && getRversion() >= "4.4.0") + auto <- "TRUE" + if (auto %in% c("TRUE", "True", "true", "1")) return(renv_bootstrap_platform_prefix_auto()) @@ -801,24 +842,23 @@ local({ # the loaded version of renv doesn't match the requested version; # give the user instructions on how to proceed - remote <- if (!is.null(description[["RemoteSha"]])) { + dev <- identical(description[["RemoteType"]], "github") + remote <- if (dev) paste("rstudio/renv", description[["RemoteSha"]], sep = "@") - } else { + else paste("renv", description[["Version"]], sep = "@") - } # display both loaded version + sha if available friendly <- renv_bootstrap_version_friendly( version = description[["Version"]], - sha = description[["RemoteSha"]] + sha = if (dev) description[["RemoteSha"]] ) - fmt <- paste( - "renv %1$s was loaded from project library, but this project is configured to use renv %2$s.", - "- Use `renv::record(\"%3$s\")` to record renv %1$s in the lockfile.", - "- Use `renv::restore(packages = \"renv\")` to install renv %2$s into the project library.", - sep = "\n" - ) + fmt <- heredoc(" + renv %1$s was loaded from project library, but this project is configured to use renv %2$s. + - Use `renv::record(\"%3$s\")` to record renv %1$s in the lockfile. + - Use `renv::restore(packages = \"renv\")` to install renv %2$s into the project library. + ") catf(fmt, friendly, renv_bootstrap_version_friendly(version), remote) FALSE @@ -1034,19 +1074,6 @@ local({ } - - renv_bootstrap_in_rstudio <- function() { - commandArgs()[[1]] == "RStudio" - } - - # Used to work around buglet in RStudio if hook uses readline - renv_bootstrap_flush_console <- function() { - tryCatch({ - tools <- as.environment("tools:rstudio") - tools$.rs.api.sendToConsole("", echo = FALSE, focus = FALSE) - }, error = function(cnd) {}) - } - renv_json_read <- function(file = NULL, text = NULL) { jlerr <- NULL @@ -1054,7 +1081,7 @@ local({ # if jsonlite is loaded, use that instead if ("jsonlite" %in% loadedNamespaces()) { - json <- catch(renv_json_read_jsonlite(file, text)) + json <- tryCatch(renv_json_read_jsonlite(file, text), error = identity) if (!inherits(json, "error")) return(json) @@ -1063,7 +1090,7 @@ local({ } # otherwise, fall back to the default JSON reader - json <- catch(renv_json_read_default(file, text)) + json <- tryCatch(renv_json_read_default(file, text), error = identity) if (!inherits(json, "error")) return(json) @@ -1076,14 +1103,14 @@ local({ } renv_json_read_jsonlite <- function(file = NULL, text = NULL) { - text <- paste(text %||% read(file), collapse = "\n") + text <- paste(text %||% readLines(file, warn = FALSE), collapse = "\n") jsonlite::fromJSON(txt = text, simplifyVector = FALSE) } renv_json_read_default <- function(file = NULL, text = NULL) { # find strings in the JSON - text <- paste(text %||% read(file), collapse = "\n") + text <- paste(text %||% readLines(file, warn = FALSE), collapse = "\n") pattern <- '["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]' locs <- gregexpr(pattern, text, perl = TRUE)[[1]] @@ -1131,14 +1158,14 @@ local({ map <- as.list(map) # remap strings in object - remapped <- renv_json_remap(json, map) + remapped <- renv_json_read_remap(json, map) # evaluate eval(remapped, envir = baseenv()) } - renv_json_remap <- function(json, map) { + renv_json_read_remap <- function(json, map) { # fix names if (!is.null(names(json))) { @@ -1165,7 +1192,7 @@ local({ # recurse if (is.recursive(json)) { for (i in seq_along(json)) { - json[i] <- list(renv_json_remap(json[[i]], map)) + json[i] <- list(renv_json_read_remap(json[[i]], map)) } } @@ -1185,16 +1212,8 @@ local({ # construct full libpath libpath <- file.path(root, prefix) - if (renv_bootstrap_in_rstudio()) { - # RStudio only updates console once .Rprofile is finished, so - # instead run code on sessionInit - setHook("rstudio.sessionInit", function(...) { - renv_bootstrap_exec(project, libpath, version) - renv_bootstrap_flush_console() - }) - } else { - renv_bootstrap_exec(project, libpath, version) - } + # run bootstrap code + renv_bootstrap_exec(project, libpath, version) invisible() diff --git a/renv/profiles/dev/renv.lock b/renv/profiles/dev/renv.lock index d90b3c4..88d7cbd 100644 --- a/renv/profiles/dev/renv.lock +++ b/renv/profiles/dev/renv.lock @@ -11,25 +11,25 @@ "Packages": { "DBI": { "Package": "DBI", - "Version": "1.1.3", + "Version": "1.2.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "b2866e62bab9378c3cc9476a1954226b" + "Hash": "164809cd72e1d5160b4cb3aa57f510fe" }, "KernSmooth": { "Package": "KernSmooth", - "Version": "2.23-20", + "Version": "2.23-22", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "stats" ], - "Hash": "8dcfa99b14c296bc9f1fd64d52fd3ce7" + "Hash": "2fecebc3047322fa5930f74fae5de70f" }, "MASS": { "Package": "MASS", @@ -84,14 +84,14 @@ }, "Rcpp": { "Package": "Rcpp", - "Version": "1.0.11", + "Version": "1.0.12", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "methods", "utils" ], - "Hash": "ae6cbbe1492f4de79c45fce06f967ce8" + "Hash": "5ea2700d21e038ace58269ecdbeb9ec0" }, "abind": { "Package": "abind", @@ -137,30 +137,35 @@ }, "brio": { "Package": "brio", - "Version": "1.1.3", + "Version": "1.1.5", "Source": "Repository", "Repository": "CRAN", - "Hash": "976cf154dfb043c012d87cddd8bca363" + "Requirements": [ + "R" + ], + "Hash": "c1ee497a6d999947c2c224ae46799b1a" }, "bslib": { "Package": "bslib", - "Version": "0.5.1", + "Version": "0.7.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "base64enc", "cachem", + "fastmap", "grDevices", "htmltools", "jquerylib", "jsonlite", + "lifecycle", "memoise", "mime", "rlang", "sass" ], - "Hash": "283015ddfbb9d7bf15ea9f0b5698f0d9" + "Hash": "8644cc53f43828f19133548195d7e59e" }, "cachem": { "Package": "cachem", @@ -175,7 +180,7 @@ }, "callr": { "Package": "callr", - "Version": "3.7.3", + "Version": "3.7.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -184,11 +189,11 @@ "processx", "utils" ], - "Hash": "9b2191ede20fa29828139b9900922e51" + "Hash": "d7e13f49c19103ece9e58ad2d83a7354" }, "class": { "Package": "class", - "Version": "7.3-21", + "Version": "7.3-22", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -197,7 +202,7 @@ "stats", "utils" ], - "Hash": "8ae0d4328e2eb3a582dfd5391a3663b7" + "Hash": "f91f6b29f38b8c280f2b9477787d4bb2" }, "classInt": { "Package": "classInt", @@ -217,24 +222,24 @@ }, "cli": { "Package": "cli", - "Version": "3.6.1", + "Version": "3.6.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "89e6d8219950eac806ae0c489052048a" + "Hash": "1216ac65ac55ec0058a6f75d7ca0fd52" }, "codetools": { "Package": "codetools", - "Version": "0.2-19", + "Version": "0.2-20", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "c089a619a7fae175d149d89164f8c7d8" + "Hash": "61e097f35917d342622f21cdc79c256e" }, "colorspace": { "Package": "colorspace", @@ -252,13 +257,13 @@ }, "cpp11": { "Package": "cpp11", - "Version": "0.4.6", + "Version": "0.4.7", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "707fae4bbf73697ec8d85f9d7076c061" + "Hash": "5a295d7d963cc5035284dcdbaf334f4e" }, "crayon": { "Package": "crayon", @@ -274,7 +279,7 @@ }, "crosstalk": { "Package": "crosstalk", - "Version": "1.2.0", + "Version": "1.2.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -283,17 +288,17 @@ "jsonlite", "lazyeval" ], - "Hash": "6aa54f69598c32177e920eb3402e8293" + "Hash": "ab12c7b080a57475248a30f4db6298c0" }, "curl": { "Package": "curl", - "Version": "5.0.2", + "Version": "5.2.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "511bacbfa153a15251166b463b4da4f9" + "Hash": "411ca2c03b1ce5f548345d2fc2685f7a" }, "cyclocomp": { "Package": "cyclocomp", @@ -311,17 +316,16 @@ }, "desc": { "Package": "desc", - "Version": "1.4.2", + "Version": "1.4.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "R6", "cli", - "rprojroot", "utils" ], - "Hash": "6b9602c7ebbe87101a9c8edb6e8b6d21" + "Hash": "99b79fcbd6c4d1ce087f5c5c758b384f" }, "diffobj": { "Package": "diffobj", @@ -340,14 +344,14 @@ }, "digest": { "Package": "digest", - "Version": "0.6.33", + "Version": "0.6.35", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "b18a9cf3c003977b0cc49d5e76ebe48d" + "Hash": "698ece7ba5a4fa4559e3d537e7ec3d31" }, "downlit": { "Package": "downlit", @@ -371,9 +375,9 @@ }, "dplyr": { "Package": "dplyr", - "Version": "1.1.3", + "Version": "1.1.4", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "R6", @@ -390,13 +394,13 @@ "utils", "vctrs" ], - "Hash": "e85ffbebaad5f70e1a2e2ef4302b4949" + "Hash": "fedd9d00c2944ff00a0e2696ccf048ec" }, "e1071": { "Package": "e1071", - "Version": "1.7-13", + "Version": "1.7-14", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "class", "grDevices", @@ -406,13 +410,13 @@ "stats", "utils" ], - "Hash": "1046cb48d06cb40c2900d8878f03a0fe" + "Hash": "4ef372b716824753719a8a38b258442d" }, "elevatr": { "Package": "elevatr", - "Version": "0.4.5", + "Version": "0.99.0", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "curl", @@ -426,36 +430,25 @@ "raster", "sf", "slippymath", - "sp", + "terra", "units" ], - "Hash": "867bc9d9ed45489aa01cb30c51fbaec2" - }, - "ellipsis": { - "Package": "ellipsis", - "Version": "0.3.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "rlang" - ], - "Hash": "bb0eec2fe32e88d9e2836c2f73ea2077" + "Hash": "f5a648116dfa343b1c76c40d33a8e834" }, "evaluate": { "Package": "evaluate", - "Version": "0.21", + "Version": "0.23", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "d59f3b464e8da1aef82dc04b588b8dfb" + "Hash": "daf4a1246be12c1fa8c7705a0935c1a0" }, "fansi": { "Package": "fansi", - "Version": "1.0.4", + "Version": "1.0.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -463,7 +456,7 @@ "grDevices", "utils" ], - "Hash": "1d9e7ad3c8312a192dea7d3db0274fde" + "Hash": "962174cf2aeb5b9eea581522286a911f" }, "farver": { "Package": "farver", @@ -493,14 +486,14 @@ }, "fs": { "Package": "fs", - "Version": "1.6.3", + "Version": "1.6.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "47b5f30c720c23999b913a1a635cf0bb" + "Hash": "15aeb8c27f5ea5161f9f6a641fafd93a" }, "furrr": { "Package": "furrr", @@ -520,9 +513,9 @@ }, "future": { "Package": "future", - "Version": "1.33.0", + "Version": "1.33.2", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "digest", "globals", @@ -531,7 +524,7 @@ "parallelly", "utils" ], - "Hash": "8e92c7bc53e91b9bb1faf9a6ef0e8514" + "Hash": "fd7b1d69d16d0d114e4fa82db68f184c" }, "generics": { "Package": "generics", @@ -546,18 +539,18 @@ }, "geodata": { "Package": "geodata", - "Version": "0.5-8", + "Version": "0.5-9", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "terra" ], - "Hash": "93d238706f3fe7c326a7d0bbc2fecdb8" + "Hash": "5937c0840e80ae8a7506f1d12e454e5a" }, "ggplot2": { "Package": "ggplot2", - "Version": "3.4.3", + "Version": "3.5.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -578,7 +571,7 @@ "vctrs", "withr" ], - "Hash": "85846544c596e71f8f46483ab165da33" + "Hash": "44c6a2f8202d5b7e878ea274b1092426" }, "ggspatial": { "Package": "ggspatial", @@ -603,43 +596,29 @@ }, "globals": { "Package": "globals", - "Version": "0.16.2", + "Version": "0.16.3", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "codetools" ], - "Hash": "baa9585ab4ce47a9f4618e671778cc6f" + "Hash": "2580567908cafd4f187c1e5a91e98b7f" }, "glue": { "Package": "glue", - "Version": "1.6.2", + "Version": "1.7.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "4f2596dfb05dac67b9dc558e5c6fba2e" - }, - "gridExtra": { - "Package": "gridExtra", - "Version": "2.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "grDevices", - "graphics", - "grid", - "gtable", - "utils" - ], - "Hash": "7d7f283939f563670a697165b2cf5560" + "Hash": "e0b3a53876554bd45879e596cdb10a52" }, "gtable": { "Package": "gtable", - "Version": "0.3.4", + "Version": "0.3.5", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -650,7 +629,7 @@ "lifecycle", "rlang" ], - "Hash": "b29cf3031f49b04ab9c852c912547eef" + "Hash": "e18861963cbc65a27736e02b3cd3c4a0" }, "highr": { "Package": "highr", @@ -679,26 +658,25 @@ }, "htmltools": { "Package": "htmltools", - "Version": "0.5.6", + "Version": "0.5.8.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "base64enc", "digest", - "ellipsis", "fastmap", "grDevices", "rlang", "utils" ], - "Hash": "a2326a66919a3311f7fbb1e3bf568283" + "Hash": "81d371a9cc60640e74e4ab6ac46dcedc" }, "htmlwidgets": { "Package": "htmlwidgets", - "Version": "1.6.2", + "Version": "1.6.4", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "grDevices", "htmltools", @@ -707,7 +685,7 @@ "rmarkdown", "yaml" ], - "Hash": "a865aa85bcb2697f47505bfd70422471" + "Hash": "04291cc45198225444a397606810ac37" }, "httr": { "Package": "httr", @@ -757,17 +735,17 @@ }, "jsonlite": { "Package": "jsonlite", - "Version": "1.8.7", + "Version": "1.8.8", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "methods" ], - "Hash": "266a20443ca13c65688b2116d5220f76" + "Hash": "e1b9c55281c5adc4dd113652d9e26768" }, "knitr": { "Package": "knitr", - "Version": "1.43", + "Version": "1.46", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -779,7 +757,7 @@ "xfun", "yaml" ], - "Hash": "9775eb076713f627c07ce41d8199d8f6" + "Hash": "6e008ab1d696a5283c79765fa7b56b47" }, "labeling": { "Package": "labeling", @@ -794,7 +772,7 @@ }, "lattice": { "Package": "lattice", - "Version": "0.20-45", + "Version": "0.22-6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -805,7 +783,7 @@ "stats", "utils" ], - "Hash": "b64cdbb2b340437c4ee047a1f4c4377b" + "Hash": "cc5ac1ba4c238c7ca9fa6a87ca11a7e2" }, "lazyeval": { "Package": "lazyeval", @@ -819,9 +797,9 @@ }, "leaflet": { "Package": "leaflet", - "Version": "2.2.0", + "Version": "2.2.2", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "RColorBrewer", @@ -837,24 +815,25 @@ "scales", "sp", "stats", - "viridis", + "viridisLite", "xfun" ], - "Hash": "f73dcc38ff38127bc11ea776786996de" + "Hash": "ca012d4a706e21ce217ba15f22d402b2" }, "leaflet.providers": { "Package": "leaflet.providers", - "Version": "1.13.0", + "Version": "2.0.0", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ - "R" + "R", + "htmltools" ], - "Hash": "235cd5abed82d9e6e79eb05eee248983" + "Hash": "c0b81ad9d5d932772f7a457ac398cf36" }, "lifecycle": { "Package": "lifecycle", - "Version": "1.0.3", + "Version": "1.0.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -863,13 +842,13 @@ "glue", "rlang" ], - "Hash": "001cecbeac1cff9301bdc3775ee46a86" + "Hash": "b8552d117e1b808b09a832f589b79035" }, "lintr": { "Package": "lintr", - "Version": "3.1.0", + "Version": "3.1.2", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "backports", @@ -884,31 +863,31 @@ "xml2", "xmlparsedata" ], - "Hash": "2b4b803af6017e93b67ddaf0eacba918" + "Hash": "08cff46381a242d44c0d8dd0aabd9f71" }, "listenv": { "Package": "listenv", - "Version": "0.9.0", + "Version": "0.9.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "4fbd3679ec8ee169ba28d4b1ea7d0e8f" + "Hash": "e2fca3e12e4db979dccc6e519b10a7ee" }, "logger": { "Package": "logger", - "Version": "0.2.2", + "Version": "0.3.0", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "utils" ], - "Hash": "c269b06beb2bbadb0d058c0e6fa4ec3d" + "Hash": "c145edf05cc128e6ffcfa5d872c46329" }, "lubridate": { "Package": "lubridate", - "Version": "1.9.2", + "Version": "1.9.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -917,7 +896,7 @@ "methods", "timechange" ], - "Hash": "e25f18436e3efd42c7c590a1c4c15390" + "Hash": "680ad542fbcf801442c83a6ac5a2126c" }, "magrittr": { "Package": "magrittr", @@ -942,7 +921,7 @@ }, "mgcv": { "Package": "mgcv", - "Version": "1.8-42", + "Version": "1.9-1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -955,7 +934,7 @@ "stats", "utils" ], - "Hash": "3460beba7ccc8946249ba35327ba902a" + "Hash": "110ee9d83b496279960e162ac97764ce" }, "mime": { "Package": "mime", @@ -969,18 +948,18 @@ }, "munsell": { "Package": "munsell", - "Version": "0.5.0", + "Version": "0.5.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "colorspace", "methods" ], - "Hash": "6dfe8bf774944bd5595785e3229d8771" + "Hash": "4fd8900853b746af55b81fda99da7695" }, "nlme": { "Package": "nlme", - "Version": "3.1-162", + "Version": "3.1-164", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -990,17 +969,17 @@ "stats", "utils" ], - "Hash": "0984ce8da8da9ead8643c5cbbb60f83e" + "Hash": "a623a2239e642806158bc4dc3f51565d" }, "openssl": { "Package": "openssl", - "Version": "2.1.0", + "Version": "2.1.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "askpass" ], - "Hash": "273a6bb4a9844c296a459d2176673270" + "Hash": "ea2475b073243d9d338aa8f086ce973e" }, "pander": { "Package": "pander", @@ -1022,15 +1001,15 @@ }, "parallelly": { "Package": "parallelly", - "Version": "1.36.0", + "Version": "1.37.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "parallel", "tools", "utils" ], - "Hash": "bca377e1c87ec89ebed77bba00635b2e" + "Hash": "5410df8d22bd36e616f2a2343dbb328c" }, "pillar": { "Package": "pillar", @@ -1051,7 +1030,7 @@ }, "pkgbuild": { "Package": "pkgbuild", - "Version": "1.4.2", + "Version": "1.4.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1059,13 +1038,10 @@ "R6", "callr", "cli", - "crayon", "desc", - "prettyunits", - "processx", - "rprojroot" + "processx" ], - "Hash": "beb25b32a957a22a5c301a9e441190b3" + "Hash": "a29e8e134a460a01e0ca67a4763c595b" }, "pkgconfig": { "Package": "pkgconfig", @@ -1079,7 +1055,7 @@ }, "pkgdown": { "Package": "pkgdown", - "Version": "2.0.7", + "Version": "2.0.9", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1105,11 +1081,11 @@ "xml2", "yaml" ], - "Hash": "16fa15449c930bf3a7761d3c68f8abf9" + "Hash": "8bf1151ed1a48328d71b937e651117a6" }, "pkgload": { "Package": "pkgload", - "Version": "1.3.2.1", + "Version": "1.3.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1120,12 +1096,13 @@ "fs", "glue", "methods", + "pkgbuild", "rlang", "rprojroot", "utils", "withr" ], - "Hash": "a7f498a1b2a4a6816148e498509f6e1d" + "Hash": "876c618df5ae610be84356d5d7a5d124" }, "png": { "Package": "png", @@ -1146,14 +1123,17 @@ }, "prettyunits": { "Package": "prettyunits", - "Version": "1.1.1", + "Version": "1.2.0", "Source": "Repository", "Repository": "CRAN", - "Hash": "95ef9167b75dde9d2ccc3c7528393e7e" + "Requirements": [ + "R" + ], + "Hash": "6b01fc98b1e86c4f705ce9dcfd2f57c7" }, "processx": { "Package": "processx", - "Version": "3.8.2", + "Version": "3.8.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1162,20 +1142,21 @@ "ps", "utils" ], - "Hash": "3efbd8ac1be0296a46c55387aeace0f3" + "Hash": "0c90a7d71988856bad2a2a45dd871bb9" }, "progress": { "Package": "progress", - "Version": "1.2.2", + "Version": "1.2.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ + "R", "R6", "crayon", "hms", "prettyunits" ], - "Hash": "14dc9f7a3c91ebb14ec5bb9208a07061" + "Hash": "f4625e061cb2865f111b47ff163a5ca6" }, "progressr": { "Package": "progressr", @@ -1203,14 +1184,14 @@ }, "ps": { "Package": "ps", - "Version": "1.7.5", + "Version": "1.7.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "709d852d33178db54b17c722e5b1e594" + "Hash": "dd2b9319ee0656c8acf45c7f40c59de7" }, "purrr": { "Package": "purrr", @@ -1229,14 +1210,14 @@ }, "ragg": { "Package": "ragg", - "Version": "1.2.5", + "Version": "1.3.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "systemfonts", "textshaping" ], - "Hash": "690bc058ea2b1b8a407d3cfe3dce3ef9" + "Hash": "539dcb63ce611fe389b4c8e2b546cf24" }, "rappdirs": { "Package": "rappdirs", @@ -1250,9 +1231,9 @@ }, "raster": { "Package": "raster", - "Version": "3.6-23", + "Version": "3.6-26", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "Rcpp", @@ -1260,7 +1241,7 @@ "sp", "terra" ], - "Hash": "337d6d70f7d6bf78df236a5a53f09db0" + "Hash": "7d6eda494f34a644420ac1bfd2a8023a" }, "rcmdcheck": { "Package": "rcmdcheck", @@ -1296,7 +1277,7 @@ }, "remotes": { "Package": "remotes", - "Version": "2.4.2.1", + "Version": "2.5.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1306,17 +1287,17 @@ "tools", "utils" ], - "Hash": "63d15047eb239f95160112bcadc4fcb9" + "Hash": "3ee025083e66f18db6cf27b56e23e141" }, "renv": { "Package": "renv", - "Version": "1.0.2", + "Version": "1.0.7", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "utils" ], - "Hash": "4b22ac016fe54028b88d0c68badbd061" + "Hash": "397b7b2a265bc5a7a06852524dabae20" }, "rex": { "Package": "rex", @@ -1330,20 +1311,20 @@ }, "rlang": { "Package": "rlang", - "Version": "1.1.1", + "Version": "1.1.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "a85c767b55f0bf9b7ad16c6d7baee5bb" + "Hash": "42548638fae05fd9a9b5f3f437fbbbe2" }, "rmarkdown": { "Package": "rmarkdown", - "Version": "2.24", + "Version": "2.26", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "bslib", @@ -1354,41 +1335,38 @@ "jsonlite", "knitr", "methods", - "stringr", "tinytex", "tools", "utils", "xfun", "yaml" ], - "Hash": "3854c37590717c08c32ec8542a2e0a35" + "Hash": "9b148e7f95d33aac01f31282d49e4f44" }, "rnaturalearth": { "Package": "rnaturalearth", - "Version": "0.3.4", + "Version": "1.0.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "httr", "jsonlite", "sf", - "sp", "terra", "utils" ], - "Hash": "cc93c2e9d777b357103cdc322fb9a649" + "Hash": "741166cab0fe76d8a5670d3ee459a2a4" }, "rnaturalearthdata": { "Package": "rnaturalearthdata", - "Version": "0.1.0", + "Version": "1.0.0", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ - "R", - "sp" + "R" ], - "Hash": "0d34b89b43e900467e60f5449226f3e3" + "Hash": "650339de24d9574c0079a4a13baa623d" }, "rosm": { "Package": "rosm", @@ -1408,29 +1386,29 @@ }, "rprojroot": { "Package": "rprojroot", - "Version": "2.0.3", + "Version": "2.0.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "1de7ab598047a87bba48434ba35d497d" + "Hash": "4c8415e0ec1e29f3f4f6fc108bef0144" }, "s2": { "Package": "s2", - "Version": "1.1.4", + "Version": "1.1.6", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "Rcpp", "wk" ], - "Hash": "f1cbe03bb3346f8e817518ffa20f9f5a" + "Hash": "32f7b1a15bb01ae809022960abad5363" }, "sass": { "Package": "sass", - "Version": "0.4.7", + "Version": "0.4.9", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1440,25 +1418,27 @@ "rappdirs", "rlang" ], - "Hash": "6bd4d33b50ff927191ec9acbf52fd056" + "Hash": "d53dbfddf695303ea4ad66f86e99b95d" }, "scales": { "Package": "scales", - "Version": "1.2.1", + "Version": "1.3.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "R6", "RColorBrewer", + "cli", "farver", + "glue", "labeling", "lifecycle", "munsell", "rlang", "viridisLite" ], - "Hash": "906cb23d2f1c5680b8ce439b44c6fa63" + "Hash": "c19df082ba346b0ffa6f833e92de34d1" }, "sessioninfo": { "Package": "sessioninfo", @@ -1475,9 +1455,9 @@ }, "sf": { "Package": "sf", - "Version": "1.0-14", + "Version": "1.0-16", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "DBI", "R", @@ -1494,7 +1474,7 @@ "units", "utils" ], - "Hash": "e2111252a76984ca50bf8d6314348681" + "Hash": "ad57b543f7c3fca05213ba78ff63df9b" }, "slippymath": { "Package": "slippymath", @@ -1512,9 +1492,9 @@ }, "sp": { "Package": "sp", - "Version": "2.0-0", + "Version": "2.1-4", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "grDevices", @@ -1525,11 +1505,11 @@ "stats", "utils" ], - "Hash": "2551981e6f85d59c81652bf654d6c3ca" + "Hash": "75940133cca2e339afce15a586f85b11" }, "stringi": { "Package": "stringi", - "Version": "1.7.12", + "Version": "1.8.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1538,11 +1518,11 @@ "tools", "utils" ], - "Hash": "ca8bd84263c77310739d2cf64d84d7c9" + "Hash": "39e1144fd75428983dc3f63aa53dfa91" }, "stringr": { "Package": "stringr", - "Version": "1.5.0", + "Version": "1.5.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1555,7 +1535,7 @@ "stringi", "vctrs" ], - "Hash": "671a4d384ae9d32fc47a14e98bfa3dc8" + "Hash": "960e2ae9e09656611e0b8214ad543207" }, "sys": { "Package": "sys", @@ -1566,32 +1546,32 @@ }, "systemfonts": { "Package": "systemfonts", - "Version": "1.0.4", + "Version": "1.0.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "cpp11" ], - "Hash": "90b28393209827327de889f49935140a" + "Hash": "6d538cff441f0f1f36db2209ac7495ac" }, "terra": { "Package": "terra", - "Version": "1.7-46", + "Version": "1.7-71", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "Rcpp", "methods" ], - "Hash": "d15182a8a20ffc5880e721bfa1bf4ce9" + "Hash": "e8611881ab70a4fb7a1f629b31e6fcff" }, "testthat": { "Package": "testthat", - "Version": "3.1.10", + "Version": "3.2.1.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "R6", @@ -1600,7 +1580,6 @@ "cli", "desc", "digest", - "ellipsis", "evaluate", "jsonlite", "lifecycle", @@ -1615,11 +1594,11 @@ "waldo", "withr" ], - "Hash": "6f403dc49295610a3a67ea1a9ca64346" + "Hash": "3f6e7e5e2220856ff865e4834766bf2b" }, "textshaping": { "Package": "textshaping", - "Version": "0.3.6", + "Version": "0.3.7", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1627,7 +1606,7 @@ "cpp11", "systemfonts" ], - "Hash": "1ab6223d3670fac7143202cb6a2d43d5" + "Hash": "997aac9ad649e0ef3b97f96cddd5622b" }, "tibble": { "Package": "tibble", @@ -1650,9 +1629,9 @@ }, "tidyr": { "Package": "tidyr", - "Version": "1.3.0", + "Version": "1.3.1", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", "Requirements": [ "R", "cli", @@ -1669,11 +1648,11 @@ "utils", "vctrs" ], - "Hash": "e47debdc7ce599b070c8e78e8ac0cfcf" + "Hash": "915fb7ce036c22a6a33b5a8adb712eb1" }, "tidyselect": { "Package": "tidyselect", - "Version": "1.2.0", + "Version": "1.2.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1685,28 +1664,28 @@ "vctrs", "withr" ], - "Hash": "79540e5fcd9e0435af547d885f184fd5" + "Hash": "829f27b9c4919c16b593794a6344d6c0" }, "timechange": { "Package": "timechange", - "Version": "0.2.0", + "Version": "0.3.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "cpp11" ], - "Hash": "8548b44f79a35ba1791308b61e6012d7" + "Hash": "c5f3c201b931cd6474d17d8700ccb1c8" }, "tinytex": { "Package": "tinytex", - "Version": "0.46", + "Version": "0.51", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "xfun" ], - "Hash": "0c41a73214d982f539c56a7773c7afa5" + "Hash": "d44e2fcd2e4e076f0aac540208559d1d" }, "triebeard": { "Package": "triebeard", @@ -1720,14 +1699,14 @@ }, "units": { "Package": "units", - "Version": "0.8-3", + "Version": "0.8-5", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "Rcpp" ], - "Hash": "880ebc99e4d8f7e5f3caeb2f12632583" + "Hash": "119d19da480e873f72241ff6962ffd83" }, "urltools": { "Package": "urltools", @@ -1744,17 +1723,17 @@ }, "utf8": { "Package": "utf8", - "Version": "1.2.3", + "Version": "1.2.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "1fe17157424bb09c48a8b3b550c753bc" + "Hash": "62b65c52671e6665f803ff02954446e9" }, "vctrs": { "Package": "vctrs", - "Version": "0.6.3", + "Version": "0.6.5", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1764,20 +1743,7 @@ "lifecycle", "rlang" ], - "Hash": "d0ef2856b83dc33ea6e255caf6229ee2" - }, - "viridis": { - "Package": "viridis", - "Version": "0.6.4", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "ggplot2", - "gridExtra", - "viridisLite" - ], - "Hash": "80cd127bc8c9d3d9f0904ead9a9102f1" + "Hash": "c03fa420630029418f7e6da3667aac4a" }, "viridisLite": { "Package": "viridisLite", @@ -1791,10 +1757,11 @@ }, "waldo": { "Package": "waldo", - "Version": "0.5.1", + "Version": "0.5.2", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ + "R", "cli", "diffobj", "fansi", @@ -1804,7 +1771,7 @@ "rlang", "tibble" ], - "Hash": "2c993415154cdb94649d99ae138ff5e5" + "Hash": "c7d3fd6d29ab077cbac8f0e2751449e6" }, "whisker": { "Package": "whisker", @@ -1815,48 +1782,50 @@ }, "withr": { "Package": "withr", - "Version": "2.5.0", + "Version": "3.0.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "grDevices", - "graphics", - "stats" + "graphics" ], - "Hash": "c0e49a9760983e81e55cdd9be92e7182" + "Hash": "d31b6c62c10dcf11ec530ca6b0dd5d35" }, "wk": { "Package": "wk", - "Version": "0.8.0", + "Version": "0.9.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "aaf7e20556e3125a09d53453814ad339" + "Hash": "5d4545e140e36476f35f20d0ca87963e" }, "xfun": { "Package": "xfun", - "Version": "0.40", + "Version": "0.43", "Source": "Repository", "Repository": "CRAN", "Requirements": [ + "grDevices", "stats", "tools" ], - "Hash": "be07d23211245fc7d4209f54c4e4ffc8" + "Hash": "ab6371d8653ce5f2f9290f4ec7b42a8e" }, "xml2": { "Package": "xml2", - "Version": "1.3.5", + "Version": "1.3.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", - "methods" + "cli", + "methods", + "rlang" ], - "Hash": "6c40e5cfcc6aefd88110666e18c31f40" + "Hash": "1d0336142f4cd25d8d23cd3ba7a8fb61" }, "xmlparsedata": { "Package": "xmlparsedata", @@ -1870,21 +1839,21 @@ }, "xopen": { "Package": "xopen", - "Version": "1.0.0", + "Version": "1.0.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "processx" ], - "Hash": "6c85f015dee9cc7710ddd20f86881f58" + "Hash": "423df1e86d5533fcb73c6b02b4923b49" }, "yaml": { "Package": "yaml", - "Version": "2.3.7", + "Version": "2.3.8", "Source": "Repository", "Repository": "CRAN", - "Hash": "0d0056cc5383fbc240ccd0cb584bf436" + "Hash": "29240487a071f535f5e5d5a323b7afbd" } } } From 89551024f8e1a2cb1e1d568d23a6f7f0c3455b08 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Mon, 24 Jun 2024 15:56:04 +0200 Subject: [PATCH 09/35] :arrow_up: upgrade dependencies --- DESCRIPTION | 2 +- renv.lock | 532 ++++----- renv/.gitignore | 4 +- renv/profile | 1 - renv/profiles/dev/renv.lock | 1859 ----------------------------- renv/profiles/dev/renv/.gitignore | 7 - renv/settings.dcf | 8 - renv/settings.json | 2 +- 8 files changed, 266 insertions(+), 2149 deletions(-) delete mode 100644 renv/profile delete mode 100644 renv/profiles/dev/renv.lock delete mode 100644 renv/profiles/dev/renv/.gitignore delete mode 100644 renv/settings.dcf diff --git a/DESCRIPTION b/DESCRIPTION index 48ce021..213b52d 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -11,7 +11,7 @@ Description: smarterapi is an interface which interacts with SMARTER REST API License: GPL (>= 3) Encoding: UTF-8 Roxygen: list(markdown = TRUE) -RoxygenNote: 7.2.3 +RoxygenNote: 7.3.1 Suggests: lintr, styler, diff --git a/renv.lock b/renv.lock index 499d196..22b4dac 100644 --- a/renv.lock +++ b/renv.lock @@ -1,35 +1,35 @@ { "R": { - "Version": "4.3.1", + "Version": "4.4.1", "Repositories": [ { "Name": "CRAN", - "URL": "https://packagemanager.posit.co/cran/latest" + "URL": "https://cran.mirror.garr.it/CRAN" } ] }, "Packages": { "DBI": { "Package": "DBI", - "Version": "1.1.3", + "Version": "1.2.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "b2866e62bab9378c3cc9476a1954226b" + "Hash": "065ae649b05f1ff66bb0c793107508f5" }, "KernSmooth": { "Package": "KernSmooth", - "Version": "2.23-22", + "Version": "2.23-24", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "stats" ], - "Hash": "2fecebc3047322fa5930f74fae5de70f" + "Hash": "9f33a1ee37bbe8919eb2ec4b9f2473a5" }, "MASS": { "Package": "MASS", @@ -48,7 +48,7 @@ }, "Matrix": { "Package": "Matrix", - "Version": "1.6-1", + "Version": "1.7-0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -61,7 +61,7 @@ "stats", "utils" ], - "Hash": "cb6855ac711958ca734b75e631b2035d" + "Hash": "1920b2f11133b12350024297d8a4ff4a" }, "R6": { "Package": "R6", @@ -85,20 +85,20 @@ }, "Rcpp": { "Package": "Rcpp", - "Version": "1.0.10", + "Version": "1.0.12", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "methods", "utils" ], - "Hash": "e749cae40fa9ef469b6050959517453c" + "Hash": "5ea2700d21e038ace58269ecdbeb9ec0" }, "abind": { "Package": "abind", "Version": "1.4-5", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "methods", @@ -108,13 +108,13 @@ }, "askpass": { "Package": "askpass", - "Version": "1.1", + "Version": "1.2.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "sys" ], - "Hash": "e8a22846fff485f0be3770c2da758713" + "Hash": "cad6cf7f1d5f6e906700b9d3e718c796" }, "base64enc": { "Package": "base64enc", @@ -128,45 +128,50 @@ }, "brio": { "Package": "brio", - "Version": "1.1.3", + "Version": "1.1.5", "Source": "Repository", "Repository": "CRAN", - "Hash": "976cf154dfb043c012d87cddd8bca363" + "Requirements": [ + "R" + ], + "Hash": "c1ee497a6d999947c2c224ae46799b1a" }, "bslib": { "Package": "bslib", - "Version": "0.4.2", + "Version": "0.7.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "base64enc", "cachem", + "fastmap", "grDevices", "htmltools", "jquerylib", "jsonlite", + "lifecycle", "memoise", "mime", "rlang", "sass" ], - "Hash": "a7fbf03946ad741129dc81098722fca1" + "Hash": "8644cc53f43828f19133548195d7e59e" }, "cachem": { "Package": "cachem", - "Version": "1.0.7", + "Version": "1.1.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "fastmap", "rlang" ], - "Hash": "cda74447c42f529de601fe4d4050daef" + "Hash": "cd9a672193789068eb5a2aad65a0dedf" }, "callr": { "Package": "callr", - "Version": "3.7.3", + "Version": "3.7.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -175,7 +180,7 @@ "processx", "utils" ], - "Hash": "9b2191ede20fa29828139b9900922e51" + "Hash": "d7e13f49c19103ece9e58ad2d83a7354" }, "class": { "Package": "class", @@ -194,7 +199,7 @@ "Package": "classInt", "Version": "0.4-10", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "KernSmooth", "R", @@ -208,24 +213,24 @@ }, "cli": { "Package": "cli", - "Version": "3.6.1", + "Version": "3.6.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "89e6d8219950eac806ae0c489052048a" + "Hash": "1216ac65ac55ec0058a6f75d7ca0fd52" }, "codetools": { "Package": "codetools", - "Version": "0.2-19", + "Version": "0.2-20", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "c089a619a7fae175d149d89164f8c7d8" + "Hash": "61e097f35917d342622f21cdc79c256e" }, "colorspace": { "Package": "colorspace", @@ -243,10 +248,13 @@ }, "cpp11": { "Package": "cpp11", - "Version": "0.4.3", + "Version": "0.4.7", "Source": "Repository", "Repository": "CRAN", - "Hash": "ed588261931ee3be2c700d22e94a29ab" + "Requirements": [ + "R" + ], + "Hash": "5a295d7d963cc5035284dcdbaf334f4e" }, "crayon": { "Package": "crayon", @@ -262,7 +270,7 @@ }, "crosstalk": { "Package": "crosstalk", - "Version": "1.2.0", + "Version": "1.2.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -271,31 +279,30 @@ "jsonlite", "lazyeval" ], - "Hash": "6aa54f69598c32177e920eb3402e8293" + "Hash": "ab12c7b080a57475248a30f4db6298c0" }, "curl": { "Package": "curl", - "Version": "5.0.0", + "Version": "5.2.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "e4f97056611e8e6b8b852d13b7400cf1" + "Hash": "411ca2c03b1ce5f548345d2fc2685f7a" }, "desc": { "Package": "desc", - "Version": "1.4.2", + "Version": "1.4.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "R6", "cli", - "rprojroot", "utils" ], - "Hash": "6b9602c7ebbe87101a9c8edb6e8b6d21" + "Hash": "99b79fcbd6c4d1ce087f5c5c758b384f" }, "diffobj": { "Package": "diffobj", @@ -314,18 +321,18 @@ }, "digest": { "Package": "digest", - "Version": "0.6.31", + "Version": "0.6.36", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "8b708f296afd9ae69f450f9640be8990" + "Hash": "fd6824ad91ede64151e93af67df6376b" }, "downlit": { "Package": "downlit", - "Version": "0.4.2", + "Version": "0.4.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -341,13 +348,13 @@ "withr", "yaml" ], - "Hash": "79bf3f66590752ffbba20f8d2da94c7c" + "Hash": "45a6a596bf0108ee1ff16a040a2df897" }, "dplyr": { "Package": "dplyr", - "Version": "1.1.3", + "Version": "1.1.4", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "R6", @@ -364,13 +371,13 @@ "utils", "vctrs" ], - "Hash": "e85ffbebaad5f70e1a2e2ef4302b4949" + "Hash": "fedd9d00c2944ff00a0e2696ccf048ec" }, "e1071": { "Package": "e1071", - "Version": "1.7-13", + "Version": "1.7-14", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "class", "grDevices", @@ -380,13 +387,13 @@ "stats", "utils" ], - "Hash": "1046cb48d06cb40c2900d8878f03a0fe" + "Hash": "4ef372b716824753719a8a38b258442d" }, "elevatr": { "Package": "elevatr", - "Version": "0.4.5", + "Version": "0.99.0", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "curl", @@ -400,36 +407,25 @@ "raster", "sf", "slippymath", - "sp", + "terra", "units" ], - "Hash": "867bc9d9ed45489aa01cb30c51fbaec2" - }, - "ellipsis": { - "Package": "ellipsis", - "Version": "0.3.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "rlang" - ], - "Hash": "bb0eec2fe32e88d9e2836c2f73ea2077" + "Hash": "f5a648116dfa343b1c76c40d33a8e834" }, "evaluate": { "Package": "evaluate", - "Version": "0.20", + "Version": "0.24.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "4b68aa51edd89a0e044a66e75ae3cc6c" + "Hash": "a1066cbc05caee9a4bf6d90f194ff4da" }, "fansi": { "Package": "fansi", - "Version": "1.0.4", + "Version": "1.0.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -437,25 +433,25 @@ "grDevices", "utils" ], - "Hash": "1d9e7ad3c8312a192dea7d3db0274fde" + "Hash": "962174cf2aeb5b9eea581522286a911f" }, "farver": { "Package": "farver", - "Version": "2.1.1", + "Version": "2.1.2", "Source": "Repository", "Repository": "CRAN", - "Hash": "8106d78941f34855c440ddb946b8f7a5" + "Hash": "680887028577f3fa2a81e410ed0d6e42" }, "fastmap": { "Package": "fastmap", - "Version": "1.1.1", + "Version": "1.2.0", "Source": "Repository", "Repository": "CRAN", - "Hash": "f7736a18de97dea803bde0a2daaafb27" + "Hash": "aa5e1cd11c2d15497494c5292d7ffcc8" }, "fontawesome": { "Package": "fontawesome", - "Version": "0.5.1", + "Version": "0.5.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -463,24 +459,24 @@ "htmltools", "rlang" ], - "Hash": "1e22b8cabbad1eae951a75e9f8b52378" + "Hash": "c2efdd5f0bcd1ea861c2d4e2a883a67d" }, "fs": { "Package": "fs", - "Version": "1.6.2", + "Version": "1.6.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "94af08e0aa9675a16fadbb3aaaa90d2a" + "Hash": "15aeb8c27f5ea5161f9f6a641fafd93a" }, "furrr": { "Package": "furrr", "Version": "0.3.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "future", @@ -494,9 +490,9 @@ }, "future": { "Package": "future", - "Version": "1.33.0", + "Version": "1.33.2", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "digest", "globals", @@ -505,7 +501,7 @@ "parallelly", "utils" ], - "Hash": "8e92c7bc53e91b9bb1faf9a6ef0e8514" + "Hash": "fd7b1d69d16d0d114e4fa82db68f184c" }, "generics": { "Package": "generics", @@ -520,18 +516,18 @@ }, "geodata": { "Package": "geodata", - "Version": "0.5-8", + "Version": "0.6-2", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "terra" ], - "Hash": "93d238706f3fe7c326a7d0bbc2fecdb8" + "Hash": "4d43570de08ab49ba86bb2ccb6fe117d" }, "ggplot2": { "Package": "ggplot2", - "Version": "3.4.2", + "Version": "3.5.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -552,13 +548,13 @@ "vctrs", "withr" ], - "Hash": "3a147ee02e85a8941aad9909f1b43b7b" + "Hash": "44c6a2f8202d5b7e878ea274b1092426" }, "ggspatial": { "Package": "ggspatial", "Version": "1.1.9", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "abind", @@ -577,43 +573,29 @@ }, "globals": { "Package": "globals", - "Version": "0.16.2", + "Version": "0.16.3", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "codetools" ], - "Hash": "baa9585ab4ce47a9f4618e671778cc6f" + "Hash": "2580567908cafd4f187c1e5a91e98b7f" }, "glue": { "Package": "glue", - "Version": "1.6.2", + "Version": "1.7.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "4f2596dfb05dac67b9dc558e5c6fba2e" - }, - "gridExtra": { - "Package": "gridExtra", - "Version": "2.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "grDevices", - "graphics", - "grid", - "gtable", - "utils" - ], - "Hash": "7d7f283939f563670a697165b2cf5560" + "Hash": "e0b3a53876554bd45879e596cdb10a52" }, "gtable": { "Package": "gtable", - "Version": "0.3.3", + "Version": "0.3.5", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -624,18 +606,18 @@ "lifecycle", "rlang" ], - "Hash": "b44addadb528a0d227794121c00572a0" + "Hash": "e18861963cbc65a27736e02b3cd3c4a0" }, "highr": { "Package": "highr", - "Version": "0.10", + "Version": "0.11", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "xfun" ], - "Hash": "06230136b2d2b9ba5805e1963fa6e890" + "Hash": "d65ba49117ca223614f71b60d85b8ab7" }, "hms": { "Package": "hms", @@ -653,24 +635,23 @@ }, "htmltools": { "Package": "htmltools", - "Version": "0.5.5", + "Version": "0.5.8.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "base64enc", "digest", - "ellipsis", "fastmap", "grDevices", "rlang", "utils" ], - "Hash": "ba0240784ad50a62165058a27459304a" + "Hash": "81d371a9cc60640e74e4ab6ac46dcedc" }, "htmlwidgets": { "Package": "htmlwidgets", - "Version": "1.6.2", + "Version": "1.6.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -681,11 +662,11 @@ "rmarkdown", "yaml" ], - "Hash": "a865aa85bcb2697f47505bfd70422471" + "Hash": "04291cc45198225444a397606810ac37" }, "httr": { "Package": "httr", - "Version": "1.4.5", + "Version": "1.4.7", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -696,7 +677,7 @@ "mime", "openssl" ], - "Hash": "f6844033201269bec3ca0097bc6c97b3" + "Hash": "ac107251d9d9fd72f0ca8049988f1d7f" }, "isoband": { "Package": "isoband", @@ -713,7 +694,7 @@ "Package": "jpeg", "Version": "0.1-10", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R" ], @@ -731,17 +712,17 @@ }, "jsonlite": { "Package": "jsonlite", - "Version": "1.8.4", + "Version": "1.8.8", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "methods" ], - "Hash": "a4269a09a9b865579b2635c77e572374" + "Hash": "e1b9c55281c5adc4dd113652d9e26768" }, "knitr": { "Package": "knitr", - "Version": "1.43", + "Version": "1.47", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -753,22 +734,22 @@ "xfun", "yaml" ], - "Hash": "9775eb076713f627c07ce41d8199d8f6" + "Hash": "7c99b2d55584b982717fcc0950378612" }, "labeling": { "Package": "labeling", - "Version": "0.4.2", + "Version": "0.4.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "graphics", "stats" ], - "Hash": "3d5108641f47470611a32d0bdf357a72" + "Hash": "b64ec208ac5bc1852b285f665d6368b3" }, "lattice": { "Package": "lattice", - "Version": "0.21-8", + "Version": "0.22-6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -779,7 +760,7 @@ "stats", "utils" ], - "Hash": "0b8a6d63c8770f02a8b5635f3c431e6b" + "Hash": "cc5ac1ba4c238c7ca9fa6a87ca11a7e2" }, "lazyeval": { "Package": "lazyeval", @@ -793,9 +774,9 @@ }, "leaflet": { "Package": "leaflet", - "Version": "2.2.0", + "Version": "2.2.2", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "RColorBrewer", @@ -811,24 +792,25 @@ "scales", "sp", "stats", - "viridis", + "viridisLite", "xfun" ], - "Hash": "f73dcc38ff38127bc11ea776786996de" + "Hash": "ca012d4a706e21ce217ba15f22d402b2" }, "leaflet.providers": { "Package": "leaflet.providers", - "Version": "1.13.0", + "Version": "2.0.0", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ - "R" + "R", + "htmltools" ], - "Hash": "235cd5abed82d9e6e79eb05eee248983" + "Hash": "c0b81ad9d5d932772f7a457ac398cf36" }, "lifecycle": { "Package": "lifecycle", - "Version": "1.0.3", + "Version": "1.0.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -837,31 +819,31 @@ "glue", "rlang" ], - "Hash": "001cecbeac1cff9301bdc3775ee46a86" + "Hash": "b8552d117e1b808b09a832f589b79035" }, "listenv": { "Package": "listenv", - "Version": "0.9.0", + "Version": "0.9.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "4fbd3679ec8ee169ba28d4b1ea7d0e8f" + "Hash": "e2fca3e12e4db979dccc6e519b10a7ee" }, "logger": { "Package": "logger", - "Version": "0.2.2", + "Version": "0.3.0", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "utils" ], - "Hash": "c269b06beb2bbadb0d058c0e6fa4ec3d" + "Hash": "c145edf05cc128e6ffcfa5d872c46329" }, "lubridate": { "Package": "lubridate", - "Version": "1.9.2", + "Version": "1.9.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -870,7 +852,7 @@ "methods", "timechange" ], - "Hash": "e25f18436e3efd42c7c590a1c4c15390" + "Hash": "680ad542fbcf801442c83a6ac5a2126c" }, "magrittr": { "Package": "magrittr", @@ -895,7 +877,7 @@ }, "mgcv": { "Package": "mgcv", - "Version": "1.9-0", + "Version": "1.9-1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -908,7 +890,7 @@ "stats", "utils" ], - "Hash": "086028ca0460d0c368028d3bda58f31b" + "Hash": "110ee9d83b496279960e162ac97764ce" }, "mime": { "Package": "mime", @@ -922,18 +904,18 @@ }, "munsell": { "Package": "munsell", - "Version": "0.5.0", + "Version": "0.5.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "colorspace", "methods" ], - "Hash": "6dfe8bf774944bd5595785e3229d8771" + "Hash": "4fd8900853b746af55b81fda99da7695" }, "nlme": { "Package": "nlme", - "Version": "3.1-163", + "Version": "3.1-165", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -943,23 +925,23 @@ "stats", "utils" ], - "Hash": "8d1938040a05566f4f7a14af4feadd6b" + "Hash": "2769a88be217841b1f33ed469675c3cc" }, "openssl": { "Package": "openssl", - "Version": "2.0.6", + "Version": "2.2.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "askpass" ], - "Hash": "0f7cd2962e3044bb940cca4f4b5cecbe" + "Hash": "2bcca3848e4734eb3b16103bc9aa4b8e" }, "pander": { "Package": "pander", "Version": "0.6.5", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "Rcpp", @@ -975,15 +957,15 @@ }, "parallelly": { "Package": "parallelly", - "Version": "1.36.0", + "Version": "1.37.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "parallel", "tools", "utils" ], - "Hash": "bca377e1c87ec89ebed77bba00635b2e" + "Hash": "5410df8d22bd36e616f2a2343dbb328c" }, "pillar": { "Package": "pillar", @@ -1002,6 +984,21 @@ ], "Hash": "15da5a8412f317beeee6175fbc76f4bb" }, + "pkgbuild": { + "Package": "pkgbuild", + "Version": "1.4.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "callr", + "cli", + "desc", + "processx" + ], + "Hash": "a29e8e134a460a01e0ca67a4763c595b" + }, "pkgconfig": { "Package": "pkgconfig", "Version": "2.0.3", @@ -1014,7 +1011,7 @@ }, "pkgdown": { "Package": "pkgdown", - "Version": "2.0.7", + "Version": "2.0.9", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1040,11 +1037,11 @@ "xml2", "yaml" ], - "Hash": "16fa15449c930bf3a7761d3c68f8abf9" + "Hash": "8bf1151ed1a48328d71b937e651117a6" }, "pkgload": { "Package": "pkgload", - "Version": "1.3.2", + "Version": "1.3.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1055,12 +1052,13 @@ "fs", "glue", "methods", + "pkgbuild", "rlang", "rprojroot", "utils", "withr" ], - "Hash": "6b0c222c5071efe0f3baf3dae9aa40e2" + "Hash": "876c618df5ae610be84356d5d7a5d124" }, "png": { "Package": "png", @@ -1081,14 +1079,17 @@ }, "prettyunits": { "Package": "prettyunits", - "Version": "1.1.1", + "Version": "1.2.0", "Source": "Repository", "Repository": "CRAN", - "Hash": "95ef9167b75dde9d2ccc3c7528393e7e" + "Requirements": [ + "R" + ], + "Hash": "6b01fc98b1e86c4f705ce9dcfd2f57c7" }, "processx": { "Package": "processx", - "Version": "3.8.1", + "Version": "3.8.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1097,26 +1098,27 @@ "ps", "utils" ], - "Hash": "d75b4059d781336efba24021915902b4" + "Hash": "0c90a7d71988856bad2a2a45dd871bb9" }, "progress": { "Package": "progress", - "Version": "1.2.2", + "Version": "1.2.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ + "R", "R6", "crayon", "hms", "prettyunits" ], - "Hash": "14dc9f7a3c91ebb14ec5bb9208a07061" + "Hash": "f4625e061cb2865f111b47ff163a5ca6" }, "progressr": { "Package": "progressr", "Version": "0.14.0", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "digest", @@ -1128,7 +1130,7 @@ "Package": "proxy", "Version": "0.4-27", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "stats", @@ -1138,18 +1140,18 @@ }, "ps": { "Package": "ps", - "Version": "1.7.5", + "Version": "1.7.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "709d852d33178db54b17c722e5b1e594" + "Hash": "dd2b9319ee0656c8acf45c7f40c59de7" }, "purrr": { "Package": "purrr", - "Version": "1.0.1", + "Version": "1.0.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1160,18 +1162,18 @@ "rlang", "vctrs" ], - "Hash": "d71c815267c640f17ddbf7f16144b4bb" + "Hash": "1cba04a4e9414bdefc9dcaa99649a8dc" }, "ragg": { "Package": "ragg", - "Version": "1.2.5", + "Version": "1.3.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "systemfonts", "textshaping" ], - "Hash": "690bc058ea2b1b8a407d3cfe3dce3ef9" + "Hash": "e3087db406e079a8a2fd87f413918ed3" }, "rappdirs": { "Package": "rappdirs", @@ -1185,9 +1187,9 @@ }, "raster": { "Package": "raster", - "Version": "3.6-23", + "Version": "3.6-26", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "Rcpp", @@ -1195,7 +1197,7 @@ "sp", "terra" ], - "Hash": "337d6d70f7d6bf78df236a5a53f09db0" + "Hash": "7d6eda494f34a644420ac1bfd2a8023a" }, "rematch2": { "Package": "rematch2", @@ -1209,28 +1211,28 @@ }, "renv": { "Package": "renv", - "Version": "1.0.2", + "Version": "1.0.7", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "utils" ], - "Hash": "4b22ac016fe54028b88d0c68badbd061" + "Hash": "397b7b2a265bc5a7a06852524dabae20" }, "rlang": { "Package": "rlang", - "Version": "1.1.0", + "Version": "1.1.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "dc079ccd156cde8647360f473c1fa718" + "Hash": "42548638fae05fd9a9b5f3f437fbbbe2" }, "rmarkdown": { "Package": "rmarkdown", - "Version": "2.21", + "Version": "2.27", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1243,47 +1245,44 @@ "jsonlite", "knitr", "methods", - "stringr", "tinytex", "tools", "utils", "xfun", "yaml" ], - "Hash": "493df4ae51e2e984952ea4d5c75786a3" + "Hash": "27f9502e1cdbfa195f94e03b0f517484" }, "rnaturalearth": { "Package": "rnaturalearth", - "Version": "0.3.4", + "Version": "1.0.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "httr", "jsonlite", "sf", - "sp", "terra", "utils" ], - "Hash": "cc93c2e9d777b357103cdc322fb9a649" + "Hash": "741166cab0fe76d8a5670d3ee459a2a4" }, "rnaturalearthdata": { "Package": "rnaturalearthdata", - "Version": "0.1.0", + "Version": "1.0.0", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ - "R", - "sp" + "R" ], - "Hash": "0d34b89b43e900467e60f5449226f3e3" + "Hash": "650339de24d9574c0079a4a13baa623d" }, "rosm": { "Package": "rosm", "Version": "0.3.0", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "curl", "glue", @@ -1297,29 +1296,29 @@ }, "rprojroot": { "Package": "rprojroot", - "Version": "2.0.3", + "Version": "2.0.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "1de7ab598047a87bba48434ba35d497d" + "Hash": "4c8415e0ec1e29f3f4f6fc108bef0144" }, "s2": { "Package": "s2", - "Version": "1.1.4", + "Version": "1.1.6", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "Rcpp", "wk" ], - "Hash": "f1cbe03bb3346f8e817518ffa20f9f5a" + "Hash": "32f7b1a15bb01ae809022960abad5363" }, "sass": { "Package": "sass", - "Version": "0.4.5", + "Version": "0.4.9", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1329,31 +1328,33 @@ "rappdirs", "rlang" ], - "Hash": "2bb4371a4c80115518261866eab6ab11" + "Hash": "d53dbfddf695303ea4ad66f86e99b95d" }, "scales": { "Package": "scales", - "Version": "1.2.1", + "Version": "1.3.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "R6", "RColorBrewer", + "cli", "farver", + "glue", "labeling", "lifecycle", "munsell", "rlang", "viridisLite" ], - "Hash": "906cb23d2f1c5680b8ce439b44c6fa63" + "Hash": "c19df082ba346b0ffa6f833e92de34d1" }, "sf": { "Package": "sf", - "Version": "1.0-14", + "Version": "1.0-16", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "DBI", "R", @@ -1370,13 +1371,13 @@ "units", "utils" ], - "Hash": "e2111252a76984ca50bf8d6314348681" + "Hash": "ad57b543f7c3fca05213ba78ff63df9b" }, "slippymath": { "Package": "slippymath", "Version": "0.3.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "png", @@ -1388,9 +1389,9 @@ }, "sp": { "Package": "sp", - "Version": "2.0-0", + "Version": "2.1-4", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "grDevices", @@ -1401,11 +1402,11 @@ "stats", "utils" ], - "Hash": "2551981e6f85d59c81652bf654d6c3ca" + "Hash": "75940133cca2e339afce15a586f85b11" }, "stringi": { "Package": "stringi", - "Version": "1.7.12", + "Version": "1.8.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1414,11 +1415,11 @@ "tools", "utils" ], - "Hash": "ca8bd84263c77310739d2cf64d84d7c9" + "Hash": "39e1144fd75428983dc3f63aa53dfa91" }, "stringr": { "Package": "stringr", - "Version": "1.5.0", + "Version": "1.5.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1431,41 +1432,42 @@ "stringi", "vctrs" ], - "Hash": "671a4d384ae9d32fc47a14e98bfa3dc8" + "Hash": "960e2ae9e09656611e0b8214ad543207" }, "sys": { "Package": "sys", - "Version": "3.4.1", + "Version": "3.4.2", "Source": "Repository", "Repository": "CRAN", - "Hash": "34c16f1ef796057bfa06d3f4ff818a5d" + "Hash": "3a1be13d68d47a8cd0bfd74739ca1555" }, "systemfonts": { "Package": "systemfonts", - "Version": "1.0.4", + "Version": "1.1.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", - "cpp11" + "cpp11", + "lifecycle" ], - "Hash": "90b28393209827327de889f49935140a" + "Hash": "213b6b8ed5afbf934843e6c3b090d418" }, "terra": { "Package": "terra", - "Version": "1.7-46", + "Version": "1.7-78", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "Rcpp", "methods" ], - "Hash": "d15182a8a20ffc5880e721bfa1bf4ce9" + "Hash": "8f020def0792119cb98bd8f696dab22d" }, "testthat": { "Package": "testthat", - "Version": "3.1.7", + "Version": "3.2.1.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1476,7 +1478,6 @@ "cli", "desc", "digest", - "ellipsis", "evaluate", "jsonlite", "lifecycle", @@ -1491,19 +1492,20 @@ "waldo", "withr" ], - "Hash": "7eb5fd202a61d2fb78af5869b6c08998" + "Hash": "3f6e7e5e2220856ff865e4834766bf2b" }, "textshaping": { "Package": "textshaping", - "Version": "0.3.6", + "Version": "0.4.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "cpp11", + "lifecycle", "systemfonts" ], - "Hash": "1ab6223d3670fac7143202cb6a2d43d5" + "Hash": "5142f8bc78ed3d819d26461b641627ce" }, "tibble": { "Package": "tibble", @@ -1526,7 +1528,7 @@ }, "tidyr": { "Package": "tidyr", - "Version": "1.3.0", + "Version": "1.3.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1545,11 +1547,11 @@ "utils", "vctrs" ], - "Hash": "e47debdc7ce599b070c8e78e8ac0cfcf" + "Hash": "915fb7ce036c22a6a33b5a8adb712eb1" }, "tidyselect": { "Package": "tidyselect", - "Version": "1.2.0", + "Version": "1.2.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1561,34 +1563,34 @@ "vctrs", "withr" ], - "Hash": "79540e5fcd9e0435af547d885f184fd5" + "Hash": "829f27b9c4919c16b593794a6344d6c0" }, "timechange": { "Package": "timechange", - "Version": "0.2.0", + "Version": "0.3.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "cpp11" ], - "Hash": "8548b44f79a35ba1791308b61e6012d7" + "Hash": "c5f3c201b931cd6474d17d8700ccb1c8" }, "tinytex": { "Package": "tinytex", - "Version": "0.45", + "Version": "0.51", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "xfun" ], - "Hash": "e4e357f28c2edff493936b6cb30c3d65" + "Hash": "d44e2fcd2e4e076f0aac540208559d1d" }, "triebeard": { "Package": "triebeard", "Version": "0.4.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "Rcpp" ], @@ -1596,20 +1598,20 @@ }, "units": { "Package": "units", - "Version": "0.8-3", + "Version": "0.8-5", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "Rcpp" ], - "Hash": "880ebc99e4d8f7e5f3caeb2f12632583" + "Hash": "119d19da480e873f72241ff6962ffd83" }, "urltools": { "Package": "urltools", "Version": "1.7.3", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R", "Rcpp", @@ -1620,17 +1622,17 @@ }, "utf8": { "Package": "utf8", - "Version": "1.2.3", + "Version": "1.2.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "1fe17157424bb09c48a8b3b550c753bc" + "Hash": "62b65c52671e6665f803ff02954446e9" }, "vctrs": { "Package": "vctrs", - "Version": "0.6.2", + "Version": "0.6.5", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1640,37 +1642,25 @@ "lifecycle", "rlang" ], - "Hash": "a745bda7aff4734c17294bb41d4e4607" - }, - "viridis": { - "Package": "viridis", - "Version": "0.6.4", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "ggplot2", - "gridExtra", - "viridisLite" - ], - "Hash": "80cd127bc8c9d3d9f0904ead9a9102f1" + "Hash": "c03fa420630029418f7e6da3667aac4a" }, "viridisLite": { "Package": "viridisLite", - "Version": "0.4.1", + "Version": "0.4.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "62f4b5da3e08d8e5bcba6cac15603f70" + "Hash": "c826c7c4241b6fc89ff55aaea3fa7491" }, "waldo": { "Package": "waldo", - "Version": "0.4.0", + "Version": "0.5.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ + "R", "cli", "diffobj", "fansi", @@ -1680,7 +1670,7 @@ "rlang", "tibble" ], - "Hash": "035fba89d0c86e2113120f93301b98ad" + "Hash": "c7d3fd6d29ab077cbac8f0e2751449e6" }, "whisker": { "Package": "whisker", @@ -1691,55 +1681,57 @@ }, "withr": { "Package": "withr", - "Version": "2.5.0", + "Version": "3.0.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "grDevices", - "graphics", - "stats" + "graphics" ], - "Hash": "c0e49a9760983e81e55cdd9be92e7182" + "Hash": "d31b6c62c10dcf11ec530ca6b0dd5d35" }, "wk": { "Package": "wk", - "Version": "0.8.0", + "Version": "0.9.1", "Source": "Repository", - "Repository": "RSPM", + "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "aaf7e20556e3125a09d53453814ad339" + "Hash": "5d4545e140e36476f35f20d0ca87963e" }, "xfun": { "Package": "xfun", - "Version": "0.39", + "Version": "0.45", "Source": "Repository", "Repository": "CRAN", "Requirements": [ + "grDevices", "stats", "tools" ], - "Hash": "8f56e9acb54fb525e66464d57ab58bcb" + "Hash": "ca59c87fe305b16a9141a5874c3a7889" }, "xml2": { "Package": "xml2", - "Version": "1.3.4", + "Version": "1.3.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", - "methods" + "cli", + "methods", + "rlang" ], - "Hash": "7dc765ac9b909487326a7d471fdd3821" + "Hash": "1d0336142f4cd25d8d23cd3ba7a8fb61" }, "yaml": { "Package": "yaml", - "Version": "2.3.7", + "Version": "2.3.8", "Source": "Repository", "Repository": "CRAN", - "Hash": "0d0056cc5383fbc240ccd0cb584bf436" + "Hash": "29240487a071f535f5e5d5a323b7afbd" } } } diff --git a/renv/.gitignore b/renv/.gitignore index 63b9ec4..0ec0cbb 100644 --- a/renv/.gitignore +++ b/renv/.gitignore @@ -1,7 +1,7 @@ -sandbox/ -cellar/ library/ local/ +cellar/ lock/ python/ +sandbox/ staging/ diff --git a/renv/profile b/renv/profile deleted file mode 100644 index 38f8e88..0000000 --- a/renv/profile +++ /dev/null @@ -1 +0,0 @@ -dev diff --git a/renv/profiles/dev/renv.lock b/renv/profiles/dev/renv.lock deleted file mode 100644 index 88d7cbd..0000000 --- a/renv/profiles/dev/renv.lock +++ /dev/null @@ -1,1859 +0,0 @@ -{ - "R": { - "Version": "4.3.1", - "Repositories": [ - { - "Name": "CRAN", - "URL": "https://cloud.r-project.org" - } - ] - }, - "Packages": { - "DBI": { - "Package": "DBI", - "Version": "1.2.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "methods" - ], - "Hash": "164809cd72e1d5160b4cb3aa57f510fe" - }, - "KernSmooth": { - "Package": "KernSmooth", - "Version": "2.23-22", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "stats" - ], - "Hash": "2fecebc3047322fa5930f74fae5de70f" - }, - "MASS": { - "Package": "MASS", - "Version": "7.3-58.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "grDevices", - "graphics", - "methods", - "stats", - "utils" - ], - "Hash": "9586b552d57f5516fe4d25398c1bacd6" - }, - "Matrix": { - "Package": "Matrix", - "Version": "1.5-3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "graphics", - "grid", - "lattice", - "methods", - "stats", - "utils" - ], - "Hash": "4006dffe49958d2dd591c17e61e60591" - }, - "R6": { - "Package": "R6", - "Version": "2.5.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "470851b6d5d0ac559e9d01bb352b4021" - }, - "RColorBrewer": { - "Package": "RColorBrewer", - "Version": "1.1-3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "45f0398006e83a5b10b72a90663d8d8c" - }, - "Rcpp": { - "Package": "Rcpp", - "Version": "1.0.12", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "methods", - "utils" - ], - "Hash": "5ea2700d21e038ace58269ecdbeb9ec0" - }, - "abind": { - "Package": "abind", - "Version": "1.4-5", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "methods", - "utils" - ], - "Hash": "4f57884290cc75ab22f4af9e9d4ca862" - }, - "askpass": { - "Package": "askpass", - "Version": "1.2.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "sys" - ], - "Hash": "cad6cf7f1d5f6e906700b9d3e718c796" - }, - "backports": { - "Package": "backports", - "Version": "1.4.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "c39fbec8a30d23e721980b8afb31984c" - }, - "base64enc": { - "Package": "base64enc", - "Version": "0.1-3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "543776ae6848fde2f48ff3816d0628bc" - }, - "brio": { - "Package": "brio", - "Version": "1.1.5", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "c1ee497a6d999947c2c224ae46799b1a" - }, - "bslib": { - "Package": "bslib", - "Version": "0.7.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "base64enc", - "cachem", - "fastmap", - "grDevices", - "htmltools", - "jquerylib", - "jsonlite", - "lifecycle", - "memoise", - "mime", - "rlang", - "sass" - ], - "Hash": "8644cc53f43828f19133548195d7e59e" - }, - "cachem": { - "Package": "cachem", - "Version": "1.0.8", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "fastmap", - "rlang" - ], - "Hash": "c35768291560ce302c0a6589f92e837d" - }, - "callr": { - "Package": "callr", - "Version": "3.7.6", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "R6", - "processx", - "utils" - ], - "Hash": "d7e13f49c19103ece9e58ad2d83a7354" - }, - "class": { - "Package": "class", - "Version": "7.3-22", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "MASS", - "R", - "stats", - "utils" - ], - "Hash": "f91f6b29f38b8c280f2b9477787d4bb2" - }, - "classInt": { - "Package": "classInt", - "Version": "0.4-10", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "KernSmooth", - "R", - "class", - "e1071", - "grDevices", - "graphics", - "stats" - ], - "Hash": "f5a40793b1ae463a7ffb3902a95bf864" - }, - "cli": { - "Package": "cli", - "Version": "3.6.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "utils" - ], - "Hash": "1216ac65ac55ec0058a6f75d7ca0fd52" - }, - "codetools": { - "Package": "codetools", - "Version": "0.2-20", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "61e097f35917d342622f21cdc79c256e" - }, - "colorspace": { - "Package": "colorspace", - "Version": "2.1-0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "grDevices", - "graphics", - "methods", - "stats" - ], - "Hash": "f20c47fd52fae58b4e377c37bb8c335b" - }, - "cpp11": { - "Package": "cpp11", - "Version": "0.4.7", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "5a295d7d963cc5035284dcdbaf334f4e" - }, - "crayon": { - "Package": "crayon", - "Version": "1.5.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "grDevices", - "methods", - "utils" - ], - "Hash": "e8a1e41acf02548751f45c718d55aa6a" - }, - "crosstalk": { - "Package": "crosstalk", - "Version": "1.2.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R6", - "htmltools", - "jsonlite", - "lazyeval" - ], - "Hash": "ab12c7b080a57475248a30f4db6298c0" - }, - "curl": { - "Package": "curl", - "Version": "5.2.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "411ca2c03b1ce5f548345d2fc2685f7a" - }, - "cyclocomp": { - "Package": "cyclocomp", - "Version": "1.1.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "callr", - "crayon", - "desc", - "remotes", - "withr" - ], - "Hash": "cdc4a473222b0112d4df0bcfbed12d44" - }, - "desc": { - "Package": "desc", - "Version": "1.4.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "R6", - "cli", - "utils" - ], - "Hash": "99b79fcbd6c4d1ce087f5c5c758b384f" - }, - "diffobj": { - "Package": "diffobj", - "Version": "0.3.5", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "crayon", - "methods", - "stats", - "tools", - "utils" - ], - "Hash": "bcaa8b95f8d7d01a5dedfd959ce88ab8" - }, - "digest": { - "Package": "digest", - "Version": "0.6.35", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "utils" - ], - "Hash": "698ece7ba5a4fa4559e3d537e7ec3d31" - }, - "downlit": { - "Package": "downlit", - "Version": "0.4.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "brio", - "desc", - "digest", - "evaluate", - "fansi", - "memoise", - "rlang", - "vctrs", - "withr", - "yaml" - ], - "Hash": "14fa1f248b60ed67e1f5418391a17b14" - }, - "dplyr": { - "Package": "dplyr", - "Version": "1.1.4", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "R6", - "cli", - "generics", - "glue", - "lifecycle", - "magrittr", - "methods", - "pillar", - "rlang", - "tibble", - "tidyselect", - "utils", - "vctrs" - ], - "Hash": "fedd9d00c2944ff00a0e2696ccf048ec" - }, - "e1071": { - "Package": "e1071", - "Version": "1.7-14", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "class", - "grDevices", - "graphics", - "methods", - "proxy", - "stats", - "utils" - ], - "Hash": "4ef372b716824753719a8a38b258442d" - }, - "elevatr": { - "Package": "elevatr", - "Version": "0.99.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "curl", - "furrr", - "future", - "httr", - "jsonlite", - "methods", - "progressr", - "purrr", - "raster", - "sf", - "slippymath", - "terra", - "units" - ], - "Hash": "f5a648116dfa343b1c76c40d33a8e834" - }, - "evaluate": { - "Package": "evaluate", - "Version": "0.23", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "methods" - ], - "Hash": "daf4a1246be12c1fa8c7705a0935c1a0" - }, - "fansi": { - "Package": "fansi", - "Version": "1.0.6", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "grDevices", - "utils" - ], - "Hash": "962174cf2aeb5b9eea581522286a911f" - }, - "farver": { - "Package": "farver", - "Version": "2.1.1", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "8106d78941f34855c440ddb946b8f7a5" - }, - "fastmap": { - "Package": "fastmap", - "Version": "1.1.1", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "f7736a18de97dea803bde0a2daaafb27" - }, - "fontawesome": { - "Package": "fontawesome", - "Version": "0.5.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "htmltools", - "rlang" - ], - "Hash": "c2efdd5f0bcd1ea861c2d4e2a883a67d" - }, - "fs": { - "Package": "fs", - "Version": "1.6.4", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "methods" - ], - "Hash": "15aeb8c27f5ea5161f9f6a641fafd93a" - }, - "furrr": { - "Package": "furrr", - "Version": "0.3.1", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "future", - "globals", - "lifecycle", - "purrr", - "rlang", - "vctrs" - ], - "Hash": "da7a4c32196cb2262a41dd5a25d486ff" - }, - "future": { - "Package": "future", - "Version": "1.33.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "digest", - "globals", - "listenv", - "parallel", - "parallelly", - "utils" - ], - "Hash": "fd7b1d69d16d0d114e4fa82db68f184c" - }, - "generics": { - "Package": "generics", - "Version": "0.1.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "methods" - ], - "Hash": "15e9634c0fcd294799e9b2e929ed1b86" - }, - "geodata": { - "Package": "geodata", - "Version": "0.5-9", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "terra" - ], - "Hash": "5937c0840e80ae8a7506f1d12e454e5a" - }, - "ggplot2": { - "Package": "ggplot2", - "Version": "3.5.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "MASS", - "R", - "cli", - "glue", - "grDevices", - "grid", - "gtable", - "isoband", - "lifecycle", - "mgcv", - "rlang", - "scales", - "stats", - "tibble", - "vctrs", - "withr" - ], - "Hash": "44c6a2f8202d5b7e878ea274b1092426" - }, - "ggspatial": { - "Package": "ggspatial", - "Version": "1.1.9", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "abind", - "ggplot2", - "glue", - "grid", - "methods", - "rlang", - "rosm", - "scales", - "sf", - "tibble", - "tidyr" - ], - "Hash": "0a4e5ed181eb823957df790ec11a28fc" - }, - "globals": { - "Package": "globals", - "Version": "0.16.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "codetools" - ], - "Hash": "2580567908cafd4f187c1e5a91e98b7f" - }, - "glue": { - "Package": "glue", - "Version": "1.7.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "methods" - ], - "Hash": "e0b3a53876554bd45879e596cdb10a52" - }, - "gtable": { - "Package": "gtable", - "Version": "0.3.5", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "cli", - "glue", - "grid", - "lifecycle", - "rlang" - ], - "Hash": "e18861963cbc65a27736e02b3cd3c4a0" - }, - "highr": { - "Package": "highr", - "Version": "0.10", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "xfun" - ], - "Hash": "06230136b2d2b9ba5805e1963fa6e890" - }, - "hms": { - "Package": "hms", - "Version": "1.1.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "lifecycle", - "methods", - "pkgconfig", - "rlang", - "vctrs" - ], - "Hash": "b59377caa7ed00fa41808342002138f9" - }, - "htmltools": { - "Package": "htmltools", - "Version": "0.5.8.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "base64enc", - "digest", - "fastmap", - "grDevices", - "rlang", - "utils" - ], - "Hash": "81d371a9cc60640e74e4ab6ac46dcedc" - }, - "htmlwidgets": { - "Package": "htmlwidgets", - "Version": "1.6.4", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "grDevices", - "htmltools", - "jsonlite", - "knitr", - "rmarkdown", - "yaml" - ], - "Hash": "04291cc45198225444a397606810ac37" - }, - "httr": { - "Package": "httr", - "Version": "1.4.7", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "R6", - "curl", - "jsonlite", - "mime", - "openssl" - ], - "Hash": "ac107251d9d9fd72f0ca8049988f1d7f" - }, - "isoband": { - "Package": "isoband", - "Version": "0.2.7", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "grid", - "utils" - ], - "Hash": "0080607b4a1a7b28979aecef976d8bc2" - }, - "jpeg": { - "Package": "jpeg", - "Version": "0.1-10", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R" - ], - "Hash": "031a0b683d001a7519202f0628fc0358" - }, - "jquerylib": { - "Package": "jquerylib", - "Version": "0.1.4", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "htmltools" - ], - "Hash": "5aab57a3bd297eee1c1d862735972182" - }, - "jsonlite": { - "Package": "jsonlite", - "Version": "1.8.8", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "methods" - ], - "Hash": "e1b9c55281c5adc4dd113652d9e26768" - }, - "knitr": { - "Package": "knitr", - "Version": "1.46", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "evaluate", - "highr", - "methods", - "tools", - "xfun", - "yaml" - ], - "Hash": "6e008ab1d696a5283c79765fa7b56b47" - }, - "labeling": { - "Package": "labeling", - "Version": "0.4.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "graphics", - "stats" - ], - "Hash": "b64ec208ac5bc1852b285f665d6368b3" - }, - "lattice": { - "Package": "lattice", - "Version": "0.22-6", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "grDevices", - "graphics", - "grid", - "stats", - "utils" - ], - "Hash": "cc5ac1ba4c238c7ca9fa6a87ca11a7e2" - }, - "lazyeval": { - "Package": "lazyeval", - "Version": "0.2.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "d908914ae53b04d4c0c0fd72ecc35370" - }, - "leaflet": { - "Package": "leaflet", - "Version": "2.2.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "RColorBrewer", - "crosstalk", - "htmltools", - "htmlwidgets", - "jquerylib", - "leaflet.providers", - "magrittr", - "methods", - "png", - "raster", - "scales", - "sp", - "stats", - "viridisLite", - "xfun" - ], - "Hash": "ca012d4a706e21ce217ba15f22d402b2" - }, - "leaflet.providers": { - "Package": "leaflet.providers", - "Version": "2.0.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "htmltools" - ], - "Hash": "c0b81ad9d5d932772f7a457ac398cf36" - }, - "lifecycle": { - "Package": "lifecycle", - "Version": "1.0.4", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "cli", - "glue", - "rlang" - ], - "Hash": "b8552d117e1b808b09a832f589b79035" - }, - "lintr": { - "Package": "lintr", - "Version": "3.1.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "backports", - "codetools", - "cyclocomp", - "digest", - "glue", - "knitr", - "rex", - "stats", - "utils", - "xml2", - "xmlparsedata" - ], - "Hash": "08cff46381a242d44c0d8dd0aabd9f71" - }, - "listenv": { - "Package": "listenv", - "Version": "0.9.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "e2fca3e12e4db979dccc6e519b10a7ee" - }, - "logger": { - "Package": "logger", - "Version": "0.3.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "utils" - ], - "Hash": "c145edf05cc128e6ffcfa5d872c46329" - }, - "lubridate": { - "Package": "lubridate", - "Version": "1.9.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "generics", - "methods", - "timechange" - ], - "Hash": "680ad542fbcf801442c83a6ac5a2126c" - }, - "magrittr": { - "Package": "magrittr", - "Version": "2.0.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "7ce2733a9826b3aeb1775d56fd305472" - }, - "memoise": { - "Package": "memoise", - "Version": "2.0.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "cachem", - "rlang" - ], - "Hash": "e2817ccf4a065c5d9d7f2cfbe7c1d78c" - }, - "mgcv": { - "Package": "mgcv", - "Version": "1.9-1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "Matrix", - "R", - "graphics", - "methods", - "nlme", - "splines", - "stats", - "utils" - ], - "Hash": "110ee9d83b496279960e162ac97764ce" - }, - "mime": { - "Package": "mime", - "Version": "0.12", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "tools" - ], - "Hash": "18e9c28c1d3ca1560ce30658b22ce104" - }, - "munsell": { - "Package": "munsell", - "Version": "0.5.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "colorspace", - "methods" - ], - "Hash": "4fd8900853b746af55b81fda99da7695" - }, - "nlme": { - "Package": "nlme", - "Version": "3.1-164", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "graphics", - "lattice", - "stats", - "utils" - ], - "Hash": "a623a2239e642806158bc4dc3f51565d" - }, - "openssl": { - "Package": "openssl", - "Version": "2.1.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "askpass" - ], - "Hash": "ea2475b073243d9d338aa8f086ce973e" - }, - "pander": { - "Package": "pander", - "Version": "0.6.5", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "Rcpp", - "digest", - "grDevices", - "graphics", - "methods", - "stats", - "tools", - "utils" - ], - "Hash": "737924139a1e4fc96356ff377c754c35" - }, - "parallelly": { - "Package": "parallelly", - "Version": "1.37.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "parallel", - "tools", - "utils" - ], - "Hash": "5410df8d22bd36e616f2a2343dbb328c" - }, - "pillar": { - "Package": "pillar", - "Version": "1.9.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "cli", - "fansi", - "glue", - "lifecycle", - "rlang", - "utf8", - "utils", - "vctrs" - ], - "Hash": "15da5a8412f317beeee6175fbc76f4bb" - }, - "pkgbuild": { - "Package": "pkgbuild", - "Version": "1.4.4", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "R6", - "callr", - "cli", - "desc", - "processx" - ], - "Hash": "a29e8e134a460a01e0ca67a4763c595b" - }, - "pkgconfig": { - "Package": "pkgconfig", - "Version": "2.0.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "utils" - ], - "Hash": "01f28d4278f15c76cddbea05899c5d6f" - }, - "pkgdown": { - "Package": "pkgdown", - "Version": "2.0.9", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "bslib", - "callr", - "cli", - "desc", - "digest", - "downlit", - "fs", - "httr", - "jsonlite", - "magrittr", - "memoise", - "purrr", - "ragg", - "rlang", - "rmarkdown", - "tibble", - "whisker", - "withr", - "xml2", - "yaml" - ], - "Hash": "8bf1151ed1a48328d71b937e651117a6" - }, - "pkgload": { - "Package": "pkgload", - "Version": "1.3.4", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "cli", - "crayon", - "desc", - "fs", - "glue", - "methods", - "pkgbuild", - "rlang", - "rprojroot", - "utils", - "withr" - ], - "Hash": "876c618df5ae610be84356d5d7a5d124" - }, - "png": { - "Package": "png", - "Version": "0.1-8", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "bd54ba8a0a5faded999a7aab6e46b374" - }, - "praise": { - "Package": "praise", - "Version": "1.0.0", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "a555924add98c99d2f411e37e7d25e9f" - }, - "prettyunits": { - "Package": "prettyunits", - "Version": "1.2.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "6b01fc98b1e86c4f705ce9dcfd2f57c7" - }, - "processx": { - "Package": "processx", - "Version": "3.8.4", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "R6", - "ps", - "utils" - ], - "Hash": "0c90a7d71988856bad2a2a45dd871bb9" - }, - "progress": { - "Package": "progress", - "Version": "1.2.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "R6", - "crayon", - "hms", - "prettyunits" - ], - "Hash": "f4625e061cb2865f111b47ff163a5ca6" - }, - "progressr": { - "Package": "progressr", - "Version": "0.14.0", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "digest", - "utils" - ], - "Hash": "ac50c4ffa8f6a46580dd4d7813add3c4" - }, - "proxy": { - "Package": "proxy", - "Version": "0.4-27", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "stats", - "utils" - ], - "Hash": "e0ef355c12942cf7a6b91a6cfaea8b3e" - }, - "ps": { - "Package": "ps", - "Version": "1.7.6", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "utils" - ], - "Hash": "dd2b9319ee0656c8acf45c7f40c59de7" - }, - "purrr": { - "Package": "purrr", - "Version": "1.0.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "cli", - "lifecycle", - "magrittr", - "rlang", - "vctrs" - ], - "Hash": "1cba04a4e9414bdefc9dcaa99649a8dc" - }, - "ragg": { - "Package": "ragg", - "Version": "1.3.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "systemfonts", - "textshaping" - ], - "Hash": "539dcb63ce611fe389b4c8e2b546cf24" - }, - "rappdirs": { - "Package": "rappdirs", - "Version": "0.3.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "5e3c5dc0b071b21fa128676560dbe94d" - }, - "raster": { - "Package": "raster", - "Version": "3.6-26", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "Rcpp", - "methods", - "sp", - "terra" - ], - "Hash": "7d6eda494f34a644420ac1bfd2a8023a" - }, - "rcmdcheck": { - "Package": "rcmdcheck", - "Version": "1.4.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R6", - "callr", - "cli", - "curl", - "desc", - "digest", - "pkgbuild", - "prettyunits", - "rprojroot", - "sessioninfo", - "utils", - "withr", - "xopen" - ], - "Hash": "8f25ebe2ec38b1f2aef3b0d2ef76f6c4" - }, - "rematch2": { - "Package": "rematch2", - "Version": "2.1.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "tibble" - ], - "Hash": "76c9e04c712a05848ae7a23d2f170a40" - }, - "remotes": { - "Package": "remotes", - "Version": "2.5.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "methods", - "stats", - "tools", - "utils" - ], - "Hash": "3ee025083e66f18db6cf27b56e23e141" - }, - "renv": { - "Package": "renv", - "Version": "1.0.7", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "utils" - ], - "Hash": "397b7b2a265bc5a7a06852524dabae20" - }, - "rex": { - "Package": "rex", - "Version": "1.2.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "lazyeval" - ], - "Hash": "ae34cd56890607370665bee5bd17812f" - }, - "rlang": { - "Package": "rlang", - "Version": "1.1.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "utils" - ], - "Hash": "42548638fae05fd9a9b5f3f437fbbbe2" - }, - "rmarkdown": { - "Package": "rmarkdown", - "Version": "2.26", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "bslib", - "evaluate", - "fontawesome", - "htmltools", - "jquerylib", - "jsonlite", - "knitr", - "methods", - "tinytex", - "tools", - "utils", - "xfun", - "yaml" - ], - "Hash": "9b148e7f95d33aac01f31282d49e4f44" - }, - "rnaturalearth": { - "Package": "rnaturalearth", - "Version": "1.0.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "httr", - "jsonlite", - "sf", - "terra", - "utils" - ], - "Hash": "741166cab0fe76d8a5670d3ee459a2a4" - }, - "rnaturalearthdata": { - "Package": "rnaturalearthdata", - "Version": "1.0.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "650339de24d9574c0079a4a13baa623d" - }, - "rosm": { - "Package": "rosm", - "Version": "0.3.0", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "curl", - "glue", - "jpeg", - "png", - "progress", - "rlang", - "wk" - ], - "Hash": "fcd529f183c4163a91430d7b7bbaece5" - }, - "rprojroot": { - "Package": "rprojroot", - "Version": "2.0.4", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "4c8415e0ec1e29f3f4f6fc108bef0144" - }, - "s2": { - "Package": "s2", - "Version": "1.1.6", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "Rcpp", - "wk" - ], - "Hash": "32f7b1a15bb01ae809022960abad5363" - }, - "sass": { - "Package": "sass", - "Version": "0.4.9", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R6", - "fs", - "htmltools", - "rappdirs", - "rlang" - ], - "Hash": "d53dbfddf695303ea4ad66f86e99b95d" - }, - "scales": { - "Package": "scales", - "Version": "1.3.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "R6", - "RColorBrewer", - "cli", - "farver", - "glue", - "labeling", - "lifecycle", - "munsell", - "rlang", - "viridisLite" - ], - "Hash": "c19df082ba346b0ffa6f833e92de34d1" - }, - "sessioninfo": { - "Package": "sessioninfo", - "Version": "1.2.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "cli", - "tools", - "utils" - ], - "Hash": "3f9796a8d0a0e8c6eb49a4b029359d1f" - }, - "sf": { - "Package": "sf", - "Version": "1.0-16", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "DBI", - "R", - "Rcpp", - "classInt", - "grDevices", - "graphics", - "grid", - "magrittr", - "methods", - "s2", - "stats", - "tools", - "units", - "utils" - ], - "Hash": "ad57b543f7c3fca05213ba78ff63df9b" - }, - "slippymath": { - "Package": "slippymath", - "Version": "0.3.1", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "png", - "purrr", - "raster", - "stats" - ], - "Hash": "abdaf883004a4791545655d79ca3aae0" - }, - "sp": { - "Package": "sp", - "Version": "2.1-4", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "grDevices", - "graphics", - "grid", - "lattice", - "methods", - "stats", - "utils" - ], - "Hash": "75940133cca2e339afce15a586f85b11" - }, - "stringi": { - "Package": "stringi", - "Version": "1.8.4", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "stats", - "tools", - "utils" - ], - "Hash": "39e1144fd75428983dc3f63aa53dfa91" - }, - "stringr": { - "Package": "stringr", - "Version": "1.5.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "cli", - "glue", - "lifecycle", - "magrittr", - "rlang", - "stringi", - "vctrs" - ], - "Hash": "960e2ae9e09656611e0b8214ad543207" - }, - "sys": { - "Package": "sys", - "Version": "3.4.2", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "3a1be13d68d47a8cd0bfd74739ca1555" - }, - "systemfonts": { - "Package": "systemfonts", - "Version": "1.0.6", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "cpp11" - ], - "Hash": "6d538cff441f0f1f36db2209ac7495ac" - }, - "terra": { - "Package": "terra", - "Version": "1.7-71", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "Rcpp", - "methods" - ], - "Hash": "e8611881ab70a4fb7a1f629b31e6fcff" - }, - "testthat": { - "Package": "testthat", - "Version": "3.2.1.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "R6", - "brio", - "callr", - "cli", - "desc", - "digest", - "evaluate", - "jsonlite", - "lifecycle", - "magrittr", - "methods", - "pkgload", - "praise", - "processx", - "ps", - "rlang", - "utils", - "waldo", - "withr" - ], - "Hash": "3f6e7e5e2220856ff865e4834766bf2b" - }, - "textshaping": { - "Package": "textshaping", - "Version": "0.3.7", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "cpp11", - "systemfonts" - ], - "Hash": "997aac9ad649e0ef3b97f96cddd5622b" - }, - "tibble": { - "Package": "tibble", - "Version": "3.2.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "fansi", - "lifecycle", - "magrittr", - "methods", - "pillar", - "pkgconfig", - "rlang", - "utils", - "vctrs" - ], - "Hash": "a84e2cc86d07289b3b6f5069df7a004c" - }, - "tidyr": { - "Package": "tidyr", - "Version": "1.3.1", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "cli", - "cpp11", - "dplyr", - "glue", - "lifecycle", - "magrittr", - "purrr", - "rlang", - "stringr", - "tibble", - "tidyselect", - "utils", - "vctrs" - ], - "Hash": "915fb7ce036c22a6a33b5a8adb712eb1" - }, - "tidyselect": { - "Package": "tidyselect", - "Version": "1.2.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "cli", - "glue", - "lifecycle", - "rlang", - "vctrs", - "withr" - ], - "Hash": "829f27b9c4919c16b593794a6344d6c0" - }, - "timechange": { - "Package": "timechange", - "Version": "0.3.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "cpp11" - ], - "Hash": "c5f3c201b931cd6474d17d8700ccb1c8" - }, - "tinytex": { - "Package": "tinytex", - "Version": "0.51", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "xfun" - ], - "Hash": "d44e2fcd2e4e076f0aac540208559d1d" - }, - "triebeard": { - "Package": "triebeard", - "Version": "0.4.1", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "Rcpp" - ], - "Hash": "642507a148b0dd9b5620177e0a044413" - }, - "units": { - "Package": "units", - "Version": "0.8-5", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "Rcpp" - ], - "Hash": "119d19da480e873f72241ff6962ffd83" - }, - "urltools": { - "Package": "urltools", - "Version": "1.7.3", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "Rcpp", - "methods", - "triebeard" - ], - "Hash": "e86a704261a105f4703f653e05defa3e" - }, - "utf8": { - "Package": "utf8", - "Version": "1.2.4", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "62b65c52671e6665f803ff02954446e9" - }, - "vctrs": { - "Package": "vctrs", - "Version": "0.6.5", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "cli", - "glue", - "lifecycle", - "rlang" - ], - "Hash": "c03fa420630029418f7e6da3667aac4a" - }, - "viridisLite": { - "Package": "viridisLite", - "Version": "0.4.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "c826c7c4241b6fc89ff55aaea3fa7491" - }, - "waldo": { - "Package": "waldo", - "Version": "0.5.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "cli", - "diffobj", - "fansi", - "glue", - "methods", - "rematch2", - "rlang", - "tibble" - ], - "Hash": "c7d3fd6d29ab077cbac8f0e2751449e6" - }, - "whisker": { - "Package": "whisker", - "Version": "0.4.1", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "c6abfa47a46d281a7d5159d0a8891e88" - }, - "withr": { - "Package": "withr", - "Version": "3.0.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "grDevices", - "graphics" - ], - "Hash": "d31b6c62c10dcf11ec530ca6b0dd5d35" - }, - "wk": { - "Package": "wk", - "Version": "0.9.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "5d4545e140e36476f35f20d0ca87963e" - }, - "xfun": { - "Package": "xfun", - "Version": "0.43", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "grDevices", - "stats", - "tools" - ], - "Hash": "ab6371d8653ce5f2f9290f4ec7b42a8e" - }, - "xml2": { - "Package": "xml2", - "Version": "1.3.6", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "cli", - "methods", - "rlang" - ], - "Hash": "1d0336142f4cd25d8d23cd3ba7a8fb61" - }, - "xmlparsedata": { - "Package": "xmlparsedata", - "Version": "1.0.5", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "45e4bf3c46476896e821fc0a408fb4fc" - }, - "xopen": { - "Package": "xopen", - "Version": "1.0.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "processx" - ], - "Hash": "423df1e86d5533fcb73c6b02b4923b49" - }, - "yaml": { - "Package": "yaml", - "Version": "2.3.8", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "29240487a071f535f5e5d5a323b7afbd" - } - } -} diff --git a/renv/profiles/dev/renv/.gitignore b/renv/profiles/dev/renv/.gitignore deleted file mode 100644 index 0ec0cbb..0000000 --- a/renv/profiles/dev/renv/.gitignore +++ /dev/null @@ -1,7 +0,0 @@ -library/ -local/ -cellar/ -lock/ -python/ -sandbox/ -staging/ diff --git a/renv/settings.dcf b/renv/settings.dcf deleted file mode 100644 index fc4e479..0000000 --- a/renv/settings.dcf +++ /dev/null @@ -1,8 +0,0 @@ -external.libraries: -ignored.packages: -package.dependency.fields: Imports, Depends, LinkingTo -r.version: -snapshot.type: implicit -use.cache: TRUE -vcs.ignore.library: TRUE -vcs.ignore.local: TRUE diff --git a/renv/settings.json b/renv/settings.json index f836f3f..ffdbb32 100644 --- a/renv/settings.json +++ b/renv/settings.json @@ -9,7 +9,7 @@ ], "ppm.enabled": null, "ppm.ignored.urls": [], - "r.version": [], + "r.version": null, "snapshot.type": "implicit", "use.cache": true, "vcs.ignore.cellar": true, From afad91236c1321d653562b6a8f90946e9c686aeb Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Mon, 24 Jun 2024 16:59:21 +0200 Subject: [PATCH 10/35] :bug: fix variant vignette --- vignettes/variants.Rmd | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/vignettes/variants.Rmd b/vignettes/variants.Rmd index 0656ca4..628ca2b 100644 --- a/vignettes/variants.Rmd +++ b/vignettes/variants.Rmd @@ -69,7 +69,17 @@ snp <- get_smarter_variants( ``` ```{r echo=FALSE} -pander::pander(subset(snp, select = -c(`_id.$oid`, `sequence.IlluminaGoatSNP50`))) +pander::pander( + subset( + snp, + select = -c( + `_id.$oid`, + `sequence.IlluminaGoatSNP50`, + `sequence.AffymetrixAxiomGoatv2`, + `chip_name` + ) + ) +) ``` Please, refer to the `get_smarter_info()` `working_assemblies` to have an idea @@ -113,7 +123,16 @@ variants <- get_smarter_variants( ``` ```{r echo=FALSE} -pander::pander(subset(variants, select = -c(`_id.$oid`, `sequence.IlluminaGoatSNP50`))) +pander::pander( + subset( + snp, + select = -c( + `_id.$oid`, + `chip_name`, + `sequence.IlluminaOvineHDSNP` + ) + ) +) ``` ## Fetch Variants by chip name From c76f4937e67289118424391a75ec4d37d09243f6 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Mon, 24 Jun 2024 17:17:24 +0200 Subject: [PATCH 11/35] :construction_worker: update CI system --- .github/workflows/R-CMD-check.yaml | 11 +++++------ .github/workflows/lint.yaml | 10 ++++++---- .github/workflows/pkgdown.yaml | 2 +- 3 files changed, 12 insertions(+), 11 deletions(-) diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index a864543..b1cce8a 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -33,7 +33,7 @@ jobs: R_KEEP_PKG_SOURCE: yes steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Install dependencies on Linux if: runner.os == 'Linux' @@ -44,18 +44,17 @@ jobs: if: runner.os == 'macOS' run: brew install gdal - - uses: r-lib/actions/setup-pandoc@v2 - - uses: r-lib/actions/setup-r@v2 with: r-version: ${{ matrix.config.r }} http-user-agent: ${{ matrix.config.http-user-agent }} use-public-rspm: true - - uses: r-lib/actions/setup-renv@v2 + - uses: r-lib/actions/setup-r-dependencies@v2 with: - cache-version: 1 - profile: '"dev"' + cache-version: 2 + extra-packages: | + any::rcmdcheck - uses: r-lib/actions/check-r-package@v2 with: diff --git a/.github/workflows/lint.yaml b/.github/workflows/lint.yaml index f092027..cd80853 100644 --- a/.github/workflows/lint.yaml +++ b/.github/workflows/lint.yaml @@ -16,7 +16,7 @@ jobs: GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Install dependencies on Linux run: sudo apt-get update -y && sudo apt-get install -y libcurl4-openssl-dev @@ -26,10 +26,12 @@ jobs: with: use-public-rspm: true - - uses: r-lib/actions/setup-renv@v2 + - uses: r-lib/actions/setup-r-dependencies@v2 with: - cache-version: 1 - profile: '"dev"' + cache-version: 2 + extra-packages: | + any::rcmdcheck + any::lintr - name: Lint run: lintr::lint_package() diff --git a/.github/workflows/pkgdown.yaml b/.github/workflows/pkgdown.yaml index daabfe9..1ad13a3 100644 --- a/.github/workflows/pkgdown.yaml +++ b/.github/workflows/pkgdown.yaml @@ -20,7 +20,7 @@ jobs: SMARTER_API_PASSWORD: ${{ secrets.SMARTER_API_PASSWORD }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Install dependencies on Linux run: sudo apt-get update -y && sudo apt-get install -y libcurl4-openssl-dev From 4ac68239088b7061f75da14af8b2b929e0b4b652 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Mon, 24 Jun 2024 17:33:19 +0200 Subject: [PATCH 12/35] :construction_worker: attempt to limit dependencies --- .github/workflows/R-CMD-check.yaml | 1 + .github/workflows/lint.yaml | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index b1cce8a..337373e 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -53,6 +53,7 @@ jobs: - uses: r-lib/actions/setup-r-dependencies@v2 with: cache-version: 2 + dependencies: '"hard"' extra-packages: | any::rcmdcheck diff --git a/.github/workflows/lint.yaml b/.github/workflows/lint.yaml index cd80853..7f452e4 100644 --- a/.github/workflows/lint.yaml +++ b/.github/workflows/lint.yaml @@ -29,8 +29,8 @@ jobs: - uses: r-lib/actions/setup-r-dependencies@v2 with: cache-version: 2 + dependencies: '"hard"' extra-packages: | - any::rcmdcheck any::lintr - name: Lint From 0df16f57ea9d280886c09e09b03c932581ce987f Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Mon, 24 Jun 2024 17:52:35 +0200 Subject: [PATCH 13/35] :green_heart: add missing package --- .github/workflows/R-CMD-check.yaml | 3 ++- .github/workflows/lint.yaml | 2 +- .github/workflows/pkgdown.yaml | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index 337373e..31984b7 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -52,10 +52,11 @@ jobs: - uses: r-lib/actions/setup-r-dependencies@v2 with: - cache-version: 2 + cache-version: 1 dependencies: '"hard"' extra-packages: | any::rcmdcheck + any::knitr - uses: r-lib/actions/check-r-package@v2 with: diff --git a/.github/workflows/lint.yaml b/.github/workflows/lint.yaml index 7f452e4..379a51b 100644 --- a/.github/workflows/lint.yaml +++ b/.github/workflows/lint.yaml @@ -28,7 +28,7 @@ jobs: - uses: r-lib/actions/setup-r-dependencies@v2 with: - cache-version: 2 + cache-version: 1 dependencies: '"hard"' extra-packages: | any::lintr diff --git a/.github/workflows/pkgdown.yaml b/.github/workflows/pkgdown.yaml index 1ad13a3..4260aec 100644 --- a/.github/workflows/pkgdown.yaml +++ b/.github/workflows/pkgdown.yaml @@ -34,7 +34,7 @@ jobs: - uses: r-lib/actions/setup-renv@v2 with: - cache-version: 2 + cache-version: 1 - name: Build site run: pkgdown::build_site_github_pages(new_process = FALSE, install = TRUE) From 3a6426e1f3d46b9ead1a9967583a541a7eef6d11 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Mon, 24 Jun 2024 20:11:46 +0200 Subject: [PATCH 14/35] :green_heart: install all required dependencies since the default test is c("--no-manual", "--as-cran"), all the suggested packages to build the vignettes are required --- .github/workflows/R-CMD-check.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index 31984b7..ba9422a 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -53,10 +53,8 @@ jobs: - uses: r-lib/actions/setup-r-dependencies@v2 with: cache-version: 1 - dependencies: '"hard"' extra-packages: | any::rcmdcheck - any::knitr - uses: r-lib/actions/check-r-package@v2 with: From 30e5537c723bed3f012241167f737956350a8dc8 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Mon, 24 Jun 2024 21:05:42 +0200 Subject: [PATCH 15/35] :green_heart: attempt to fix CI build --- .github/workflows/R-CMD-check.yaml | 3 --- .github/workflows/lint.yaml | 1 - 2 files changed, 4 deletions(-) diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index a864543..3f04625 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -44,8 +44,6 @@ jobs: if: runner.os == 'macOS' run: brew install gdal - - uses: r-lib/actions/setup-pandoc@v2 - - uses: r-lib/actions/setup-r@v2 with: r-version: ${{ matrix.config.r }} @@ -55,7 +53,6 @@ jobs: - uses: r-lib/actions/setup-renv@v2 with: cache-version: 1 - profile: '"dev"' - uses: r-lib/actions/check-r-package@v2 with: diff --git a/.github/workflows/lint.yaml b/.github/workflows/lint.yaml index f092027..374a4b8 100644 --- a/.github/workflows/lint.yaml +++ b/.github/workflows/lint.yaml @@ -29,7 +29,6 @@ jobs: - uses: r-lib/actions/setup-renv@v2 with: cache-version: 1 - profile: '"dev"' - name: Lint run: lintr::lint_package() From 488bbcaaac441d03eec99d2fc0cc792737a7fe36 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Mon, 24 Jun 2024 21:20:59 +0200 Subject: [PATCH 16/35] :green_heart: attempt to track required packages for CI --- .github/workflows/pkgdown.yaml | 2 +- DESCRIPTION | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/pkgdown.yaml b/.github/workflows/pkgdown.yaml index daabfe9..159dcb0 100644 --- a/.github/workflows/pkgdown.yaml +++ b/.github/workflows/pkgdown.yaml @@ -34,7 +34,7 @@ jobs: - uses: r-lib/actions/setup-renv@v2 with: - cache-version: 2 + cache-version: 1 - name: Build site run: pkgdown::build_site_github_pages(new_process = FALSE, install = TRUE) diff --git a/DESCRIPTION b/DESCRIPTION index 213b52d..0fc9a30 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -34,7 +34,7 @@ Suggests: rnaturalearth, rnaturalearthdata Config/testthat/edition: 3 -Config/renv/profiles/dev/dependencies: lintr, rcmdcheck +Config/renv/profiles/default/dependencies: lintr, rcmdcheck Imports: jsonlite, httr, From d767f8b3760191d30059571114faedff69866c73 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Mon, 24 Jun 2024 21:30:24 +0200 Subject: [PATCH 17/35] :wrench: pristine renv profile --- .github/workflows/R-CMD-check.yaml | 1 + .github/workflows/lint.yaml | 1 + .github/workflows/pkgdown.yaml | 1 + DESCRIPTION | 4 +- renv/profile | 1 + renv/profiles/dev/renv.lock | 1859 ++++++++++++++++++++++++++++ renv/profiles/dev/renv/.gitignore | 7 + 7 files changed, 1872 insertions(+), 2 deletions(-) create mode 100644 renv/profile create mode 100644 renv/profiles/dev/renv.lock create mode 100644 renv/profiles/dev/renv/.gitignore diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index 3f04625..3cf4a53 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -53,6 +53,7 @@ jobs: - uses: r-lib/actions/setup-renv@v2 with: cache-version: 1 + profile: '"dev"' - uses: r-lib/actions/check-r-package@v2 with: diff --git a/.github/workflows/lint.yaml b/.github/workflows/lint.yaml index 374a4b8..f092027 100644 --- a/.github/workflows/lint.yaml +++ b/.github/workflows/lint.yaml @@ -29,6 +29,7 @@ jobs: - uses: r-lib/actions/setup-renv@v2 with: cache-version: 1 + profile: '"dev"' - name: Lint run: lintr::lint_package() diff --git a/.github/workflows/pkgdown.yaml b/.github/workflows/pkgdown.yaml index 159dcb0..d4413c3 100644 --- a/.github/workflows/pkgdown.yaml +++ b/.github/workflows/pkgdown.yaml @@ -35,6 +35,7 @@ jobs: - uses: r-lib/actions/setup-renv@v2 with: cache-version: 1 + profile: '"dev"' - name: Build site run: pkgdown::build_site_github_pages(new_process = FALSE, install = TRUE) diff --git a/DESCRIPTION b/DESCRIPTION index 0fc9a30..89b38ce 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,6 +1,6 @@ Package: smarterapi Title: Fetch SMARTER data through REST API -Version: 0.1.2 +Version: 0.2.0:9000 Authors@R: person("Paolo", "Cozzi", , "paolo.cozzi@ibba.cnr.it", role = c("aut", "cre"), @@ -34,7 +34,7 @@ Suggests: rnaturalearth, rnaturalearthdata Config/testthat/edition: 3 -Config/renv/profiles/default/dependencies: lintr, rcmdcheck +Config/renv/profiles/dev/dependencies: lintr, rcmdcheck Imports: jsonlite, httr, diff --git a/renv/profile b/renv/profile new file mode 100644 index 0000000..38f8e88 --- /dev/null +++ b/renv/profile @@ -0,0 +1 @@ +dev diff --git a/renv/profiles/dev/renv.lock b/renv/profiles/dev/renv.lock new file mode 100644 index 0000000..7c746f9 --- /dev/null +++ b/renv/profiles/dev/renv.lock @@ -0,0 +1,1859 @@ +{ + "R": { + "Version": "4.4.1", + "Repositories": [ + { + "Name": "CRAN", + "URL": "https://cloud.r-project.org" + } + ] + }, + "Packages": { + "DBI": { + "Package": "DBI", + "Version": "1.2.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods" + ], + "Hash": "164809cd72e1d5160b4cb3aa57f510fe" + }, + "KernSmooth": { + "Package": "KernSmooth", + "Version": "2.23-24", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "stats" + ], + "Hash": "9f33a1ee37bbe8919eb2ec4b9f2473a5" + }, + "MASS": { + "Package": "MASS", + "Version": "7.3-58.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics", + "methods", + "stats", + "utils" + ], + "Hash": "9586b552d57f5516fe4d25398c1bacd6" + }, + "Matrix": { + "Package": "Matrix", + "Version": "1.5-3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "graphics", + "grid", + "lattice", + "methods", + "stats", + "utils" + ], + "Hash": "4006dffe49958d2dd591c17e61e60591" + }, + "R6": { + "Package": "R6", + "Version": "2.5.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "470851b6d5d0ac559e9d01bb352b4021" + }, + "RColorBrewer": { + "Package": "RColorBrewer", + "Version": "1.1-3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "45f0398006e83a5b10b72a90663d8d8c" + }, + "Rcpp": { + "Package": "Rcpp", + "Version": "1.0.12", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "methods", + "utils" + ], + "Hash": "5ea2700d21e038ace58269ecdbeb9ec0" + }, + "abind": { + "Package": "abind", + "Version": "1.4-5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods", + "utils" + ], + "Hash": "4f57884290cc75ab22f4af9e9d4ca862" + }, + "askpass": { + "Package": "askpass", + "Version": "1.2.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "sys" + ], + "Hash": "cad6cf7f1d5f6e906700b9d3e718c796" + }, + "backports": { + "Package": "backports", + "Version": "1.4.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "c39fbec8a30d23e721980b8afb31984c" + }, + "base64enc": { + "Package": "base64enc", + "Version": "0.1-3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "543776ae6848fde2f48ff3816d0628bc" + }, + "brio": { + "Package": "brio", + "Version": "1.1.5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "c1ee497a6d999947c2c224ae46799b1a" + }, + "bslib": { + "Package": "bslib", + "Version": "0.7.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "base64enc", + "cachem", + "fastmap", + "grDevices", + "htmltools", + "jquerylib", + "jsonlite", + "lifecycle", + "memoise", + "mime", + "rlang", + "sass" + ], + "Hash": "8644cc53f43828f19133548195d7e59e" + }, + "cachem": { + "Package": "cachem", + "Version": "1.0.8", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "fastmap", + "rlang" + ], + "Hash": "c35768291560ce302c0a6589f92e837d" + }, + "callr": { + "Package": "callr", + "Version": "3.7.6", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "processx", + "utils" + ], + "Hash": "d7e13f49c19103ece9e58ad2d83a7354" + }, + "class": { + "Package": "class", + "Version": "7.3-22", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "MASS", + "R", + "stats", + "utils" + ], + "Hash": "f91f6b29f38b8c280f2b9477787d4bb2" + }, + "classInt": { + "Package": "classInt", + "Version": "0.4-10", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "KernSmooth", + "R", + "class", + "e1071", + "grDevices", + "graphics", + "stats" + ], + "Hash": "f5a40793b1ae463a7ffb3902a95bf864" + }, + "cli": { + "Package": "cli", + "Version": "3.6.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "utils" + ], + "Hash": "1216ac65ac55ec0058a6f75d7ca0fd52" + }, + "codetools": { + "Package": "codetools", + "Version": "0.2-20", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "61e097f35917d342622f21cdc79c256e" + }, + "colorspace": { + "Package": "colorspace", + "Version": "2.1-0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics", + "methods", + "stats" + ], + "Hash": "f20c47fd52fae58b4e377c37bb8c335b" + }, + "cpp11": { + "Package": "cpp11", + "Version": "0.4.7", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "5a295d7d963cc5035284dcdbaf334f4e" + }, + "crayon": { + "Package": "crayon", + "Version": "1.5.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "grDevices", + "methods", + "utils" + ], + "Hash": "e8a1e41acf02548751f45c718d55aa6a" + }, + "crosstalk": { + "Package": "crosstalk", + "Version": "1.2.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R6", + "htmltools", + "jsonlite", + "lazyeval" + ], + "Hash": "ab12c7b080a57475248a30f4db6298c0" + }, + "curl": { + "Package": "curl", + "Version": "5.2.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "411ca2c03b1ce5f548345d2fc2685f7a" + }, + "cyclocomp": { + "Package": "cyclocomp", + "Version": "1.1.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "callr", + "crayon", + "desc", + "remotes", + "withr" + ], + "Hash": "cdc4a473222b0112d4df0bcfbed12d44" + }, + "desc": { + "Package": "desc", + "Version": "1.4.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "cli", + "utils" + ], + "Hash": "99b79fcbd6c4d1ce087f5c5c758b384f" + }, + "diffobj": { + "Package": "diffobj", + "Version": "0.3.5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "crayon", + "methods", + "stats", + "tools", + "utils" + ], + "Hash": "bcaa8b95f8d7d01a5dedfd959ce88ab8" + }, + "digest": { + "Package": "digest", + "Version": "0.6.35", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "utils" + ], + "Hash": "698ece7ba5a4fa4559e3d537e7ec3d31" + }, + "downlit": { + "Package": "downlit", + "Version": "0.4.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "brio", + "desc", + "digest", + "evaluate", + "fansi", + "memoise", + "rlang", + "vctrs", + "withr", + "yaml" + ], + "Hash": "14fa1f248b60ed67e1f5418391a17b14" + }, + "dplyr": { + "Package": "dplyr", + "Version": "1.1.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "cli", + "generics", + "glue", + "lifecycle", + "magrittr", + "methods", + "pillar", + "rlang", + "tibble", + "tidyselect", + "utils", + "vctrs" + ], + "Hash": "fedd9d00c2944ff00a0e2696ccf048ec" + }, + "e1071": { + "Package": "e1071", + "Version": "1.7-14", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "class", + "grDevices", + "graphics", + "methods", + "proxy", + "stats", + "utils" + ], + "Hash": "4ef372b716824753719a8a38b258442d" + }, + "elevatr": { + "Package": "elevatr", + "Version": "0.99.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "curl", + "furrr", + "future", + "httr", + "jsonlite", + "methods", + "progressr", + "purrr", + "raster", + "sf", + "slippymath", + "terra", + "units" + ], + "Hash": "f5a648116dfa343b1c76c40d33a8e834" + }, + "evaluate": { + "Package": "evaluate", + "Version": "0.23", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods" + ], + "Hash": "daf4a1246be12c1fa8c7705a0935c1a0" + }, + "fansi": { + "Package": "fansi", + "Version": "1.0.6", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "utils" + ], + "Hash": "962174cf2aeb5b9eea581522286a911f" + }, + "farver": { + "Package": "farver", + "Version": "2.1.1", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "8106d78941f34855c440ddb946b8f7a5" + }, + "fastmap": { + "Package": "fastmap", + "Version": "1.1.1", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "f7736a18de97dea803bde0a2daaafb27" + }, + "fontawesome": { + "Package": "fontawesome", + "Version": "0.5.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "htmltools", + "rlang" + ], + "Hash": "c2efdd5f0bcd1ea861c2d4e2a883a67d" + }, + "fs": { + "Package": "fs", + "Version": "1.6.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods" + ], + "Hash": "15aeb8c27f5ea5161f9f6a641fafd93a" + }, + "furrr": { + "Package": "furrr", + "Version": "0.3.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "future", + "globals", + "lifecycle", + "purrr", + "rlang", + "vctrs" + ], + "Hash": "da7a4c32196cb2262a41dd5a25d486ff" + }, + "future": { + "Package": "future", + "Version": "1.33.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "digest", + "globals", + "listenv", + "parallel", + "parallelly", + "utils" + ], + "Hash": "fd7b1d69d16d0d114e4fa82db68f184c" + }, + "generics": { + "Package": "generics", + "Version": "0.1.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods" + ], + "Hash": "15e9634c0fcd294799e9b2e929ed1b86" + }, + "geodata": { + "Package": "geodata", + "Version": "0.5-9", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "terra" + ], + "Hash": "5937c0840e80ae8a7506f1d12e454e5a" + }, + "ggplot2": { + "Package": "ggplot2", + "Version": "3.5.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "MASS", + "R", + "cli", + "glue", + "grDevices", + "grid", + "gtable", + "isoband", + "lifecycle", + "mgcv", + "rlang", + "scales", + "stats", + "tibble", + "vctrs", + "withr" + ], + "Hash": "44c6a2f8202d5b7e878ea274b1092426" + }, + "ggspatial": { + "Package": "ggspatial", + "Version": "1.1.9", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "abind", + "ggplot2", + "glue", + "grid", + "methods", + "rlang", + "rosm", + "scales", + "sf", + "tibble", + "tidyr" + ], + "Hash": "0a4e5ed181eb823957df790ec11a28fc" + }, + "globals": { + "Package": "globals", + "Version": "0.16.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "codetools" + ], + "Hash": "2580567908cafd4f187c1e5a91e98b7f" + }, + "glue": { + "Package": "glue", + "Version": "1.7.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods" + ], + "Hash": "e0b3a53876554bd45879e596cdb10a52" + }, + "gtable": { + "Package": "gtable", + "Version": "0.3.5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "glue", + "grid", + "lifecycle", + "rlang" + ], + "Hash": "e18861963cbc65a27736e02b3cd3c4a0" + }, + "highr": { + "Package": "highr", + "Version": "0.10", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "xfun" + ], + "Hash": "06230136b2d2b9ba5805e1963fa6e890" + }, + "hms": { + "Package": "hms", + "Version": "1.1.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "lifecycle", + "methods", + "pkgconfig", + "rlang", + "vctrs" + ], + "Hash": "b59377caa7ed00fa41808342002138f9" + }, + "htmltools": { + "Package": "htmltools", + "Version": "0.5.8.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "base64enc", + "digest", + "fastmap", + "grDevices", + "rlang", + "utils" + ], + "Hash": "81d371a9cc60640e74e4ab6ac46dcedc" + }, + "htmlwidgets": { + "Package": "htmlwidgets", + "Version": "1.6.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "grDevices", + "htmltools", + "jsonlite", + "knitr", + "rmarkdown", + "yaml" + ], + "Hash": "04291cc45198225444a397606810ac37" + }, + "httr": { + "Package": "httr", + "Version": "1.4.7", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "curl", + "jsonlite", + "mime", + "openssl" + ], + "Hash": "ac107251d9d9fd72f0ca8049988f1d7f" + }, + "isoband": { + "Package": "isoband", + "Version": "0.2.7", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "grid", + "utils" + ], + "Hash": "0080607b4a1a7b28979aecef976d8bc2" + }, + "jpeg": { + "Package": "jpeg", + "Version": "0.1-10", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "031a0b683d001a7519202f0628fc0358" + }, + "jquerylib": { + "Package": "jquerylib", + "Version": "0.1.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "htmltools" + ], + "Hash": "5aab57a3bd297eee1c1d862735972182" + }, + "jsonlite": { + "Package": "jsonlite", + "Version": "1.8.8", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "methods" + ], + "Hash": "e1b9c55281c5adc4dd113652d9e26768" + }, + "knitr": { + "Package": "knitr", + "Version": "1.46", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "evaluate", + "highr", + "methods", + "tools", + "xfun", + "yaml" + ], + "Hash": "6e008ab1d696a5283c79765fa7b56b47" + }, + "labeling": { + "Package": "labeling", + "Version": "0.4.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "graphics", + "stats" + ], + "Hash": "b64ec208ac5bc1852b285f665d6368b3" + }, + "lattice": { + "Package": "lattice", + "Version": "0.22-6", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics", + "grid", + "stats", + "utils" + ], + "Hash": "cc5ac1ba4c238c7ca9fa6a87ca11a7e2" + }, + "lazyeval": { + "Package": "lazyeval", + "Version": "0.2.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "d908914ae53b04d4c0c0fd72ecc35370" + }, + "leaflet": { + "Package": "leaflet", + "Version": "2.2.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "RColorBrewer", + "crosstalk", + "htmltools", + "htmlwidgets", + "jquerylib", + "leaflet.providers", + "magrittr", + "methods", + "png", + "raster", + "scales", + "sp", + "stats", + "viridisLite", + "xfun" + ], + "Hash": "ca012d4a706e21ce217ba15f22d402b2" + }, + "leaflet.providers": { + "Package": "leaflet.providers", + "Version": "2.0.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "htmltools" + ], + "Hash": "c0b81ad9d5d932772f7a457ac398cf36" + }, + "lifecycle": { + "Package": "lifecycle", + "Version": "1.0.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "glue", + "rlang" + ], + "Hash": "b8552d117e1b808b09a832f589b79035" + }, + "lintr": { + "Package": "lintr", + "Version": "3.1.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "backports", + "codetools", + "cyclocomp", + "digest", + "glue", + "knitr", + "rex", + "stats", + "utils", + "xml2", + "xmlparsedata" + ], + "Hash": "08cff46381a242d44c0d8dd0aabd9f71" + }, + "listenv": { + "Package": "listenv", + "Version": "0.9.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "e2fca3e12e4db979dccc6e519b10a7ee" + }, + "logger": { + "Package": "logger", + "Version": "0.3.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "utils" + ], + "Hash": "c145edf05cc128e6ffcfa5d872c46329" + }, + "lubridate": { + "Package": "lubridate", + "Version": "1.9.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "generics", + "methods", + "timechange" + ], + "Hash": "680ad542fbcf801442c83a6ac5a2126c" + }, + "magrittr": { + "Package": "magrittr", + "Version": "2.0.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "7ce2733a9826b3aeb1775d56fd305472" + }, + "memoise": { + "Package": "memoise", + "Version": "2.0.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "cachem", + "rlang" + ], + "Hash": "e2817ccf4a065c5d9d7f2cfbe7c1d78c" + }, + "mgcv": { + "Package": "mgcv", + "Version": "1.9-1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "Matrix", + "R", + "graphics", + "methods", + "nlme", + "splines", + "stats", + "utils" + ], + "Hash": "110ee9d83b496279960e162ac97764ce" + }, + "mime": { + "Package": "mime", + "Version": "0.12", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "tools" + ], + "Hash": "18e9c28c1d3ca1560ce30658b22ce104" + }, + "munsell": { + "Package": "munsell", + "Version": "0.5.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "colorspace", + "methods" + ], + "Hash": "4fd8900853b746af55b81fda99da7695" + }, + "nlme": { + "Package": "nlme", + "Version": "3.1-165", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "graphics", + "lattice", + "stats", + "utils" + ], + "Hash": "2769a88be217841b1f33ed469675c3cc" + }, + "openssl": { + "Package": "openssl", + "Version": "2.1.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "askpass" + ], + "Hash": "ea2475b073243d9d338aa8f086ce973e" + }, + "pander": { + "Package": "pander", + "Version": "0.6.5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "Rcpp", + "digest", + "grDevices", + "graphics", + "methods", + "stats", + "tools", + "utils" + ], + "Hash": "737924139a1e4fc96356ff377c754c35" + }, + "parallelly": { + "Package": "parallelly", + "Version": "1.37.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "parallel", + "tools", + "utils" + ], + "Hash": "5410df8d22bd36e616f2a2343dbb328c" + }, + "pillar": { + "Package": "pillar", + "Version": "1.9.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "cli", + "fansi", + "glue", + "lifecycle", + "rlang", + "utf8", + "utils", + "vctrs" + ], + "Hash": "15da5a8412f317beeee6175fbc76f4bb" + }, + "pkgbuild": { + "Package": "pkgbuild", + "Version": "1.4.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "callr", + "cli", + "desc", + "processx" + ], + "Hash": "a29e8e134a460a01e0ca67a4763c595b" + }, + "pkgconfig": { + "Package": "pkgconfig", + "Version": "2.0.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "utils" + ], + "Hash": "01f28d4278f15c76cddbea05899c5d6f" + }, + "pkgdown": { + "Package": "pkgdown", + "Version": "2.0.9", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "bslib", + "callr", + "cli", + "desc", + "digest", + "downlit", + "fs", + "httr", + "jsonlite", + "magrittr", + "memoise", + "purrr", + "ragg", + "rlang", + "rmarkdown", + "tibble", + "whisker", + "withr", + "xml2", + "yaml" + ], + "Hash": "8bf1151ed1a48328d71b937e651117a6" + }, + "pkgload": { + "Package": "pkgload", + "Version": "1.3.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "crayon", + "desc", + "fs", + "glue", + "methods", + "pkgbuild", + "rlang", + "rprojroot", + "utils", + "withr" + ], + "Hash": "876c618df5ae610be84356d5d7a5d124" + }, + "png": { + "Package": "png", + "Version": "0.1-8", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "bd54ba8a0a5faded999a7aab6e46b374" + }, + "praise": { + "Package": "praise", + "Version": "1.0.0", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "a555924add98c99d2f411e37e7d25e9f" + }, + "prettyunits": { + "Package": "prettyunits", + "Version": "1.2.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "6b01fc98b1e86c4f705ce9dcfd2f57c7" + }, + "processx": { + "Package": "processx", + "Version": "3.8.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "ps", + "utils" + ], + "Hash": "0c90a7d71988856bad2a2a45dd871bb9" + }, + "progress": { + "Package": "progress", + "Version": "1.2.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "crayon", + "hms", + "prettyunits" + ], + "Hash": "f4625e061cb2865f111b47ff163a5ca6" + }, + "progressr": { + "Package": "progressr", + "Version": "0.14.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "digest", + "utils" + ], + "Hash": "ac50c4ffa8f6a46580dd4d7813add3c4" + }, + "proxy": { + "Package": "proxy", + "Version": "0.4-27", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "stats", + "utils" + ], + "Hash": "e0ef355c12942cf7a6b91a6cfaea8b3e" + }, + "ps": { + "Package": "ps", + "Version": "1.7.6", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "utils" + ], + "Hash": "dd2b9319ee0656c8acf45c7f40c59de7" + }, + "purrr": { + "Package": "purrr", + "Version": "1.0.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "lifecycle", + "magrittr", + "rlang", + "vctrs" + ], + "Hash": "1cba04a4e9414bdefc9dcaa99649a8dc" + }, + "ragg": { + "Package": "ragg", + "Version": "1.3.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "systemfonts", + "textshaping" + ], + "Hash": "539dcb63ce611fe389b4c8e2b546cf24" + }, + "rappdirs": { + "Package": "rappdirs", + "Version": "0.3.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "5e3c5dc0b071b21fa128676560dbe94d" + }, + "raster": { + "Package": "raster", + "Version": "3.6-26", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "Rcpp", + "methods", + "sp", + "terra" + ], + "Hash": "7d6eda494f34a644420ac1bfd2a8023a" + }, + "rcmdcheck": { + "Package": "rcmdcheck", + "Version": "1.4.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R6", + "callr", + "cli", + "curl", + "desc", + "digest", + "pkgbuild", + "prettyunits", + "rprojroot", + "sessioninfo", + "utils", + "withr", + "xopen" + ], + "Hash": "8f25ebe2ec38b1f2aef3b0d2ef76f6c4" + }, + "rematch2": { + "Package": "rematch2", + "Version": "2.1.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "tibble" + ], + "Hash": "76c9e04c712a05848ae7a23d2f170a40" + }, + "remotes": { + "Package": "remotes", + "Version": "2.5.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods", + "stats", + "tools", + "utils" + ], + "Hash": "3ee025083e66f18db6cf27b56e23e141" + }, + "renv": { + "Package": "renv", + "Version": "1.0.7", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "utils" + ], + "Hash": "397b7b2a265bc5a7a06852524dabae20" + }, + "rex": { + "Package": "rex", + "Version": "1.2.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "lazyeval" + ], + "Hash": "ae34cd56890607370665bee5bd17812f" + }, + "rlang": { + "Package": "rlang", + "Version": "1.1.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "utils" + ], + "Hash": "42548638fae05fd9a9b5f3f437fbbbe2" + }, + "rmarkdown": { + "Package": "rmarkdown", + "Version": "2.26", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "bslib", + "evaluate", + "fontawesome", + "htmltools", + "jquerylib", + "jsonlite", + "knitr", + "methods", + "tinytex", + "tools", + "utils", + "xfun", + "yaml" + ], + "Hash": "9b148e7f95d33aac01f31282d49e4f44" + }, + "rnaturalearth": { + "Package": "rnaturalearth", + "Version": "1.0.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "httr", + "jsonlite", + "sf", + "terra", + "utils" + ], + "Hash": "741166cab0fe76d8a5670d3ee459a2a4" + }, + "rnaturalearthdata": { + "Package": "rnaturalearthdata", + "Version": "1.0.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "650339de24d9574c0079a4a13baa623d" + }, + "rosm": { + "Package": "rosm", + "Version": "0.3.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "curl", + "glue", + "jpeg", + "png", + "progress", + "rlang", + "wk" + ], + "Hash": "fcd529f183c4163a91430d7b7bbaece5" + }, + "rprojroot": { + "Package": "rprojroot", + "Version": "2.0.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "4c8415e0ec1e29f3f4f6fc108bef0144" + }, + "s2": { + "Package": "s2", + "Version": "1.1.6", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "Rcpp", + "wk" + ], + "Hash": "32f7b1a15bb01ae809022960abad5363" + }, + "sass": { + "Package": "sass", + "Version": "0.4.9", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R6", + "fs", + "htmltools", + "rappdirs", + "rlang" + ], + "Hash": "d53dbfddf695303ea4ad66f86e99b95d" + }, + "scales": { + "Package": "scales", + "Version": "1.3.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "RColorBrewer", + "cli", + "farver", + "glue", + "labeling", + "lifecycle", + "munsell", + "rlang", + "viridisLite" + ], + "Hash": "c19df082ba346b0ffa6f833e92de34d1" + }, + "sessioninfo": { + "Package": "sessioninfo", + "Version": "1.2.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "tools", + "utils" + ], + "Hash": "3f9796a8d0a0e8c6eb49a4b029359d1f" + }, + "sf": { + "Package": "sf", + "Version": "1.0-16", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "DBI", + "R", + "Rcpp", + "classInt", + "grDevices", + "graphics", + "grid", + "magrittr", + "methods", + "s2", + "stats", + "tools", + "units", + "utils" + ], + "Hash": "ad57b543f7c3fca05213ba78ff63df9b" + }, + "slippymath": { + "Package": "slippymath", + "Version": "0.3.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "png", + "purrr", + "raster", + "stats" + ], + "Hash": "abdaf883004a4791545655d79ca3aae0" + }, + "sp": { + "Package": "sp", + "Version": "2.1-4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics", + "grid", + "lattice", + "methods", + "stats", + "utils" + ], + "Hash": "75940133cca2e339afce15a586f85b11" + }, + "stringi": { + "Package": "stringi", + "Version": "1.8.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "stats", + "tools", + "utils" + ], + "Hash": "39e1144fd75428983dc3f63aa53dfa91" + }, + "stringr": { + "Package": "stringr", + "Version": "1.5.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "glue", + "lifecycle", + "magrittr", + "rlang", + "stringi", + "vctrs" + ], + "Hash": "960e2ae9e09656611e0b8214ad543207" + }, + "sys": { + "Package": "sys", + "Version": "3.4.2", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "3a1be13d68d47a8cd0bfd74739ca1555" + }, + "systemfonts": { + "Package": "systemfonts", + "Version": "1.0.6", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cpp11" + ], + "Hash": "6d538cff441f0f1f36db2209ac7495ac" + }, + "terra": { + "Package": "terra", + "Version": "1.7-71", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "Rcpp", + "methods" + ], + "Hash": "e8611881ab70a4fb7a1f629b31e6fcff" + }, + "testthat": { + "Package": "testthat", + "Version": "3.2.1.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "brio", + "callr", + "cli", + "desc", + "digest", + "evaluate", + "jsonlite", + "lifecycle", + "magrittr", + "methods", + "pkgload", + "praise", + "processx", + "ps", + "rlang", + "utils", + "waldo", + "withr" + ], + "Hash": "3f6e7e5e2220856ff865e4834766bf2b" + }, + "textshaping": { + "Package": "textshaping", + "Version": "0.3.7", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cpp11", + "systemfonts" + ], + "Hash": "997aac9ad649e0ef3b97f96cddd5622b" + }, + "tibble": { + "Package": "tibble", + "Version": "3.2.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "fansi", + "lifecycle", + "magrittr", + "methods", + "pillar", + "pkgconfig", + "rlang", + "utils", + "vctrs" + ], + "Hash": "a84e2cc86d07289b3b6f5069df7a004c" + }, + "tidyr": { + "Package": "tidyr", + "Version": "1.3.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "cpp11", + "dplyr", + "glue", + "lifecycle", + "magrittr", + "purrr", + "rlang", + "stringr", + "tibble", + "tidyselect", + "utils", + "vctrs" + ], + "Hash": "915fb7ce036c22a6a33b5a8adb712eb1" + }, + "tidyselect": { + "Package": "tidyselect", + "Version": "1.2.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "glue", + "lifecycle", + "rlang", + "vctrs", + "withr" + ], + "Hash": "829f27b9c4919c16b593794a6344d6c0" + }, + "timechange": { + "Package": "timechange", + "Version": "0.3.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cpp11" + ], + "Hash": "c5f3c201b931cd6474d17d8700ccb1c8" + }, + "tinytex": { + "Package": "tinytex", + "Version": "0.51", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "xfun" + ], + "Hash": "d44e2fcd2e4e076f0aac540208559d1d" + }, + "triebeard": { + "Package": "triebeard", + "Version": "0.4.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "Rcpp" + ], + "Hash": "642507a148b0dd9b5620177e0a044413" + }, + "units": { + "Package": "units", + "Version": "0.8-5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "Rcpp" + ], + "Hash": "119d19da480e873f72241ff6962ffd83" + }, + "urltools": { + "Package": "urltools", + "Version": "1.7.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "Rcpp", + "methods", + "triebeard" + ], + "Hash": "e86a704261a105f4703f653e05defa3e" + }, + "utf8": { + "Package": "utf8", + "Version": "1.2.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "62b65c52671e6665f803ff02954446e9" + }, + "vctrs": { + "Package": "vctrs", + "Version": "0.6.5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "glue", + "lifecycle", + "rlang" + ], + "Hash": "c03fa420630029418f7e6da3667aac4a" + }, + "viridisLite": { + "Package": "viridisLite", + "Version": "0.4.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "c826c7c4241b6fc89ff55aaea3fa7491" + }, + "waldo": { + "Package": "waldo", + "Version": "0.5.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "diffobj", + "fansi", + "glue", + "methods", + "rematch2", + "rlang", + "tibble" + ], + "Hash": "c7d3fd6d29ab077cbac8f0e2751449e6" + }, + "whisker": { + "Package": "whisker", + "Version": "0.4.1", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "c6abfa47a46d281a7d5159d0a8891e88" + }, + "withr": { + "Package": "withr", + "Version": "3.0.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics" + ], + "Hash": "d31b6c62c10dcf11ec530ca6b0dd5d35" + }, + "wk": { + "Package": "wk", + "Version": "0.9.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "5d4545e140e36476f35f20d0ca87963e" + }, + "xfun": { + "Package": "xfun", + "Version": "0.43", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "grDevices", + "stats", + "tools" + ], + "Hash": "ab6371d8653ce5f2f9290f4ec7b42a8e" + }, + "xml2": { + "Package": "xml2", + "Version": "1.3.6", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "methods", + "rlang" + ], + "Hash": "1d0336142f4cd25d8d23cd3ba7a8fb61" + }, + "xmlparsedata": { + "Package": "xmlparsedata", + "Version": "1.0.5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "45e4bf3c46476896e821fc0a408fb4fc" + }, + "xopen": { + "Package": "xopen", + "Version": "1.0.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "processx" + ], + "Hash": "423df1e86d5533fcb73c6b02b4923b49" + }, + "yaml": { + "Package": "yaml", + "Version": "2.3.8", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "29240487a071f535f5e5d5a323b7afbd" + } + } +} diff --git a/renv/profiles/dev/renv/.gitignore b/renv/profiles/dev/renv/.gitignore new file mode 100644 index 0000000..0ec0cbb --- /dev/null +++ b/renv/profiles/dev/renv/.gitignore @@ -0,0 +1,7 @@ +library/ +local/ +cellar/ +lock/ +python/ +sandbox/ +staging/ From ac2f04c24789927f1f35c86b3327f20ae29e3e7b Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Mon, 24 Jun 2024 21:36:32 +0200 Subject: [PATCH 18/35] :arrow_up: update dependencies --- renv.lock | 12 ++--- renv/profiles/dev/renv.lock | 97 +++++++++++++++++++------------------ 2 files changed, 56 insertions(+), 53 deletions(-) diff --git a/renv.lock b/renv.lock index 22b4dac..d134c88 100644 --- a/renv.lock +++ b/renv.lock @@ -213,14 +213,14 @@ }, "cli": { "Package": "cli", - "Version": "3.6.2", + "Version": "3.6.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "1216ac65ac55ec0058a6f75d7ca0fd52" + "Hash": "b21916dd77a27642b447374a5d30ecf3" }, "codetools": { "Package": "codetools", @@ -258,7 +258,7 @@ }, "crayon": { "Package": "crayon", - "Version": "1.5.2", + "Version": "1.5.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -266,7 +266,7 @@ "methods", "utils" ], - "Hash": "e8a1e41acf02548751f45c718d55aa6a" + "Hash": "859d96e65ef198fd43e82b9628d593ef" }, "crosstalk": { "Package": "crosstalk", @@ -1221,14 +1221,14 @@ }, "rlang": { "Package": "rlang", - "Version": "1.1.3", + "Version": "1.1.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "42548638fae05fd9a9b5f3f437fbbbe2" + "Hash": "3eec01f8b1dee337674b2e34ab1f9bc1" }, "rmarkdown": { "Package": "rmarkdown", diff --git a/renv/profiles/dev/renv.lock b/renv/profiles/dev/renv.lock index 7c746f9..5c5ac30 100644 --- a/renv/profiles/dev/renv.lock +++ b/renv/profiles/dev/renv.lock @@ -11,14 +11,14 @@ "Packages": { "DBI": { "Package": "DBI", - "Version": "1.2.2", + "Version": "1.2.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "164809cd72e1d5160b4cb3aa57f510fe" + "Hash": "065ae649b05f1ff66bb0c793107508f5" }, "KernSmooth": { "Package": "KernSmooth", @@ -33,7 +33,7 @@ }, "MASS": { "Package": "MASS", - "Version": "7.3-58.3", + "Version": "7.3-60", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -44,15 +44,16 @@ "stats", "utils" ], - "Hash": "9586b552d57f5516fe4d25398c1bacd6" + "Hash": "a56a6365b3fa73293ea8d084be0d9bb0" }, "Matrix": { "Package": "Matrix", - "Version": "1.5-3", + "Version": "1.7-0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", + "grDevices", "graphics", "grid", "lattice", @@ -60,7 +61,7 @@ "stats", "utils" ], - "Hash": "4006dffe49958d2dd591c17e61e60591" + "Hash": "1920b2f11133b12350024297d8a4ff4a" }, "R6": { "Package": "R6", @@ -117,13 +118,13 @@ }, "backports": { "Package": "backports", - "Version": "1.4.1", + "Version": "1.5.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "c39fbec8a30d23e721980b8afb31984c" + "Hash": "e1e1b9d75c37401117b636b7ae50827a" }, "base64enc": { "Package": "base64enc", @@ -169,14 +170,14 @@ }, "cachem": { "Package": "cachem", - "Version": "1.0.8", + "Version": "1.1.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "fastmap", "rlang" ], - "Hash": "c35768291560ce302c0a6589f92e837d" + "Hash": "cd9a672193789068eb5a2aad65a0dedf" }, "callr": { "Package": "callr", @@ -222,14 +223,14 @@ }, "cli": { "Package": "cli", - "Version": "3.6.2", + "Version": "3.6.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "1216ac65ac55ec0058a6f75d7ca0fd52" + "Hash": "b21916dd77a27642b447374a5d30ecf3" }, "codetools": { "Package": "codetools", @@ -267,7 +268,7 @@ }, "crayon": { "Package": "crayon", - "Version": "1.5.2", + "Version": "1.5.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -275,7 +276,7 @@ "methods", "utils" ], - "Hash": "e8a1e41acf02548751f45c718d55aa6a" + "Hash": "859d96e65ef198fd43e82b9628d593ef" }, "crosstalk": { "Package": "crosstalk", @@ -344,18 +345,18 @@ }, "digest": { "Package": "digest", - "Version": "0.6.35", + "Version": "0.6.36", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "698ece7ba5a4fa4559e3d537e7ec3d31" + "Hash": "fd6824ad91ede64151e93af67df6376b" }, "downlit": { "Package": "downlit", - "Version": "0.4.3", + "Version": "0.4.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -371,7 +372,7 @@ "withr", "yaml" ], - "Hash": "14fa1f248b60ed67e1f5418391a17b14" + "Hash": "45a6a596bf0108ee1ff16a040a2df897" }, "dplyr": { "Package": "dplyr", @@ -437,14 +438,14 @@ }, "evaluate": { "Package": "evaluate", - "Version": "0.23", + "Version": "0.24.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "daf4a1246be12c1fa8c7705a0935c1a0" + "Hash": "a1066cbc05caee9a4bf6d90f194ff4da" }, "fansi": { "Package": "fansi", @@ -460,17 +461,17 @@ }, "farver": { "Package": "farver", - "Version": "2.1.1", + "Version": "2.1.2", "Source": "Repository", "Repository": "CRAN", - "Hash": "8106d78941f34855c440ddb946b8f7a5" + "Hash": "680887028577f3fa2a81e410ed0d6e42" }, "fastmap": { "Package": "fastmap", - "Version": "1.1.1", + "Version": "1.2.0", "Source": "Repository", "Repository": "CRAN", - "Hash": "f7736a18de97dea803bde0a2daaafb27" + "Hash": "aa5e1cd11c2d15497494c5292d7ffcc8" }, "fontawesome": { "Package": "fontawesome", @@ -539,14 +540,14 @@ }, "geodata": { "Package": "geodata", - "Version": "0.5-9", + "Version": "0.6-2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "terra" ], - "Hash": "5937c0840e80ae8a7506f1d12e454e5a" + "Hash": "4d43570de08ab49ba86bb2ccb6fe117d" }, "ggplot2": { "Package": "ggplot2", @@ -633,14 +634,14 @@ }, "highr": { "Package": "highr", - "Version": "0.10", + "Version": "0.11", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "xfun" ], - "Hash": "06230136b2d2b9ba5805e1963fa6e890" + "Hash": "d65ba49117ca223614f71b60d85b8ab7" }, "hms": { "Package": "hms", @@ -745,7 +746,7 @@ }, "knitr": { "Package": "knitr", - "Version": "1.46", + "Version": "1.47", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -757,7 +758,7 @@ "xfun", "yaml" ], - "Hash": "6e008ab1d696a5283c79765fa7b56b47" + "Hash": "7c99b2d55584b982717fcc0950378612" }, "labeling": { "Package": "labeling", @@ -973,13 +974,13 @@ }, "openssl": { "Package": "openssl", - "Version": "2.1.2", + "Version": "2.2.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "askpass" ], - "Hash": "ea2475b073243d9d338aa8f086ce973e" + "Hash": "2bcca3848e4734eb3b16103bc9aa4b8e" }, "pander": { "Package": "pander", @@ -1210,14 +1211,14 @@ }, "ragg": { "Package": "ragg", - "Version": "1.3.1", + "Version": "1.3.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "systemfonts", "textshaping" ], - "Hash": "539dcb63ce611fe389b4c8e2b546cf24" + "Hash": "e3087db406e079a8a2fd87f413918ed3" }, "rappdirs": { "Package": "rappdirs", @@ -1311,18 +1312,18 @@ }, "rlang": { "Package": "rlang", - "Version": "1.1.3", + "Version": "1.1.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "42548638fae05fd9a9b5f3f437fbbbe2" + "Hash": "3eec01f8b1dee337674b2e34ab1f9bc1" }, "rmarkdown": { "Package": "rmarkdown", - "Version": "2.26", + "Version": "2.27", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1341,7 +1342,7 @@ "xfun", "yaml" ], - "Hash": "9b148e7f95d33aac01f31282d49e4f44" + "Hash": "27f9502e1cdbfa195f94e03b0f517484" }, "rnaturalearth": { "Package": "rnaturalearth", @@ -1546,18 +1547,19 @@ }, "systemfonts": { "Package": "systemfonts", - "Version": "1.0.6", + "Version": "1.1.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", - "cpp11" + "cpp11", + "lifecycle" ], - "Hash": "6d538cff441f0f1f36db2209ac7495ac" + "Hash": "213b6b8ed5afbf934843e6c3b090d418" }, "terra": { "Package": "terra", - "Version": "1.7-71", + "Version": "1.7-78", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1565,7 +1567,7 @@ "Rcpp", "methods" ], - "Hash": "e8611881ab70a4fb7a1f629b31e6fcff" + "Hash": "8f020def0792119cb98bd8f696dab22d" }, "testthat": { "Package": "testthat", @@ -1598,15 +1600,16 @@ }, "textshaping": { "Package": "textshaping", - "Version": "0.3.7", + "Version": "0.4.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "cpp11", + "lifecycle", "systemfonts" ], - "Hash": "997aac9ad649e0ef3b97f96cddd5622b" + "Hash": "5142f8bc78ed3d819d26461b641627ce" }, "tibble": { "Package": "tibble", @@ -1804,7 +1807,7 @@ }, "xfun": { "Package": "xfun", - "Version": "0.43", + "Version": "0.45", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1812,7 +1815,7 @@ "stats", "tools" ], - "Hash": "ab6371d8653ce5f2f9290f4ec7b42a8e" + "Hash": "ca59c87fe305b16a9141a5874c3a7889" }, "xml2": { "Package": "xml2", From abf0d024e310ece8928067ce7720911cf2f3ab30 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Mon, 24 Jun 2024 21:56:08 +0200 Subject: [PATCH 19/35] :green_heart: attempt to fix CI build --- .github/workflows/R-CMD-check.yaml | 4 +- .github/workflows/lint.yaml | 2 +- DESCRIPTION | 12 +- renv/profiles/dev/renv.lock | 253 +++++++++++++++++++++++++++++ smarterapi.Rproj | 1 + 5 files changed, 267 insertions(+), 5 deletions(-) diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index 3cf4a53..e6ae3ec 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -2,7 +2,7 @@ # Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help on: push: - branches: [master, devel] + branches: [master] pull_request: branches: [master, devel] @@ -44,6 +44,8 @@ jobs: if: runner.os == 'macOS' run: brew install gdal + - uses: r-lib/actions/setup-pandoc@v2 + - uses: r-lib/actions/setup-r@v2 with: r-version: ${{ matrix.config.r }} diff --git a/.github/workflows/lint.yaml b/.github/workflows/lint.yaml index f092027..2c436fe 100644 --- a/.github/workflows/lint.yaml +++ b/.github/workflows/lint.yaml @@ -2,7 +2,7 @@ # Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help on: push: - branches: [master, devel] + branches: [master] pull_request: branches: [master, devel] diff --git a/DESCRIPTION b/DESCRIPTION index 89b38ce..8afb51b 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,6 +1,6 @@ Package: smarterapi -Title: Fetch SMARTER data through REST API -Version: 0.2.0:9000 +Title: Fetch SMARTER Data Through REST API +Version: 0.2.0.9000 Authors@R: person("Paolo", "Cozzi", , "paolo.cozzi@ibba.cnr.it", role = c("aut", "cre"), @@ -34,7 +34,13 @@ Suggests: rnaturalearth, rnaturalearthdata Config/testthat/edition: 3 -Config/renv/profiles/dev/dependencies: lintr, rcmdcheck +Config/renv/profiles/dev/dependencies: + lintr, + rcmdcheck, + roxygen2, + styler, + testthat, + usethis Imports: jsonlite, httr, diff --git a/renv/profiles/dev/renv.lock b/renv/profiles/dev/renv.lock index 5c5ac30..82ef4c1 100644 --- a/renv/profiles/dev/renv.lock +++ b/renv/profiles/dev/renv.lock @@ -63,6 +63,60 @@ ], "Hash": "1920b2f11133b12350024297d8a4ff4a" }, + "R.cache": { + "Package": "R.cache", + "Version": "0.16.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R.methodsS3", + "R.oo", + "R.utils", + "digest", + "utils" + ], + "Hash": "fe539ca3f8efb7410c3ae2cf5fe6c0f8" + }, + "R.methodsS3": { + "Package": "R.methodsS3", + "Version": "1.8.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "utils" + ], + "Hash": "278c286fd6e9e75d0c2e8f731ea445c8" + }, + "R.oo": { + "Package": "R.oo", + "Version": "1.26.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R.methodsS3", + "methods", + "utils" + ], + "Hash": "4fed809e53ddb5407b3da3d0f572e591" + }, + "R.utils": { + "Package": "R.utils", + "Version": "2.12.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R.methodsS3", + "R.oo", + "methods", + "tools", + "utils" + ], + "Hash": "3dc2829b790254bfba21e60965787651" + }, "R6": { "Package": "R6", "Version": "2.5.1", @@ -136,6 +190,13 @@ ], "Hash": "543776ae6848fde2f48ff3816d0628bc" }, + "brew": { + "Package": "brew", + "Version": "1.0-10", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "8f4a384e19dccd8c65356dc096847b76" + }, "brio": { "Package": "brio", "Version": "1.1.5", @@ -232,6 +293,16 @@ ], "Hash": "b21916dd77a27642b447374a5d30ecf3" }, + "clipr": { + "Package": "clipr", + "Version": "0.8.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "utils" + ], + "Hash": "3f038e5ac7f41d4ac41ce658c85e3042" + }, "codetools": { "Package": "codetools", "Version": "0.2-20", @@ -256,6 +327,13 @@ ], "Hash": "f20c47fd52fae58b4e377c37bb8c335b" }, + "commonmark": { + "Package": "commonmark", + "Version": "1.9.1", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "5d8225445acb167abf7797de48b2ee3c" + }, "cpp11": { "Package": "cpp11", "Version": "0.4.7", @@ -278,6 +356,20 @@ ], "Hash": "859d96e65ef198fd43e82b9628d593ef" }, + "credentials": { + "Package": "credentials", + "Version": "2.0.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "askpass", + "curl", + "jsonlite", + "openssl", + "sys" + ], + "Hash": "c7844b32098dcbd1c59cbd8dddb4ecc6" + }, "crosstalk": { "Package": "crosstalk", "Version": "1.2.1", @@ -549,6 +641,21 @@ ], "Hash": "4d43570de08ab49ba86bb2ccb6fe117d" }, + "gert": { + "Package": "gert", + "Version": "2.0.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "askpass", + "credentials", + "openssl", + "rstudioapi", + "sys", + "zip" + ], + "Hash": "f70d3fe2d9e7654213a946963d1591eb" + }, "ggplot2": { "Package": "ggplot2", "Version": "3.5.1", @@ -595,6 +702,34 @@ ], "Hash": "0a4e5ed181eb823957df790ec11a28fc" }, + "gh": { + "Package": "gh", + "Version": "1.4.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "gitcreds", + "glue", + "httr2", + "ini", + "jsonlite", + "lifecycle", + "rlang" + ], + "Hash": "fbbbc48eba7a6626a08bb365e44b563b" + }, + "gitcreds": { + "Package": "gitcreds", + "Version": "0.1.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "ab08ac61f3e1be454ae21911eb8bc2fe" + }, "globals": { "Package": "globals", "Version": "0.16.3", @@ -703,6 +838,34 @@ ], "Hash": "ac107251d9d9fd72f0ca8049988f1d7f" }, + "httr2": { + "Package": "httr2", + "Version": "1.0.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "cli", + "curl", + "glue", + "lifecycle", + "magrittr", + "openssl", + "rappdirs", + "rlang", + "vctrs", + "withr" + ], + "Hash": "03d741c92fda96d98c3a3f22494e3b4a" + }, + "ini": { + "Package": "ini", + "Version": "0.3.1", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "6154ec2223172bce8162d4153cda21f7" + }, "isoband": { "Package": "isoband", "Version": "0.2.7", @@ -1385,6 +1548,32 @@ ], "Hash": "fcd529f183c4163a91430d7b7bbaece5" }, + "roxygen2": { + "Package": "roxygen2", + "Version": "7.3.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "brew", + "cli", + "commonmark", + "cpp11", + "desc", + "knitr", + "methods", + "pkgload", + "purrr", + "rlang", + "stringi", + "stringr", + "utils", + "withr", + "xml2" + ], + "Hash": "c25fe7b2d8cba73d1b63c947bf7afdb9" + }, "rprojroot": { "Package": "rprojroot", "Version": "2.0.4", @@ -1395,6 +1584,13 @@ ], "Hash": "4c8415e0ec1e29f3f4f6fc108bef0144" }, + "rstudioapi": { + "Package": "rstudioapi", + "Version": "0.16.0", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "96710351d642b70e8f02ddeb237c46a7" + }, "s2": { "Package": "s2", "Version": "1.1.6", @@ -1538,6 +1734,25 @@ ], "Hash": "960e2ae9e09656611e0b8214ad543207" }, + "styler": { + "Package": "styler", + "Version": "1.10.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R.cache", + "cli", + "magrittr", + "purrr", + "rlang", + "rprojroot", + "tools", + "vctrs", + "withr" + ], + "Hash": "93a2b1beac2437bdcc4724f8bf867e2c" + }, "sys": { "Package": "sys", "Version": "3.4.2", @@ -1724,6 +1939,37 @@ ], "Hash": "e86a704261a105f4703f653e05defa3e" }, + "usethis": { + "Package": "usethis", + "Version": "2.2.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "clipr", + "crayon", + "curl", + "desc", + "fs", + "gert", + "gh", + "glue", + "jsonlite", + "lifecycle", + "purrr", + "rappdirs", + "rlang", + "rprojroot", + "rstudioapi", + "stats", + "utils", + "whisker", + "withr", + "yaml" + ], + "Hash": "d524fd42c517035027f866064417d7e6" + }, "utf8": { "Package": "utf8", "Version": "1.2.4", @@ -1857,6 +2103,13 @@ "Source": "Repository", "Repository": "CRAN", "Hash": "29240487a071f535f5e5d5a323b7afbd" + }, + "zip": { + "Package": "zip", + "Version": "2.3.1", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "fcc4bd8e6da2d2011eb64a5e5cc685ab" } } } diff --git a/smarterapi.Rproj b/smarterapi.Rproj index 69fafd4..6074043 100644 --- a/smarterapi.Rproj +++ b/smarterapi.Rproj @@ -19,4 +19,5 @@ LineEndingConversion: Posix BuildType: Package PackageUseDevtools: Yes PackageInstallArgs: --no-multiarch --with-keep.source +PackageCheckArgs: --no-manual --as-cran PackageRoxygenize: rd,collate,namespace From 4ca987706d6a66f5c35252008c6698818c21667a Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Tue, 25 Jun 2024 12:07:08 +0200 Subject: [PATCH 20/35] :construction_worker: pristine renv install actions There are no significant differences between renv and the standard actions which install renv dependency --- .github/workflows/R-CMD-check.yaml | 5 ++--- .github/workflows/lint.yaml | 6 ++---- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index 66192f9..dd1daef 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -50,11 +50,10 @@ jobs: http-user-agent: ${{ matrix.config.http-user-agent }} use-public-rspm: true - - uses: r-lib/actions/setup-r-dependencies@v2 + - uses: r-lib/actions/setup-renv@v2 with: cache-version: 1 - extra-packages: | - any::rcmdcheck + profile: '"dev"' - uses: r-lib/actions/check-r-package@v2 with: diff --git a/.github/workflows/lint.yaml b/.github/workflows/lint.yaml index 49fec53..98e436b 100644 --- a/.github/workflows/lint.yaml +++ b/.github/workflows/lint.yaml @@ -26,12 +26,10 @@ jobs: with: use-public-rspm: true - - uses: r-lib/actions/setup-r-dependencies@v2 + - uses: r-lib/actions/setup-renv@v2 with: cache-version: 1 - dependencies: '"hard"' - extra-packages: | - any::lintr + profile: '"dev"' - name: Lint run: lintr::lint_package() From 150148ef596b02273584327e31c703321799fcf3 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Tue, 25 Jun 2024 12:08:19 +0200 Subject: [PATCH 21/35] :construction_worker: test simple install in multiple architectures attempt to fully test in ubuntu environment and to simply install in different architectures --- .github/workflows/R-CMD-check.yaml | 22 +++-------- .github/workflows/install.yaml | 63 ++++++++++++++++++++++++++++++ 2 files changed, 68 insertions(+), 17 deletions(-) create mode 100644 .github/workflows/install.yaml diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index dd1daef..de96d2e 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -16,17 +16,7 @@ env: jobs: R-CMD-check: - runs-on: ${{ matrix.config.os }} - - name: ${{ matrix.config.os }} (${{ matrix.config.r }}) - - strategy: - fail-fast: false - matrix: - config: - - {os: macos-latest, r: 'release'} - - {os: windows-latest, r: 'release'} - - {os: ubuntu-latest, r: 'release'} + runs-on: ubuntu-latest env: GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} @@ -40,14 +30,12 @@ jobs: run: sudo apt-get update -y && sudo apt-get install -y libcurl4-openssl-dev libgdal-dev libudunits2-dev libharfbuzz-dev libfribidi-dev - - name: Install dependencies on MacOS - if: runner.os == 'macOS' - run: brew install gdal + - uses: r-lib/actions/setup-pandoc@v2 - uses: r-lib/actions/setup-r@v2 with: - r-version: ${{ matrix.config.r }} - http-user-agent: ${{ matrix.config.http-user-agent }} + r-version: 'release' + http-user-agent: 'default' use-public-rspm: true - uses: r-lib/actions/setup-renv@v2 @@ -68,5 +56,5 @@ jobs: if: failure() uses: actions/upload-artifact@main with: - name: ${{ runner.os }}-r${{ matrix.config.r }}-results + name: Linux-rrelease-results path: check diff --git a/.github/workflows/install.yaml b/.github/workflows/install.yaml new file mode 100644 index 0000000..190a192 --- /dev/null +++ b/.github/workflows/install.yaml @@ -0,0 +1,63 @@ +# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples +# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help +on: + push: + branches: [master] + pull_request: + branches: [master, devel] + +name: install + +env: + GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + R_KEEP_PKG_SOURCE: yes + SMARTER_API_USERNAME: ${{ secrets.SMARTER_API_USERNAME }} + SMARTER_API_PASSWORD: ${{ secrets.SMARTER_API_PASSWORD }} + +jobs: + install: + runs-on: ${{ matrix.config.os }} + + name: ${{ matrix.config.os }} (${{ matrix.config.r }}) + + strategy: + fail-fast: false + matrix: + config: + - {os: macos-latest, r: 'release'} + - {os: windows-latest, r: 'release'} + - {os: ubuntu-latest, r: 'devel', http-user-agent: 'release'} + - {os: ubuntu-latest, r: 'release'} + - {os: ubuntu-latest, r: 'oldrel-1'} + + env: + GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + R_KEEP_PKG_SOURCE: yes + + steps: + + - name: Install dependencies on Linux + if: runner.os == 'Linux' + run: sudo apt-get update -y && sudo apt-get install -y libcurl4-openssl-dev + libgdal-dev libudunits2-dev libharfbuzz-dev libfribidi-dev + + - name: Install dependencies on MacOS + if: runner.os == 'macOS' + run: brew install gdal + + - uses: r-lib/actions/setup-r@v2 + with: + r-version: ${{ matrix.config.r }} + http-user-agent: ${{ matrix.config.http-user-agent }} + use-public-rspm: true + + - uses: r-lib/actions/setup-r-dependencies@v2 + with: + cache-version: 1 + dependencies: '"hard"' + extra-packages: | + any::devtools + + - name: Install package with devtools + run: devtools::install_github("cnr-ibba/r-smarter-api") + shell: Rscript {0} From 9ea1b6145c62682ed24aa787a85434cc54dbc419 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Tue, 25 Jun 2024 12:17:52 +0200 Subject: [PATCH 22/35] :green_heart: install devtools as R CMD --- .github/workflows/install.yaml | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/.github/workflows/install.yaml b/.github/workflows/install.yaml index 190a192..a2c9aae 100644 --- a/.github/workflows/install.yaml +++ b/.github/workflows/install.yaml @@ -51,12 +51,9 @@ jobs: http-user-agent: ${{ matrix.config.http-user-agent }} use-public-rspm: true - - uses: r-lib/actions/setup-r-dependencies@v2 - with: - cache-version: 1 - dependencies: '"hard"' - extra-packages: | - any::devtools + - name: Install devtools dependency + run: install.packages("devtools") + shell: Rscript {0} - name: Install package with devtools run: devtools::install_github("cnr-ibba/r-smarter-api") From e5051a8d5afec206f951b9242cf4d4c6b1a1bc46 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Tue, 25 Jun 2024 12:51:12 +0200 Subject: [PATCH 23/35] :passport_control: remove token from functions --- NAMESPACE | 1 - R/auth.R | 72 ------------------------------- R/breeds.R | 9 +--- R/countries.R | 8 +--- R/datasets.R | 8 +--- R/geojson.R | 7 +-- R/info.R | 10 +---- R/samples.R | 8 +--- R/supported_chips.R | 8 +--- R/utils.R | 22 ++-------- R/variants.R | 8 +--- man/get_smarter_breeds.Rd | 4 +- man/get_smarter_countries.Rd | 4 +- man/get_smarter_datasets.Rd | 4 +- man/get_smarter_geojson.Rd | 4 +- man/get_smarter_info.Rd | 5 +-- man/get_smarter_samples.Rd | 4 +- man/get_smarter_supportedchips.Rd | 4 +- man/get_smarter_token.Rd | 54 ----------------------- man/get_smarter_variants.Rd | 4 +- 20 files changed, 27 insertions(+), 221 deletions(-) delete mode 100644 R/auth.R delete mode 100644 man/get_smarter_token.Rd diff --git a/NAMESPACE b/NAMESPACE index 9a942c7..dfb8c79 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -7,5 +7,4 @@ export(get_smarter_geojson) export(get_smarter_info) export(get_smarter_samples) export(get_smarter_supportedchips) -export(get_smarter_token) export(get_smarter_variants) diff --git a/R/auth.R b/R/auth.R deleted file mode 100644 index 07f5554..0000000 --- a/R/auth.R +++ /dev/null @@ -1,72 +0,0 @@ - -# nolint start -#' Get a SMARTER authentication token -#' -#' Authenticate through SMARTER API and returns a valid token. Token is also -#' cached in package in order to be used by other functions. Calling this -#' function another time will return the cached token if is still valid -#' -#' @param username the SMARTER username (or 'SMARTER_API_USERNAME' environment -#' variable) -#' @param password the SMARTER password (or 'SMARTER_API_PASSWORD' environment -#' variable) -#' -#' @return Returns a valid token as a string -#' @export -#' -#' @section Configure environment variables: -#' In order to not provide your SMARTER credentials within your code, you could -#' set those values in your environment. You can call -#' \code{usethis::edit_r_environ()} in order to track credentials in your -#' \emph{.Renviron} file using the \code{Key=value} syntax, for example: -#' \preformatted{ -#' SMARTER_API_USERNAME= -#' SMARTER_API_PASSWORD= -#' } -#' See \href{"https://support.rstudio.com/hc/en-us/articles/360047157094-Managing-R-with-Rprofile-Renviron-Rprofile-site-Renviron-site-rsession-conf-and-repos-conf"}{ -#' Managing R with .Rprofile, .Renviron, Rprofile.site, Renviron.site, -#' rsession.conf, and repos.conf} -#' for more information -#' @section Warning: -#' SMARTER credentials \strong{MUST NOT be tracked} in your code -#' @examples -#' token <- get_smarter_token() -#' \dontrun{ -#' -#' token <- get_smarter_token(username, password) -#' } -# nolint end -get_smarter_token <- function(username = Sys.getenv("SMARTER_API_USERNAME"), - password = Sys.getenv("SMARTER_API_PASSWORD")) { - if (!is_token_expired()) { - logger::log_debug("Get a token from local environment") - return(smarterapi_globals$token) - } - - auth_url <- httr::modify_url( - smarterapi_globals$base_url, - path = sprintf("%s/auth/login", smarterapi_globals$base_endpoint) - ) - - logger::log_info(sprintf("Get a new token from %s", auth_url)) - - resp <- httr::POST( - auth_url, - body = list(username = username, password = password), - encode = "json", - smarterapi_globals$user_agent - ) - - # this will read a JSON by default - data <- httr::content(resp) - - # test for error in responses - check_smarter_errors(resp, data) - - # track data in my environment - smarterapi_globals$token <- data$token - smarterapi_globals$expires <- lubridate::ymd_hms(data$expires) - - # returning only the token as a string - return(data$token) -} diff --git a/R/breeds.R b/R/breeds.R index 8d81f2f..3e4de2f 100644 --- a/R/breeds.R +++ b/R/breeds.R @@ -6,7 +6,6 @@ #' this function (see \code{\link{get_smarter_token}} for more information) #' #' @param query a \code{list} of query arguments -#' @param token a string with a valid token #' #' @return Returns a dataframe with selected breeds #' @export @@ -31,11 +30,7 @@ #' #' sheep_breeds <- get_smarter_breeds(query = list(species = "Sheep")) #' } -get_smarter_breeds <- function(query = list(), token = NULL) { - if (is.null(token)) { - token <- smarterapi::get_smarter_token() - } - +get_smarter_breeds <- function(query = list()) { logger::log_info("Get data from breeds endpoint") # setting the URL endpoint @@ -45,7 +40,7 @@ get_smarter_breeds <- function(query = list(), token = NULL) { ) # reading our data - data <- get_smarter_data(url, token, query) + data <- get_smarter_data(url, query) logger::log_info("Done!") diff --git a/R/countries.R b/R/countries.R index f84766a..e94faae 100644 --- a/R/countries.R +++ b/R/countries.R @@ -30,11 +30,7 @@ #' sheep_countries <- get_smarter_countries(query = list(species = "Sheep")) #' } #' -get_smarter_countries <- function(query = list(), token = NULL) { - if (is.null(token)) { - token <- smarterapi::get_smarter_token() - } - +get_smarter_countries <- function(query = list()) { logger::log_info("Get data from countries endpoint") # setting the URL endpoint @@ -44,7 +40,7 @@ get_smarter_countries <- function(query = list(), token = NULL) { ) # reading our data - data <- get_smarter_data(url, token, query) + data <- get_smarter_data(url, query) logger::log_info("Done!") diff --git a/R/datasets.R b/R/datasets.R index 3d6c67c..66113d0 100644 --- a/R/datasets.R +++ b/R/datasets.R @@ -32,11 +32,7 @@ #' #' all_datasets <- get_smarter_datasets() #' } -get_smarter_datasets <- function(query = list(), token = NULL) { - if (is.null(token)) { - token <- smarterapi::get_smarter_token() - } - +get_smarter_datasets <- function(query = list()) { logger::log_info("Get data from datasets endpoint") url <- httr::modify_url( @@ -44,7 +40,7 @@ get_smarter_datasets <- function(query = list(), token = NULL) { path = sprintf("%s/datasets", smarterapi_globals$base_endpoint) ) - data <- get_smarter_data(url, token, query) + data <- get_smarter_data(url, query) logger::log_info("Done!") diff --git a/R/geojson.R b/R/geojson.R index b10d9a1..b686e65 100644 --- a/R/geojson.R +++ b/R/geojson.R @@ -40,11 +40,7 @@ #' ) #' } # nolint end -get_smarter_geojson <- function(species, query = list(), token = NULL) { - if (is.null(token)) { - token <- smarterapi::get_smarter_token() - } - +get_smarter_geojson <- function(species, query = list()) { logger::log_info("Get data from geojson endpoint") # mind that species is lowercase in endpoint url @@ -61,7 +57,6 @@ get_smarter_geojson <- function(species, query = list(), token = NULL) { resp <- httr::GET( url, query = query, - httr::add_headers(Authorization = paste("Bearer", token)), smarterapi_globals$user_agent ) diff --git a/R/info.R b/R/info.R index 198e04c..655e9a5 100644 --- a/R/info.R +++ b/R/info.R @@ -6,8 +6,6 @@ #' Cached token is used or a new token is generated if not provided when calling #' this function (see \code{\link{get_smarter_token}} for more information) #' -#' @param token a string with a valid token -#' #' @return a list object with SMARTER database information #' @export #' @@ -35,11 +33,7 @@ #' smarter_status <- get_smarter_info() #' smarter_version <- smarter_status$version # nolint end -get_smarter_info <- function(token = NULL) { - if (is.null(token)) { - token <- smarterapi::get_smarter_token() - } - +get_smarter_info <- function() { logger::log_info("Get data from info endpoint") url <- httr::modify_url( @@ -47,7 +41,7 @@ get_smarter_info <- function(token = NULL) { path = sprintf("%s/info", smarterapi_globals$base_endpoint) ) - data <- get_smarter_data(url, token) + data <- get_smarter_data(url) logger::log_info("Done!") diff --git a/R/samples.R b/R/samples.R index 3cd8f5b..e713906 100644 --- a/R/samples.R +++ b/R/samples.R @@ -42,11 +42,7 @@ #' #' all_sheep_samples <- get_smarter_samples("Sheep") #' } -get_smarter_samples <- function(species, query = list(), token = NULL) { - if (is.null(token)) { - token <- smarterapi::get_smarter_token() - } - +get_smarter_samples <- function(species, query = list()) { logger::log_info("Get data from samples endpoint") # mind that species is lowercase in endpoint url @@ -57,7 +53,7 @@ get_smarter_samples <- function(species, query = list(), token = NULL) { path = sprintf("%s/samples/%s", smarterapi_globals$base_endpoint, species) ) - data <- get_smarter_data(url, token, query) + data <- get_smarter_data(url, query) logger::log_info("Done!") diff --git a/R/supported_chips.R b/R/supported_chips.R index a82a19a..d4466a8 100644 --- a/R/supported_chips.R +++ b/R/supported_chips.R @@ -22,11 +22,7 @@ #' query = list(chip_name = "AffymetrixAxiomOviCan") #' ) #' } -get_smarter_supportedchips <- function(query = list(), token = NULL) { - if (is.null(token)) { - token <- smarterapi::get_smarter_token() - } - +get_smarter_supportedchips <- function(query = list()) { logger::log_info("Get data from supported chip endpoint") # setting the URL endpoint @@ -36,7 +32,7 @@ get_smarter_supportedchips <- function(query = list(), token = NULL) { ) # reading our data - data <- get_smarter_data(url, token, query) + data <- get_smarter_data(url, query) logger::log_info("Done!") diff --git a/R/utils.R b/R/utils.R index e283949..0536285 100644 --- a/R/utils.R +++ b/R/utils.R @@ -5,25 +5,12 @@ version <- utils::packageVersion("smarterapi") smarterapi_globals <- new.env() smarterapi_globals$base_url <- "https://webserver.ibba.cnr.it" smarterapi_globals$base_endpoint <- "/smarter-api" -smarterapi_globals$token <- NULL -smarterapi_globals$expires <- NULL smarterapi_globals$size <- 25 smarterapi_globals$user_agent <- httr::user_agent( paste0("r-smarterapi v", version) ) -# returns true if token doesn't exist or is expired (or expires within 1 day) -is_token_expired <- function() { - if (is.null(smarterapi_globals$token) | is.null(smarterapi_globals$token)) { - return(TRUE) - } - - # consider a token expired if it least less than one day - return(smarterapi_globals$expires < as.Date(lubridate::now() + 1)) -} - - check_smarter_errors <- function(resp, parsed) { # deal with API errors: not "200 Ok" status if (httr::http_error(resp)) { @@ -39,14 +26,13 @@ check_smarter_errors <- function(resp, parsed) { } -read_url <- function(url, token, query = list()) { +read_url <- function(url, query = list()) { logger::log_debug(sprintf("Get data from %s", url)) # in this request, we add the token to the request header section resp <- httr::GET( url, query = query, - httr::add_headers(Authorization = paste("Bearer", token)), smarterapi_globals$user_agent ) @@ -68,7 +54,7 @@ read_url <- function(url, token, query = list()) { } -get_smarter_data <- function(url, token, query = list()) { +get_smarter_data <- function(url, query = list()) { # test for page size. Add a default size if necessary if (!"size" %in% names(query) | is.null(query[["size"]])) { # add global result size to query @@ -76,7 +62,7 @@ get_smarter_data <- function(url, token, query = list()) { } # do the request and parse data with our function - parsed <- read_url(url, token, query) + parsed <- read_url(url, query) # track results in df results <- parsed$"items" @@ -89,7 +75,7 @@ get_smarter_data <- function(url, token, query = list()) { logger::log_debug(sprintf("Next page %s", query$page)) # get next page - parsed <- read_url(url, token, query) + parsed <- read_url(url, query) # append new results to df. Deal with different columns results <- dplyr::bind_rows(results, parsed$"items") diff --git a/R/variants.R b/R/variants.R index bb21529..9a4e012 100644 --- a/R/variants.R +++ b/R/variants.R @@ -36,12 +36,8 @@ #' ) #' } # nolint start -get_smarter_variants <- function(species, assembly, query = list(), token = NULL) { +get_smarter_variants <- function(species, assembly, query = list()) { # nolint end - if (is.null(token)) { - token <- smarterapi::get_smarter_token() - } - logger::log_info("Get data from variants endpoint") # mind that species is lowercase in endpoint url @@ -58,7 +54,7 @@ get_smarter_variants <- function(species, assembly, query = list(), token = NULL ) ) - data <- get_smarter_data(url, token, query) + data <- get_smarter_data(url, query) logger::log_info("Done!") diff --git a/man/get_smarter_breeds.Rd b/man/get_smarter_breeds.Rd index f188499..9a40aa8 100644 --- a/man/get_smarter_breeds.Rd +++ b/man/get_smarter_breeds.Rd @@ -4,12 +4,10 @@ \alias{get_smarter_breeds} \title{Get SMARTER Breeds} \usage{ -get_smarter_breeds(query = list(), token = NULL) +get_smarter_breeds(query = list()) } \arguments{ \item{query}{a \code{list} of query arguments} - -\item{token}{a string with a valid token} } \value{ Returns a dataframe with selected breeds diff --git a/man/get_smarter_countries.Rd b/man/get_smarter_countries.Rd index 291ad9c..e54da94 100644 --- a/man/get_smarter_countries.Rd +++ b/man/get_smarter_countries.Rd @@ -4,12 +4,10 @@ \alias{get_smarter_countries} \title{Get SMARTER Countries} \usage{ -get_smarter_countries(query = list(), token = NULL) +get_smarter_countries(query = list()) } \arguments{ \item{query}{a \code{list} of query arguments} - -\item{token}{a string with a valid token} } \value{ Returns a dataframe with selected countries diff --git a/man/get_smarter_datasets.Rd b/man/get_smarter_datasets.Rd index 71f6904..023f152 100644 --- a/man/get_smarter_datasets.Rd +++ b/man/get_smarter_datasets.Rd @@ -4,12 +4,10 @@ \alias{get_smarter_datasets} \title{Get SMARTER Datasets} \usage{ -get_smarter_datasets(query = list(), token = NULL) +get_smarter_datasets(query = list()) } \arguments{ \item{query}{a \code{list} of query arguments} - -\item{token}{a string with a valid token} } \value{ Returns a dataframe with selected datasets diff --git a/man/get_smarter_geojson.Rd b/man/get_smarter_geojson.Rd index beb7fc6..f2c8119 100644 --- a/man/get_smarter_geojson.Rd +++ b/man/get_smarter_geojson.Rd @@ -4,14 +4,12 @@ \alias{get_smarter_geojson} \title{Get SMARTER GeoJSON Samples} \usage{ -get_smarter_geojson(species, query = list(), token = NULL) +get_smarter_geojson(species, query = list()) } \arguments{ \item{species}{a smarter species ("Goat", "Sheep")} \item{query}{a \code{list} of query arguments} - -\item{token}{a string with a valid token} } \value{ a sf data object diff --git a/man/get_smarter_info.Rd b/man/get_smarter_info.Rd index 5f2a741..b420d08 100644 --- a/man/get_smarter_info.Rd +++ b/man/get_smarter_info.Rd @@ -4,10 +4,7 @@ \alias{get_smarter_info} \title{Get SMARTER Info} \usage{ -get_smarter_info(token = NULL) -} -\arguments{ -\item{token}{a string with a valid token} +get_smarter_info() } \value{ a list object with SMARTER database information diff --git a/man/get_smarter_samples.Rd b/man/get_smarter_samples.Rd index fc19822..3b4c70b 100644 --- a/man/get_smarter_samples.Rd +++ b/man/get_smarter_samples.Rd @@ -4,14 +4,12 @@ \alias{get_smarter_samples} \title{Get SMARTER Samples} \usage{ -get_smarter_samples(species, query = list(), token = NULL) +get_smarter_samples(species, query = list()) } \arguments{ \item{species}{a smarter species ("Goat", "Sheep")} \item{query}{a \code{list} of query arguments} - -\item{token}{a string with a valid token} } \value{ Returns a dataframe with selected samples diff --git a/man/get_smarter_supportedchips.Rd b/man/get_smarter_supportedchips.Rd index 891dbd6..483cf13 100644 --- a/man/get_smarter_supportedchips.Rd +++ b/man/get_smarter_supportedchips.Rd @@ -4,12 +4,10 @@ \alias{get_smarter_supportedchips} \title{Get SMARTER supported chips} \usage{ -get_smarter_supportedchips(query = list(), token = NULL) +get_smarter_supportedchips(query = list()) } \arguments{ \item{query}{a \code{list} of query arguments} - -\item{token}{a string with a valid token} } \value{ Returns a dataframe with selected chips diff --git a/man/get_smarter_token.Rd b/man/get_smarter_token.Rd deleted file mode 100644 index 9b0cc3e..0000000 --- a/man/get_smarter_token.Rd +++ /dev/null @@ -1,54 +0,0 @@ -% Generated by roxygen2: do not edit by hand -% Please edit documentation in R/auth.R -\name{get_smarter_token} -\alias{get_smarter_token} -\title{Get a SMARTER authentication token} -\usage{ -get_smarter_token( - username = Sys.getenv("SMARTER_API_USERNAME"), - password = Sys.getenv("SMARTER_API_PASSWORD") -) -} -\arguments{ -\item{username}{the SMARTER username (or 'SMARTER_API_USERNAME' environment -variable)} - -\item{password}{the SMARTER password (or 'SMARTER_API_PASSWORD' environment -variable)} -} -\value{ -Returns a valid token as a string -} -\description{ -Authenticate through SMARTER API and returns a valid token. Token is also -cached in package in order to be used by other functions. Calling this -function another time will return the cached token if is still valid -} -\section{Configure environment variables}{ - -In order to not provide your SMARTER credentials within your code, you could -set those values in your environment. You can call -\code{usethis::edit_r_environ()} in order to track credentials in your -\emph{.Renviron} file using the \code{Key=value} syntax, for example: -\preformatted{ -SMARTER_API_USERNAME= -SMARTER_API_PASSWORD= -} -See \href{"https://support.rstudio.com/hc/en-us/articles/360047157094-Managing-R-with-Rprofile-Renviron-Rprofile-site-Renviron-site-rsession-conf-and-repos-conf"}{ -Managing R with .Rprofile, .Renviron, Rprofile.site, Renviron.site, -rsession.conf, and repos.conf} -for more information -} - -\section{Warning}{ - -SMARTER credentials \strong{MUST NOT be tracked} in your code -} - -\examples{ -token <- get_smarter_token() -\dontrun{ - -token <- get_smarter_token(username, password) -} -} diff --git a/man/get_smarter_variants.Rd b/man/get_smarter_variants.Rd index 091152c..29bf723 100644 --- a/man/get_smarter_variants.Rd +++ b/man/get_smarter_variants.Rd @@ -4,7 +4,7 @@ \alias{get_smarter_variants} \title{Get SMARTER variants} \usage{ -get_smarter_variants(species, assembly, query = list(), token = NULL) +get_smarter_variants(species, assembly, query = list()) } \arguments{ \item{species}{a smarter species ("Goat", "Sheep")} @@ -12,8 +12,6 @@ get_smarter_variants(species, assembly, query = list(), token = NULL) \item{assembly}{the smarter working assembly for such species} \item{query}{a \code{list} of query arguments} - -\item{token}{a string with a valid token} } \value{ Returns a dataframe with selected variants From 1bc58028121f42f3a42a8bc1b1d4a5a61bf5183f Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Tue, 25 Jun 2024 13:01:41 +0200 Subject: [PATCH 24/35] :heavy_minus_sign: remove lubridate dependency --- DESCRIPTION | 6 ++---- renv/profiles/dev/renv.lock | 24 ------------------------ 2 files changed, 2 insertions(+), 28 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index 8afb51b..642cb17 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -5,9 +5,8 @@ Authors@R: person("Paolo", "Cozzi", , "paolo.cozzi@ibba.cnr.it", role = c("aut", "cre"), comment = c(ORCID = "0000-0003-0388-6874")) -Description: smarterapi is an interface which interacts with SMARTER REST API - by querying data using token authentication and providing results into - dataframes. +Description: This package is an interface which interacts with SMARTER REST API + by querying data and providing results into dataframes. License: GPL (>= 3) Encoding: UTF-8 Roxygen: list(markdown = TRUE) @@ -45,7 +44,6 @@ Imports: jsonlite, httr, urltools, - lubridate, logger, dplyr, tidyr, diff --git a/renv/profiles/dev/renv.lock b/renv/profiles/dev/renv.lock index 82ef4c1..3a9e17e 100644 --- a/renv/profiles/dev/renv.lock +++ b/renv/profiles/dev/renv.lock @@ -1049,19 +1049,6 @@ ], "Hash": "c145edf05cc128e6ffcfa5d872c46329" }, - "lubridate": { - "Package": "lubridate", - "Version": "1.9.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "generics", - "methods", - "timechange" - ], - "Hash": "680ad542fbcf801442c83a6ac5a2126c" - }, "magrittr": { "Package": "magrittr", "Version": "2.0.3", @@ -1884,17 +1871,6 @@ ], "Hash": "829f27b9c4919c16b593794a6344d6c0" }, - "timechange": { - "Package": "timechange", - "Version": "0.3.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "cpp11" - ], - "Hash": "c5f3c201b931cd6474d17d8700ccb1c8" - }, "tinytex": { "Package": "tinytex", "Version": "0.51", From f76cb0d3a8a22f392dcdddb5405d25a240eeb007 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Tue, 25 Jun 2024 13:07:57 +0200 Subject: [PATCH 25/35] :fire: remove get_smarter_token reference from online helps --- R/breeds.R | 2 -- R/countries.R | 2 -- R/datasets.R | 2 -- R/geojson.R | 2 -- R/info.R | 2 -- R/samples.R | 2 -- R/supported_chips.R | 2 -- R/utils.R | 2 +- R/variants.R | 2 -- man/get_smarter_breeds.Rd | 2 -- man/get_smarter_countries.Rd | 2 -- man/get_smarter_datasets.Rd | 2 -- man/get_smarter_geojson.Rd | 2 -- man/get_smarter_info.Rd | 2 -- man/get_smarter_samples.Rd | 2 -- man/get_smarter_supportedchips.Rd | 2 -- man/get_smarter_variants.Rd | 2 -- 17 files changed, 1 insertion(+), 33 deletions(-) diff --git a/R/breeds.R b/R/breeds.R index 3e4de2f..e11181c 100644 --- a/R/breeds.R +++ b/R/breeds.R @@ -2,8 +2,6 @@ #' Get SMARTER Breeds #' #' Fetch SMARTER REST API breeds endpoint and returns results in a dataframe. -#' Cached token is used or a new token is generated if not provided when calling -#' this function (see \code{\link{get_smarter_token}} for more information) #' #' @param query a \code{list} of query arguments #' diff --git a/R/countries.R b/R/countries.R index e94faae..59f1889 100644 --- a/R/countries.R +++ b/R/countries.R @@ -2,8 +2,6 @@ #' Get SMARTER Countries #' #' Fetch SMARTER REST API countries endpoint and returns results in a dataframe. -#' Cached token is used or a new token is generated if not provided when calling -#' this function (see \code{\link{get_smarter_token}} for more information) #' #' @inheritParams get_smarter_breeds #' diff --git a/R/datasets.R b/R/datasets.R index 66113d0..99a2acb 100644 --- a/R/datasets.R +++ b/R/datasets.R @@ -2,8 +2,6 @@ #' Get SMARTER Datasets #' #' Fetch SMARTER REST API datasets endpoint and returns results in a dataframe. -#' Cached token is used or a new token is generated if not provided when calling -#' this function (see \code{\link{get_smarter_token}} for more information) #' #' @inheritParams get_smarter_breeds #' diff --git a/R/geojson.R b/R/geojson.R index b686e65..6c80d58 100644 --- a/R/geojson.R +++ b/R/geojson.R @@ -4,8 +4,6 @@ #' #' Fetch SMARTER REST API samples with GPS coordinates and return them into as #' simple features. -#' Cached token is used or a new token is generated if not provided when calling -#' this function (see \code{\link{get_smarter_token}} for more information) #' #' @inheritParams get_smarter_samples #' diff --git a/R/info.R b/R/info.R index 655e9a5..97ab04f 100644 --- a/R/info.R +++ b/R/info.R @@ -3,8 +3,6 @@ #' Get SMARTER Info #' #' Collect information about smarter database status and returns values in a list -#' Cached token is used or a new token is generated if not provided when calling -#' this function (see \code{\link{get_smarter_token}} for more information) #' #' @return a list object with SMARTER database information #' @export diff --git a/R/samples.R b/R/samples.R index e713906..88ae8b7 100644 --- a/R/samples.R +++ b/R/samples.R @@ -2,8 +2,6 @@ #' Get SMARTER Samples #' #' Fetch SMARTER REST API samples endpoint and returns results in a dataframe. -#' Cached token is used or a new token is generated if not provided when calling -#' this function (see \code{\link{get_smarter_token}} for more information) #' #' @param species a smarter species ("Goat", "Sheep") #' @inheritParams get_smarter_breeds diff --git a/R/supported_chips.R b/R/supported_chips.R index d4466a8..dd93428 100644 --- a/R/supported_chips.R +++ b/R/supported_chips.R @@ -2,8 +2,6 @@ #' Get SMARTER supported chips #' #' Collect information on chip data currently managed in SMARTER database. -#' Cached token is used or a new token is generated if not provided when calling -#' this function (see \code{\link{get_smarter_token}} for more information) #' #' @inheritParams get_smarter_breeds #' diff --git a/R/utils.R b/R/utils.R index 0536285..87dd7dc 100644 --- a/R/utils.R +++ b/R/utils.R @@ -3,7 +3,7 @@ version <- utils::packageVersion("smarterapi") # define a global environment for the package smarterapi_globals <- new.env() -smarterapi_globals$base_url <- "https://webserver.ibba.cnr.it" +smarterapi_globals$base_url <- "http://localhost:27080" smarterapi_globals$base_endpoint <- "/smarter-api" smarterapi_globals$size <- 25 smarterapi_globals$user_agent <- httr::user_agent( diff --git a/R/variants.R b/R/variants.R index 9a4e012..7070b0d 100644 --- a/R/variants.R +++ b/R/variants.R @@ -3,8 +3,6 @@ #' Retrieve information on SMARTER SNPs. Only informations about the supported #' assemblies are returned (see \code{\link{get_smarter_info}} for more #' information). -#' Cached token is used or a new token is generated if not provided when calling -#' this function (see \code{\link{get_smarter_token}} for more information) #' #' @inheritParams get_smarter_samples #' @param assembly the smarter working assembly for such species diff --git a/man/get_smarter_breeds.Rd b/man/get_smarter_breeds.Rd index 9a40aa8..62965fb 100644 --- a/man/get_smarter_breeds.Rd +++ b/man/get_smarter_breeds.Rd @@ -14,8 +14,6 @@ Returns a dataframe with selected breeds } \description{ Fetch SMARTER REST API breeds endpoint and returns results in a dataframe. -Cached token is used or a new token is generated if not provided when calling -this function (see \code{\link{get_smarter_token}} for more information) } \section{Passing additional parameters}{ diff --git a/man/get_smarter_countries.Rd b/man/get_smarter_countries.Rd index e54da94..218b84e 100644 --- a/man/get_smarter_countries.Rd +++ b/man/get_smarter_countries.Rd @@ -14,8 +14,6 @@ Returns a dataframe with selected countries } \description{ Fetch SMARTER REST API countries endpoint and returns results in a dataframe. -Cached token is used or a new token is generated if not provided when calling -this function (see \code{\link{get_smarter_token}} for more information) } \section{Passing additional parameters}{ diff --git a/man/get_smarter_datasets.Rd b/man/get_smarter_datasets.Rd index 023f152..a4e4687 100644 --- a/man/get_smarter_datasets.Rd +++ b/man/get_smarter_datasets.Rd @@ -14,8 +14,6 @@ Returns a dataframe with selected datasets } \description{ Fetch SMARTER REST API datasets endpoint and returns results in a dataframe. -Cached token is used or a new token is generated if not provided when calling -this function (see \code{\link{get_smarter_token}} for more information) } \section{Passing additional parameters}{ diff --git a/man/get_smarter_geojson.Rd b/man/get_smarter_geojson.Rd index f2c8119..1980719 100644 --- a/man/get_smarter_geojson.Rd +++ b/man/get_smarter_geojson.Rd @@ -17,8 +17,6 @@ a sf data object \description{ Fetch SMARTER REST API samples with GPS coordinates and return them into as simple features. -Cached token is used or a new token is generated if not provided when calling -this function (see \code{\link{get_smarter_token}} for more information) } \examples{ \dontrun{ diff --git a/man/get_smarter_info.Rd b/man/get_smarter_info.Rd index b420d08..7efabe6 100644 --- a/man/get_smarter_info.Rd +++ b/man/get_smarter_info.Rd @@ -11,8 +11,6 @@ a list object with SMARTER database information } \description{ Collect information about smarter database status and returns values in a list -Cached token is used or a new token is generated if not provided when calling -this function (see \code{\link{get_smarter_token}} for more information) } \section{About SMARTER database info endpoint}{ diff --git a/man/get_smarter_samples.Rd b/man/get_smarter_samples.Rd index 3b4c70b..a156b4e 100644 --- a/man/get_smarter_samples.Rd +++ b/man/get_smarter_samples.Rd @@ -16,8 +16,6 @@ Returns a dataframe with selected samples } \description{ Fetch SMARTER REST API samples endpoint and returns results in a dataframe. -Cached token is used or a new token is generated if not provided when calling -this function (see \code{\link{get_smarter_token}} for more information) } \section{Passing additional parameters}{ diff --git a/man/get_smarter_supportedchips.Rd b/man/get_smarter_supportedchips.Rd index 483cf13..70a0b6a 100644 --- a/man/get_smarter_supportedchips.Rd +++ b/man/get_smarter_supportedchips.Rd @@ -14,8 +14,6 @@ Returns a dataframe with selected chips } \description{ Collect information on chip data currently managed in SMARTER database. -Cached token is used or a new token is generated if not provided when calling -this function (see \code{\link{get_smarter_token}} for more information) } \examples{ chips <- get_smarter_supportedchips() diff --git a/man/get_smarter_variants.Rd b/man/get_smarter_variants.Rd index 29bf723..c5d22f2 100644 --- a/man/get_smarter_variants.Rd +++ b/man/get_smarter_variants.Rd @@ -20,8 +20,6 @@ Returns a dataframe with selected variants Retrieve information on SMARTER SNPs. Only informations about the supported assemblies are returned (see \code{\link{get_smarter_info}} for more information). -Cached token is used or a new token is generated if not provided when calling -this function (see \code{\link{get_smarter_token}} for more information) } \section{About SMARTER supported assemblies}{ From 714728ae7cd371ebc4dd2eb736ac1918f5a5d79a Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Tue, 25 Jun 2024 15:16:16 +0200 Subject: [PATCH 26/35] :memo: update README --- README.Rmd | 96 +++++++++++++++++++++++++++++++----------------------- README.md | 96 +++++++++++++++++++++++++++++++----------------------- 2 files changed, 112 insertions(+), 80 deletions(-) diff --git a/README.Rmd b/README.Rmd index 4a276f0..a8bba5a 100644 --- a/README.Rmd +++ b/README.Rmd @@ -17,47 +17,40 @@ knitr::opts_chunk$set( [![R-CMD-check](https://github.com/cnr-ibba/r-smarter-api/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/cnr-ibba/r-smarter-api/actions/workflows/R-CMD-check.yaml) +[![lint](https://github.com/cnr-ibba/r-smarter-api/actions/workflows/lint.yaml/badge.svg)](https://github.com/cnr-ibba/r-smarter-api/actions/workflows/lint.yaml) +[![pkgdown](https://github.com/cnr-ibba/r-smarter-api/actions/workflows/pkgdown.yaml/badge.svg)](https://github.com/cnr-ibba/r-smarter-api/actions/workflows/pkgdown.yaml) -The goal of `smarterapi` is to collect data from *SMARTER REST API* +The goal of `smarterapi` is to collect data from +[SMARTER REST API](https://webserver.ibba.cnr.it/smarter-api/docs/) and provide them to +the user as a dataframe. Get more information with the +[online vignette](https://cnr-ibba.github.io/r-smarter-api/articles/smarterapi.html). ## Installation -You can install the development version of smarterapi from [GitHub](https://github.com/) with: +The `smarterapi` package is only available from [GitHub](https://github.com/) +and can be installed as a *source package* or in alternative using +[devtools](https://cran.r-project.org/web/packages/devtools/index.html) +package, for example: ```r +# install devtools if needed # install.packages("devtools") devtools::install_github("cnr-ibba/r-smarter-api") ``` -## SMARTER credentials - -The *SMARTER REST API* is not yet public and can be accessed providing a valid -*token* in every *HTTP* request. `smarterapi` can deal with token generation and -management and implement functions in order to automatically manage tokens in -every user requests. The function `get_smarter_token` can be used to manage tokens -and cache them inside `smarterapi` package. You could provide manually your -SMARTER credentials by calling `get_smarter_token` with the proper parameters -in order to generate a token, however the recommended way is to store your -credentials using environment variables, and let `smarterapi` deal with -your token management. Please remember that SMARTER credentials **MUST NOT be -tracked** in your code nor provided to un-authorized people. To manage your -environment properly, you should define such environment variables in your `$HOME` -directory, outside any other *R projects*. If you use *rstudio*, you can call -an utility function which open such environment file: +After the installation, you can load the package in your R session: -```r -usethis::edit_r_environ() +```{r eval = FALSE, import} +# import this library to deal with the SMARTER API +library(smarterapi) ``` -Variables in environment file should be defined with `key=value` syntax. In order -to configure properly `smarterapi`, you have to define `SMARTER_API_USERNAME` and -`SMARTER_API_PASSWORD` with your SMARTER credentials, like this: +## SMARTER credentials -```text -SMARTER_API_USERNAME= -SMARTER_API_PASSWORD= -``` +After the public release of SMARTER data, there's no need to provide credentials +to access the data. If you used to have credentials to access the data, you need +to install the latest version of `smarterapi` package. ## Querying the SMARTER backend @@ -68,10 +61,8 @@ lets to query the [Datasets endpoint](https://webserver.ibba.cnr.it/smarter-api/ while `get_smarter_samples` is able to query and parse the [Sample endpoints](https://webserver.ibba.cnr.it/smarter-api/docs/#/Samples) response. Each `smarterapi` function is documented in `R` and you can get help on -each function like any other R functions. If you manage tokens using `smarterapi` -and environment variables, you don't need to provide a token as a parameter while -fetching data, those function will handle the token generation and authentication -for you. There are two types of parameters that are required to fetch data through +each function like any other R functions. +There are two types of parameters that are required to fetch data through the *SMARTER-backend*: the `species` parameter, which can be `Goat` or `Sheep` respectively for goat and sheep [Samples](https://webserver.ibba.cnr.it/smarter-api/docs/#/Samples) or [Variants](https://webserver.ibba.cnr.it/smarter-api/docs/#/Variants) endpoints, @@ -82,14 +73,16 @@ as a `list()` object in order to limit your query to some data in particular. For example, if you need all the foreground genotypes datasets, you can collect data like this: -```r -datasets <- get_smarter_datasets(query = list(type="genotypes", type="foreground")) +```{r eval = FALSE, dataset} +datasets <- get_smarter_datasets( + query = list(type = "genotypes", type = "foreground")) ``` while if you require only background goat samples, you can do like this: -```r -goat_samples <- get_smarter_samples(species = "Goat", query=list(type="background")) +```{r eval = FALSE, samples} +goat_samples <- get_smarter_samples( + species = "Goat", query = list(type = "background")) ``` The full option list available to each endpoint is available on the SMARTER-backend @@ -106,7 +99,7 @@ described as *array of objects* can be specified multiple times: 2 Landrace LNR 3 Landin LND 4 Icelandic goat ICL -> + > goat_samples <- get_smarter_samples( species = "Goat", query = list( @@ -118,16 +111,39 @@ described as *array of objects* can be specified multiple times: ) ``` -## Example +## Examples This is a basic example which shows you how to collect data from SMARTER REST API for the *Italian* goats belonging to the *Adaptmap* dataset: -```{r example} -library(smarterapi) +```{r eval = FALSE, adaptmap} +# collect the dataset by providing part of the name with the search option: +# since we are forcing to collect only background genotypes, only one dataset +# will be returned datasets <- get_smarter_datasets( - query = list(species = "Goat", search = "adaptmap", type = "genotypes", type="background")) + query = list( + species = "Goat", + search = "adaptmap", + type = "genotypes", + type = "background" + ) +) + +# get the dataset id adatpmap_id <- datasets["_id.$oid"][1] + +# collect all the italian goats from the adaptmap dataset. Using the dataset id +# to filter out all the samples belonging to this dataset and the country option +# to filter out only the italian samples for this dataset adaptmap_goats <- get_smarter_samples( - species = "Goat", query = list(dataset=adatpmap_id, country="Italy")) + species = "Goat", + query = list( + dataset = adatpmap_id, + country = "Italy" + ) +) ``` + +We have other examples in the [vignettes](https://cnr-ibba.github.io/r-smarter-api/articles/), +for example how to collect data from the [Variants](https://cnr-ibba.github.io/r-smarter-api/articles/variants.html) +endpoints or how to work with [geographic coordinates](https://cnr-ibba.github.io/r-smarter-api/articles/geojson.html). diff --git a/README.md b/README.md index 174716d..b37387f 100644 --- a/README.md +++ b/README.md @@ -6,51 +6,42 @@ [![R-CMD-check](https://github.com/cnr-ibba/r-smarter-api/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/cnr-ibba/r-smarter-api/actions/workflows/R-CMD-check.yaml) +[![lint](https://github.com/cnr-ibba/r-smarter-api/actions/workflows/lint.yaml/badge.svg)](https://github.com/cnr-ibba/r-smarter-api/actions/workflows/lint.yaml) +[![pkgdown](https://github.com/cnr-ibba/r-smarter-api/actions/workflows/pkgdown.yaml/badge.svg)](https://github.com/cnr-ibba/r-smarter-api/actions/workflows/pkgdown.yaml) -The goal of `smarterapi` is to collect data from *SMARTER REST API* +The goal of `smarterapi` is to collect data from [SMARTER REST +API](https://webserver.ibba.cnr.it/smarter-api/docs/) and provide them +to the user as a dataframe. Get more information with the [online +vignette](https://cnr-ibba.github.io/r-smarter-api/articles/smarterapi.html). ## Installation -You can install the development version of smarterapi from -[GitHub](https://github.com/) with: +The `smarterapi` package is only available from +[GitHub](https://github.com/) and can be installed as a *source package* +or in alternative using +[devtools](https://cran.r-project.org/web/packages/devtools/index.html) +package, for example: ``` r +# install devtools if needed # install.packages("devtools") devtools::install_github("cnr-ibba/r-smarter-api") ``` -## SMARTER credentials - -The *SMARTER REST API* is not yet public and can be accessed providing a -valid *token* in every *HTTP* request. `smarterapi` can deal with token -generation and management and implement functions in order to -automatically manage tokens in every user requests. The function -`get_smarter_token` can be used to manage tokens and cache them inside -`smarterapi` package. You could provide manually your SMARTER -credentials by calling `get_smarter_token` with the proper parameters in -order to generate a token, however the recommended way is to store your -credentials using environment variables, and let `smarterapi` deal with -your token management. Please remember that SMARTER credentials **MUST -NOT be tracked** in your code nor provided to un-authorized people. To -manage your environment properly, you should define such environment -variables in your `$HOME` directory, outside any other *R projects*. If -you use *rstudio*, you can call an utility function which open such -environment file: +After the installation, you can load the package in your R session: ``` r -usethis::edit_r_environ() +# import this library to deal with the SMARTER API +library(smarterapi) ``` -Variables in environment file should be defined with `key=value` syntax. -In order to configure properly `smarterapi`, you have to define -`SMARTER_API_USERNAME` and `SMARTER_API_PASSWORD` with your SMARTER -credentials, like this: +## SMARTER credentials -``` text -SMARTER_API_USERNAME= -SMARTER_API_PASSWORD= -``` +After the public release of SMARTER data, there’s no need to provide +credentials to access the data. If you used to have credentials to +access the data, you need to install the latest version of `smarterapi` +package. ## Querying the SMARTER backend @@ -63,10 +54,7 @@ endpoint](https://webserver.ibba.cnr.it/smarter-api/docs/#/Datasets/get_datasets while `get_smarter_samples` is able to query and parse the [Sample endpoints](https://webserver.ibba.cnr.it/smarter-api/docs/#/Samples) response. Each `smarterapi` function is documented in `R` and you can -get help on each function like any other R functions. If you manage -tokens using `smarterapi` and environment variables, you don’t need to -provide a token as a parameter while fetching data, those function will -handle the token generation and authentication for you. There are two +get help on each function like any other R functions. There are two types of parameters that are required to fetch data through the *SMARTER-backend*: the `species` parameter, which can be `Goat` or `Sheep` respectively for goat and sheep @@ -81,13 +69,15 @@ example, if you need all the foreground genotypes datasets, you can collect data like this: ``` r -datasets <- get_smarter_datasets(query = list(type="genotypes", type="foreground")) +datasets <- get_smarter_datasets( + query = list(type = "genotypes", type = "foreground")) ``` while if you require only background goat samples, you can do like this: ``` r -goat_samples <- get_smarter_samples(species = "Goat", query=list(type="background")) +goat_samples <- get_smarter_samples( + species = "Goat", query = list(type = "background")) ``` The full option list available to each endpoint is available on the @@ -106,7 +96,7 @@ objects* can be specified multiple times: 2 Landrace LNR 3 Landin LND 4 Icelandic goat ICL -> + > goat_samples <- get_smarter_samples( species = "Goat", query = list( @@ -118,16 +108,42 @@ objects* can be specified multiple times: ) ``` -## Example +## Examples This is a basic example which shows you how to collect data from SMARTER REST API for the *Italian* goats belonging to the *Adaptmap* dataset: ``` r -library(smarterapi) +# collect the dataset by providing part of the name with the search option: +# since we are forcing to collect only background genotypes, only one dataset +# will be returned datasets <- get_smarter_datasets( - query = list(species = "Goat", search = "adaptmap", type = "genotypes", type="background")) + query = list( + species = "Goat", + search = "adaptmap", + type = "genotypes", + type = "background" + ) +) + +# get the dataset id adatpmap_id <- datasets["_id.$oid"][1] + +# collect all the italian goats from the adaptmap dataset. Using the dataset id +# to filter out all the samples belonging to this dataset and the country option +# to filter out only the italian samples for this dataset adaptmap_goats <- get_smarter_samples( - species = "Goat", query = list(dataset=adatpmap_id, country="Italy")) + species = "Goat", + query = list( + dataset = adatpmap_id, + country = "Italy" + ) +) ``` + +We have other examples in the +[vignettes](https://cnr-ibba.github.io/r-smarter-api/articles/), for +example how to collect data from the +[Variants](https://cnr-ibba.github.io/r-smarter-api/articles/variants.html) +endpoints or how to work with [geographic +coordinates](https://cnr-ibba.github.io/r-smarter-api/articles/geojson.html). From ea5d8ac9f20b2def6f9f58c9592a104e03846a3a Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Tue, 25 Jun 2024 15:16:46 +0200 Subject: [PATCH 27/35] :rotating_light: attempt to solve some linter issues --- R/geojson.R | 2 ++ vignettes/geojson.Rmd | 26 ++++++++--------- vignettes/smarterapi.Rmd | 63 ++++++++++++++++++++-------------------- vignettes/variants.Rmd | 37 +++++++++++------------ 4 files changed, 65 insertions(+), 63 deletions(-) diff --git a/R/geojson.R b/R/geojson.R index 6c80d58..d19f4a6 100644 --- a/R/geojson.R +++ b/R/geojson.R @@ -68,4 +68,6 @@ get_smarter_geojson <- function(species, query = list()) { data <- sf::read_sf( httr::content(resp, "text", encoding = "utf-8") ) + + return(data) } diff --git a/vignettes/geojson.Rmd b/vignettes/geojson.Rmd index 6a02047..2e2bff2 100644 --- a/vignettes/geojson.Rmd +++ b/vignettes/geojson.Rmd @@ -81,7 +81,7 @@ selected_goats <- goat_data[sel_logical, ] ## Convert from MULTIPOINTS to POINT The `get_smarter_geojson()` methods returns a `sf()` *MULTIPOINTS* objects since -multiple locations could be collected for each animal, for example for +multiple locations could be collected for each animal, for example for *transhumant* samples. However, for simplicity, we can focus our analyses using only one GPS coordinate, transforming this *MULTIPOINTS* object into a *POINT* object: @@ -106,13 +106,13 @@ the plot to the selected points of the previous example: bbox <- sf::st_bbox(hapmap_data) world <- rnaturalearth::ne_countries(scale = "medium", returnclass = "sf") -ggplot2::ggplot() + - ggplot2::geom_sf(data = world, fill = "antiquewhite") + - ggplot2::geom_sf(data = hapmap_data, color = 'blue', size = 5) + +ggplot2::ggplot() + + ggplot2::geom_sf(data = world, fill = "antiquewhite") + + ggplot2::geom_sf(data = hapmap_data, color = "blue", size = 5) + ggspatial::annotation_scale(location = "bl", width_hint = 0.5) + ggspatial::annotation_north_arrow(location = "bl", which_north = "true", pad_x = ggplot2::unit(0.75, "in"), pad_y = ggplot2::unit(0.5, "in"), - style = ggspatial::north_arrow_fancy_orienteering) + + style = ggspatial::north_arrow_fancy_orienteering) + ggspatial::coord_sf( xlim = c(bbox$xmin, bbox$xmax), ylim = c(bbox$ymin, bbox$ymax)) + ggplot2::theme_bw() + @@ -130,7 +130,7 @@ Data could be visualized in an interactive way using *R* `leaflet` library: ```{r eval=FALSE} leaflet::leaflet( - data = hapmap_data, + data = hapmap_data, options = leaflet::leafletOptions(minZoom = 5, maxZoom = 8)) %>% leaflet::addTiles() %>% leaflet::addMarkers( @@ -138,7 +138,7 @@ leaflet::leaflet( ) ``` -See [Leaflet for R](https://rstudio.github.io/leaflet/) documentation for +See [Leaflet for R](https://rstudio.github.io/leaflet/) documentation for more information. ## Integrate data with external sources @@ -152,22 +152,22 @@ additional columns: ```{r eval=FALSE} prj_dd <- "EPSG:4326" hapmap_data_elev <- elevatr::get_elev_point( - hapmap_data, - prj = prj_dd, + hapmap_data, + prj = prj_dd, src = "aws" ) ``` See [elevatr vignette](https://cran.r-project.org/web/packages/elevatr/vignettes/introduction_to_elevatr.html) -or [elevatr](https://rspatialdata.github.io/elevation.html) tutorial in +or [elevatr](https://rspatialdata.github.io/elevation.html) tutorial in [rspatialdata](https://rspatialdata.github.io/index.html) documentation for more information and examples. ### Add worldclim data from rasters -We can collect data from [worldclim](https://www.worldclim.org/) database using -the `geodata` package: this package in particular collect *raster* data from different -sources (see geodata +We can collect data from [worldclim](https://www.worldclim.org/) database using +the `geodata` package: this package in particular collect *raster* data from different +sources (see geodata [reference manual](https://cran.r-project.org/web/packages/geodata/geodata.pdf) for more information). In this example, we collect the *raster* with the lowest definition (10min =~ 340km) for worldclim diff --git a/vignettes/smarterapi.Rmd b/vignettes/smarterapi.Rmd index a344b52..78ee521 100644 --- a/vignettes/smarterapi.Rmd +++ b/vignettes/smarterapi.Rmd @@ -15,8 +15,8 @@ knitr::opts_chunk$set( ``` **smarterapi** is an R package which enable to browse the -[SMARTER backend API](https://webserver.ibba.cnr.it/smarter-api/docs/) and -collect smarter data. In this R package, functions to deal with the different +[SMARTER backend API](https://webserver.ibba.cnr.it/smarter-api/docs/) and +collect smarter data. In this R package, functions to deal with the different API endpoints are implemented. In this vignette, we assume you have configured properly this function in order to use your SMARTER credentials. @@ -40,7 +40,7 @@ The smarter database is continuously updated, for example when receiving new samples, genotypes, metadata or when something is fixed or updated, for example when a new assembly is added. In order to ensure reproducibility and monitoring changes, genotypes and metadata are provided using *versions*: this means that -you have to ensure that the genotypes dataset and metadata are referring to the +you have to ensure that the genotypes dataset and metadata are referring to the same version. You can check database version using the `get_smarter_info()` method: @@ -64,7 +64,7 @@ SHEEP/ You have to ensure that you are working with the same version, for both metadata and genotypes: if not, you may not find samples in the genotype files or you are -referring to an out-dated assembly version. To see the changelist in each +referring to an out-dated assembly version. To see the changelist in each version, please refer to the SMARTER-database [HISTORY.rst](https://github.com/cnr-ibba/SMARTER-database/blob/master/HISTORY.rst) file. @@ -76,12 +76,12 @@ SMARTER API backend using R packages like `httr`, `jsonlite`, handling token *authentication* through helper functions. In general, each functions accepts a `query=list()` parameter, in which pass addtional parameter to the API endpoint in order to filter results matching query. Some functions like `get_smarter_samples()` -or `get_smarter_variants()` requires additional parameters like the `species` or -the `assembly` version. Each function, in general will returns results in a +or `get_smarter_variants()` requires additional parameters like the `species` or +the `assembly` version. Each function, in general will returns results in a `data.frame`: you could filter out data using `dplyr` or with standard R methods or you could filter data *directly* by submitting a proper query to the API. Please refer to the proper documentation to understand -which parameters a function expect. See also the +which parameters a function expect. See also the [SMARTER-backend API](https://webserver.ibba.cnr.it/smarter-api/docs/) web interface to have an idea on which parameter are allowed for each endpoint. @@ -91,7 +91,7 @@ Here are some examples on collecting samples. The main function required to coll sample is `get_smarter_samples()`, which is an helper function which allow to query the [/samples/goat](https://webserver.ibba.cnr.it/smarter-api/docs/#/Samples/get_samples_goat) and [/samples/sheep](https://webserver.ibba.cnr.it/smarter-api/docs/#/Samples/get_samples_sheep) -endpoints of the SMARTER-backend API. We will use some other functions to have +endpoints of the SMARTER-backend API. We will use some other functions to have better idea on which values to use to filter data. Remember that all the parameters you see in each different example can be merged with other to restrict your query to have only the samples you are looking for. @@ -100,10 +100,10 @@ to have only the samples you are looking for. Getting samples by dataset is quite easy, you have to provide the proper `dataset_id` to the `get_smarter_samples()` function. However, you have to determine the proper -`dataset_id` using the `get_smarter_dataset()` function, which model the +`dataset_id` using the `get_smarter_dataset()` function, which model the [/datasets](https://webserver.ibba.cnr.it/smarter-api/docs/#/Datasets/get_datasets) endpoint. For example, to extract -only *background* genotypes datasets (data generated before SMARTER project) you +only *background* genotypes datasets (data generated before SMARTER project) you have to pass the proper `type` to the `query` argument. Since the `query` argument is a list, you can pass multiple parameters at once. For parameters which supports arrays, you could supply the same parameters multiple times: each one will be passed @@ -115,13 +115,13 @@ background_genotypes <- get_smarter_datasets( # same as before, but limiting to goat species background_goat_genotypes <- get_smarter_datasets( - query = list(type = "background", type = "genotypes", + query = list(type = "background", type = "genotypes", species = "Goat")) ``` Take some time to explore the dataframe columns. There are two importants fields, the first is the `_id.$oid` column, which is the `dataset_id` we want to provide -to collect samples belonging to this dataset. +to collect samples belonging to this dataset. The second is the `file` column, which is the archive name which was uploaded into the smarter database. For example, here is what the `background_goat_genotypes` table looks like: @@ -139,7 +139,7 @@ adaptmap_goats <- get_smarter_samples( species = "Goat", query = list(dataset = adatpmap_id, country = "Italy")) ``` -The previous case is quite easy, there was only one dataset in +The previous case is quite easy, there was only one dataset in `background_goat_genotypes` dataframe, so we can simply paste this value in the `get_smarter_samples` query. But how we can handle multiple datasets? we can transform the proper column in a list and then renaming it: @@ -151,7 +151,7 @@ foreground_goat_genotypes <- get_smarter_datasets( # construct the query arguments datasets <- as.list(foreground_goat_genotypes$"_id.$oid") -names(datasets) = rep("dataset", length(datasets)) +names(datasets) <- rep("dataset", length(datasets)) breeds <- list(breed_code = "LNR", breed_code = "SKO", breed_code = "FSS") query <- append(datasets, breeds) @@ -159,7 +159,7 @@ query <- append(datasets, breeds) foreground_goat_samples <- get_smarter_samples(species = "Goat", query = query) ``` -The last selection example relies on dataset file contents: if you remember the +The last selection example relies on dataset file contents: if you remember the name of the file submitted in the dataset, you can search by datasets *content*: ```{r} @@ -178,7 +178,7 @@ to the `query` parameter. You can select samples relying on *breeds names* or *breed codes*. Breed names are written in the languages they come from, so in order to retrieve *Île de France* -or *Fjällnäs* breed samples, you have to specify the full breed name or use the +or *Fjällnäs* breed samples, you have to specify the full breed name or use the search parameter with the `get_smarter_breeds()` which model the [/breeds](https://webserver.ibba.cnr.it/smarter-api/docs/#/Breeds/get_breeds) endpoint: @@ -242,8 +242,8 @@ italian_background_sheeps <- get_smarter_samples( ### Select by chip -You can select samples relying on the chip they are sequenced. If you search -for multiple chip types, you will collect all samples which belongs to any of +You can select samples relying on the chip they are sequenced. If you search +for multiple chip types, you will collect all samples which belongs to any of the specified chip. First, collect a list of the available chips for a certain species: @@ -261,16 +261,16 @@ Then collect samples relying on chip name, for example: selected_samples <- get_smarter_samples( species = "Sheep", query = list( - chip_name="IlluminaOvineHDSNP", - chip_name="AffymetrixAxiomOviCan" + chip_name = "IlluminaOvineHDSNP", + chip_name = "AffymetrixAxiomOviCan" ) ) ``` ### Select by metadata -Since metadata aren't formatted in the same way in each samples, is difficult to -define a single query you can apply to each samples. For the moment, the only +Since metadata aren't formatted in the same way in each samples, is difficult to +define a single query you can apply to each samples. For the moment, the only queries you can apply on metadata are restricted to their presence or absence. For example, we can collect all samples which have GPS coordinates and phenotypes (any): @@ -279,18 +279,18 @@ For example, we can collect all samples which have GPS coordinates and phenotype smarter_goats <- get_smarter_samples( species = "Goat", query = list( - locations__exists=TRUE, - phenotype__exists=TRUE + locations__exists = TRUE, + phenotype__exists = TRUE ) ) ``` -After that, you have to filter out the `smarter_goats` dataframe in order to +After that, you have to filter out the `smarter_goats` dataframe in order to collect only the samples you want. ## Subset genotypes relying samples -After you have identified the samples of your interest, +After you have identified the samples of your interest, you can extract their genotypes from the proper file using [plink](https://www.cog-genomics.org/plink/). First, you have to write a *TSV* file with *breed_code* and *smarter_id* as columns. For example, using the samples @@ -301,11 +301,11 @@ selected_sheeps_ids <- italian_background_sheeps %>% dplyr::select( "breed_code", "smarter_id") write.table( - selected_sheeps_ids, - file = "selected_sheeps.txt", - quote = FALSE, - sep = "\t", - row.names = FALSE, + selected_sheeps_ids, + file = "selected_sheeps.txt", + quote = FALSE, + sep = "\t", + row.names = FALSE, col.names = FALSE) ``` @@ -329,4 +329,3 @@ plink --chr-set 26 no-xy no-mt --allow-no-sex \ --out selected_sheeps-OAR3-top-0.4.4 \ --make-bed ``` - diff --git a/vignettes/variants.Rmd b/vignettes/variants.Rmd index 628ca2b..b53cc7b 100644 --- a/vignettes/variants.Rmd +++ b/vignettes/variants.Rmd @@ -14,7 +14,7 @@ knitr::opts_chunk$set( ) ``` -This vignette describe how to use the +This vignette describe how to use the [variant endpoints](https://webserver.ibba.cnr.it/smarter-api/docs/#/Variants) which store information about SNPs used in the *smarter genotype datasets*. @@ -29,14 +29,14 @@ library(pander) ## Assembly versions -One of the aim of this project is to manage genotypes in different assembly +One of the aim of this project is to manage genotypes in different assembly version. This means collect data from different assemblies (due to when data is -generated), from different sources (*Affymetrix*, *Illumina*, *WGS*) and different +generated), from different sources (*Affymetrix*, *Illumina*, *WGS*) and different file formats. Genotypes are normalized in order to be consistent accross data sources and stored in one genotype file for each specie. -Currently four assembly versions are managed, two for the sheep dataset and two for -the goat dataset. Information about assemblies data sources can be retrieved from +Currently four assembly versions are managed, two for the sheep dataset and two for +the goat dataset. Information about assemblies data sources can be retrieved from the backend [info endpoint](https://webserver.ibba.cnr.it/smarter-api/docs/#/Info) through the `get_smarter_info()` function: @@ -53,14 +53,14 @@ pander::pander(assemblies) ## Collect data from an assembly `get_smarter_variants()` have two mandatory parameters, `species` and `assembly`, -then it could accept additional parameters (see one of the +then it could accept additional parameters (see one of the [variant endpoints](https://webserver.ibba.cnr.it/smarter-api/docs/#/Variants) to have more information). For example you can search variants for *snp name* or *rs id* (if the latter exists): ```{r message=FALSE} snp <- get_smarter_variants( - species = "Goat", + species = "Goat", assembly = "ARS1", query = list( name = "snp12965-scaffold1499-3295573" @@ -71,10 +71,10 @@ snp <- get_smarter_variants( ```{r echo=FALSE} pander::pander( subset( - snp, + snp, select = -c( - `_id.$oid`, - `sequence.IlluminaGoatSNP50`, + `_id.$oid`, + `sequence.IlluminaGoatSNP50`, `sequence.AffymetrixAxiomGoatv2`, `chip_name` ) @@ -83,15 +83,15 @@ pander::pander( ``` Please, refer to the `get_smarter_info()` `working_assemblies` to have an idea -of the assemblies supported by the +of the assemblies supported by the [SMARTER-database](https://github.com/cnr-ibba/SMARTER-database). Data which come from [SNPchiMp v.3](https://webserver.ibba.cnr.it/SNPchimp/) -like the *Sheep* `OAR3` assembly, support the *illumina forward* attribute. +like the *Sheep* `OAR3` assembly, support the *illumina forward* attribute. For example the following SNP: ```{r message=FALSE} snp <- get_smarter_variants( - species = "Sheep", + species = "Sheep", assembly = "OAR3", query = list( rs_id = "rs10721092" @@ -100,10 +100,11 @@ snp <- get_smarter_variants( ``` ```{r echo=FALSE} -pander::pander(subset(snp, select = -c(`_id.$oid`, `sequence.IlluminaOvineHDSNP`))) +pander::pander( + subset(snp, select = -c(`_id.$oid`, `sequence.IlluminaOvineHDSNP`))) ``` -Is `T/C` on the *forward* strand of *OAR3*: this means that the reversed probe is +Is `T/C` on the *forward* strand of *OAR3*: this means that the reversed probe is aligned to the genome (as you could infer from the `bottom` *illumina strand* attribute of this SNP.). Variants in the SMARTER-database are converted using the **illumina top** coding convenction, so you will find this SNP as `A/G` in the SMARTER-database while @@ -125,9 +126,9 @@ variants <- get_smarter_variants( ```{r echo=FALSE} pander::pander( subset( - snp, + snp, select = -c( - `_id.$oid`, + `_id.$oid`, `chip_name`, `sequence.IlluminaOvineHDSNP` ) @@ -137,7 +138,7 @@ pander::pander( ## Fetch Variants by chip name -You can download *all variants* for a certain chip: please consider that it will +You can download *all variants* for a certain chip: please consider that it will require a lot of time and memory, since we store more than 600K SNPs in the smarter database. First, collect the available chips from the SMARTER-database, for example for the Sheep species: From 54a884f12a72ea4b34195aec463dccb6491628c2 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Tue, 25 Jun 2024 15:51:33 +0200 Subject: [PATCH 28/35] :white_check_mark: solve some issues when running tests --- DESCRIPTION | 22 +++++++++++++--------- README.Rmd | 2 +- README.md | 4 ++-- vignettes/geojson.Rmd | 6 +++--- 4 files changed, 19 insertions(+), 15 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index 642cb17..7615b9d 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,17 +1,21 @@ Package: smarterapi Title: Fetch SMARTER Data Through REST API Version: 0.2.0.9000 -Authors@R: - person("Paolo", "Cozzi", , "paolo.cozzi@ibba.cnr.it", - role = c("aut", "cre"), - comment = c(ORCID = "0000-0003-0388-6874")) -Description: This package is an interface which interacts with SMARTER REST API - by querying data and providing results into dataframes. +Authors@R: + person( + "Paolo", "Cozzi", + email = "paolo.cozzi@ibba.cnr.it", + role = c("aut", "cre"), + comment = c(ORCID = "0000-0003-0388-6874") + ) +Description: + Provides functions to fetch data from the SMARTER API, a RESTful + web service that provides access to data from the SMARTER database. License: GPL (>= 3) Encoding: UTF-8 Roxygen: list(markdown = TRUE) RoxygenNote: 7.3.1 -Suggests: +Suggests: lintr, styler, testthat (>= 3.0.0), @@ -33,14 +37,14 @@ Suggests: rnaturalearth, rnaturalearthdata Config/testthat/edition: 3 -Config/renv/profiles/dev/dependencies: +Config/renv/profiles/dev/dependencies: lintr, rcmdcheck, roxygen2, styler, testthat, usethis -Imports: +Imports: jsonlite, httr, urltools, diff --git a/README.Rmd b/README.Rmd index a8bba5a..76bd91d 100644 --- a/README.Rmd +++ b/README.Rmd @@ -30,7 +30,7 @@ the user as a dataframe. Get more information with the The `smarterapi` package is only available from [GitHub](https://github.com/) and can be installed as a *source package* or in alternative using -[devtools](https://cran.r-project.org/web/packages/devtools/index.html) +[devtools](https://CRAN.R-project.org/package=devtools) package, for example: ```r diff --git a/README.md b/README.md index b37387f..b6a60c1 100644 --- a/README.md +++ b/README.md @@ -20,8 +20,8 @@ vignette](https://cnr-ibba.github.io/r-smarter-api/articles/smarterapi.html). The `smarterapi` package is only available from [GitHub](https://github.com/) and can be installed as a *source package* or in alternative using -[devtools](https://cran.r-project.org/web/packages/devtools/index.html) -package, for example: +[devtools](https://CRAN.R-project.org/package=devtools) package, for +example: ``` r # install devtools if needed diff --git a/vignettes/geojson.Rmd b/vignettes/geojson.Rmd index 2e2bff2..10e844b 100644 --- a/vignettes/geojson.Rmd +++ b/vignettes/geojson.Rmd @@ -158,7 +158,7 @@ hapmap_data_elev <- elevatr::get_elev_point( ) ``` -See [elevatr vignette](https://cran.r-project.org/web/packages/elevatr/vignettes/introduction_to_elevatr.html) +See [elevatr vignette](https://cran.r-project.org/package=elevatr/vignettes/introduction_to_elevatr.html) or [elevatr](https://rspatialdata.github.io/elevation.html) tutorial in [rspatialdata](https://rspatialdata.github.io/index.html) documentation for more information and examples. @@ -168,7 +168,7 @@ information and examples. We can collect data from [worldclim](https://www.worldclim.org/) database using the `geodata` package: this package in particular collect *raster* data from different sources (see geodata -[reference manual](https://cran.r-project.org/web/packages/geodata/geodata.pdf) +[reference manual](https://cran.r-project.org/package=geodata/geodata.pdf) for more information). In this example, we collect the *raster* with the lowest definition (10min =~ 340km) for worldclim [bioclimatic variables](https://www.worldclim.org/data/bioclim.html) @@ -193,5 +193,5 @@ hapmap_data_worldclim <- cbind(hapmap_data, merge(elev_data, bio_data)) ``` See [raster extraction](https://www.worldclim.org/data/bioclim.html) from -[geocomputation with R](https://geocompr.robinlovelace.net/index.html) for +[geocomputation with R](https://r.geocompx.org/index.html) for more information. From 2b5537f3e7dc15107ce9663be89e2a9e9c887e7d Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Wed, 26 Jun 2024 12:16:53 +0200 Subject: [PATCH 29/35] :sparkles: add method to download genotypes --- .gitignore | 1 + DESCRIPTION | 4 +- NAMESPACE | 1 + R/genotypes.R | 82 ++++++++++++++++++++++++++++++++++++ R/info.R | 2 +- R/utils.R | 6 ++- R/variants.R | 2 +- man/get_smarter_genotypes.Rd | 37 ++++++++++++++++ man/get_smarter_info.Rd | 2 +- man/get_smarter_variants.Rd | 2 +- renv/profiles/dev/renv.lock | 19 +++++++++ 11 files changed, 151 insertions(+), 7 deletions(-) create mode 100644 R/genotypes.R create mode 100644 man/get_smarter_genotypes.Rd diff --git a/.gitignore b/.gitignore index 228a7a5..dfa58c8 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,4 @@ docs inst/doc vignettes/*.txt +*.zip diff --git a/DESCRIPTION b/DESCRIPTION index 7615b9d..288c710 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -21,7 +21,6 @@ Suggests: testthat (>= 3.0.0), rcmdcheck, roxygen2, - utils, usethis, leaflet, knitr, @@ -48,6 +47,9 @@ Imports: jsonlite, httr, urltools, + RCurl, + fs, + utils, logger, dplyr, tidyr, diff --git a/NAMESPACE b/NAMESPACE index dfb8c79..c516b7b 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -3,6 +3,7 @@ export(get_smarter_breeds) export(get_smarter_countries) export(get_smarter_datasets) +export(get_smarter_genotypes) export(get_smarter_geojson) export(get_smarter_info) export(get_smarter_samples) diff --git a/R/genotypes.R b/R/genotypes.R new file mode 100644 index 0000000..445925f --- /dev/null +++ b/R/genotypes.R @@ -0,0 +1,82 @@ + +#' Get SMARTER genotypes +#' +#' Retrieve genotypes data from SMARTER database. Only information about the +#' supported assemblies are returned (see \code{\link{get_smarter_info}} for +#' more information). +#' +#' @inheritParams get_smarter_variants +#' @param dest_path the path where the file will be downloaded. If NULL, the +#' file will be downloaded in the current working directory +#' +#' @return a character string with the path to the downloaded file is returned +#' @export +#' +#' @section About SMARTER supported assemblies: +#' Currently SMARTER supports *OAR3* and *OAR4* assemblies for Sheep and *CHI1* +#' and *ARS1* assemblies for goat. Genotypes are provided in PLINK binary +#' format, and compressed in a zip file. +#' +#' @examples +#' \dontrun{ +#' # get genotypes for sheep OAR3 in current directory +#' get_smarter_genotypes(species = "Sheep", assembly = "OAR3") +#' } +get_smarter_genotypes <- function(species, assembly, dest_path = NULL) { + # mind that species is lowercase in endpoint url + species <- toupper(species) + assembly <- toupper(assembly) + + url <- httr::modify_url( + smarterapi_globals$ftp_url, + path = sprintf("%s/%s/%s/", smarterapi_globals$ftp_path, species, assembly) + ) + + tmp <- RCurl::getURL(url, ftp.use.epsv = FALSE, dirlistonly = TRUE) + file_list <- strsplit(tmp, "\n")[[1]] + + info <- get_smarter_info() + + # Use grep to find the file name that version and have zip extension + pattern <- sprintf("%s.*\\.zip$", info$version) + matching_file <- grep(pattern, file_list, value = TRUE) + + # check that matching_file is one length + # if not, return an error + if (length(matching_file) != 1) { + stop("No matching file found") + return(NULL) + } + + # now get the full path of the genotype file + url <- httr::modify_url( + smarterapi_globals$ftp_url, + path = sprintf( + "%s/%s/%s/%s", + smarterapi_globals$ftp_path, + species, + assembly, + matching_file + ) + ) + + if (is.null(dest_path)) { + dest_file <- fs::path(getwd(), matching_file) + } else { + dest_file <- fs::path(dest_path, matching_file) + } + + # Use tryCatch to handle potential errors + tryCatch({ + utils::download.file(url, destfile = dest_file, mode = "wb") + if (file.exists(dest_file)) { + print(sprintf("File downloaded successfully in %s.", dest_file)) + } else { + print("File download failed.") + } + }, error = function(e) { + print(paste("An error occurred:", e$message)) + }) + + return(dest_file) +} diff --git a/R/info.R b/R/info.R index 97ab04f..e2f1efc 100644 --- a/R/info.R +++ b/R/info.R @@ -17,7 +17,7 @@ #' | plink_specie | track the specie specific parameters to generate genotypes using plink | #' | working_assemblies | the source of variant positions and genotypes | #' -#' Those informations are required to understand if your genotypes are updated +#' Those information are required to understand if your genotypes are updated #' or not. For example, if the SMARTER database current *version* and #' *last_updated* are more recent than your genotype file, you could retrive #' information on samples not included in the genotype file. In such case, you diff --git a/R/utils.R b/R/utils.R index 87dd7dc..c523edf 100644 --- a/R/utils.R +++ b/R/utils.R @@ -3,9 +3,11 @@ version <- utils::packageVersion("smarterapi") # define a global environment for the package smarterapi_globals <- new.env() -smarterapi_globals$base_url <- "http://localhost:27080" +smarterapi_globals$base_url <- "https://webserver.ibba.cnr.it" smarterapi_globals$base_endpoint <- "/smarter-api" smarterapi_globals$size <- 25 +smarterapi_globals$ftp_url <- "ftp://webserver.ibba.cnr.it" +smarterapi_globals$ftp_path <- "/smarter" smarterapi_globals$user_agent <- httr::user_agent( paste0("r-smarterapi v", version) ) @@ -56,7 +58,7 @@ read_url <- function(url, query = list()) { get_smarter_data <- function(url, query = list()) { # test for page size. Add a default size if necessary - if (!"size" %in% names(query) | is.null(query[["size"]])) { + if (!"size" %in% names(query) || is.null(query[["size"]])) { # add global result size to query query$size <- smarterapi_globals$size } diff --git a/R/variants.R b/R/variants.R index 7070b0d..a91c643 100644 --- a/R/variants.R +++ b/R/variants.R @@ -1,6 +1,6 @@ #' Get SMARTER variants #' -#' Retrieve information on SMARTER SNPs. Only informations about the supported +#' Retrieve information on SMARTER SNPs. Only information about the supported #' assemblies are returned (see \code{\link{get_smarter_info}} for more #' information). #' diff --git a/man/get_smarter_genotypes.Rd b/man/get_smarter_genotypes.Rd new file mode 100644 index 0000000..180631f --- /dev/null +++ b/man/get_smarter_genotypes.Rd @@ -0,0 +1,37 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/genotypes.R +\name{get_smarter_genotypes} +\alias{get_smarter_genotypes} +\title{Get SMARTER genotypes} +\usage{ +get_smarter_genotypes(species, assembly, dest_path = NULL) +} +\arguments{ +\item{species}{a smarter species ("Goat", "Sheep")} + +\item{assembly}{the smarter working assembly for such species} + +\item{dest_path}{the path where the file will be downloaded. If NULL, the +file will be downloaded in the current working directory} +} +\value{ +a character string with the path to the downloaded file is returned +} +\description{ +Retrieve genotypes data from SMARTER database. Only information about the +supported assemblies are returned (see \code{\link{get_smarter_info}} for +more information). +} +\section{About SMARTER supported assemblies}{ + +Currently SMARTER supports \emph{OAR3} and \emph{OAR4} assemblies for Sheep and \emph{CHI1} +and \emph{ARS1} assemblies for goat. Genotypes are provided in PLINK binary +format, and compressed in a zip file. +} + +\examples{ +\dontrun{ +# get genotypes for sheep OAR3 in current directory +get_smarter_genotypes(species = "Sheep", assembly = "OAR3") +} +} diff --git a/man/get_smarter_info.Rd b/man/get_smarter_info.Rd index 7efabe6..69d6cee 100644 --- a/man/get_smarter_info.Rd +++ b/man/get_smarter_info.Rd @@ -23,7 +23,7 @@ The info endpoint contains information about the status of the database\tabular{ } -Those informations are required to understand if your genotypes are updated +Those information are required to understand if your genotypes are updated or not. For example, if the SMARTER database current \emph{version} and \emph{last_updated} are more recent than your genotype file, you could retrive information on samples not included in the genotype file. In such case, you diff --git a/man/get_smarter_variants.Rd b/man/get_smarter_variants.Rd index c5d22f2..4db2940 100644 --- a/man/get_smarter_variants.Rd +++ b/man/get_smarter_variants.Rd @@ -17,7 +17,7 @@ get_smarter_variants(species, assembly, query = list()) Returns a dataframe with selected variants } \description{ -Retrieve information on SMARTER SNPs. Only informations about the supported +Retrieve information on SMARTER SNPs. Only information about the supported assemblies are returned (see \code{\link{get_smarter_info}} for more information). } diff --git a/renv/profiles/dev/renv.lock b/renv/profiles/dev/renv.lock index 3a9e17e..bbf37ad 100644 --- a/renv/profiles/dev/renv.lock +++ b/renv/profiles/dev/renv.lock @@ -137,6 +137,18 @@ ], "Hash": "45f0398006e83a5b10b72a90663d8d8c" }, + "RCurl": { + "Package": "RCurl", + "Version": "1.98-1.14", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "bitops", + "methods" + ], + "Hash": "47f648d288079d0c696804ad4e55197e" + }, "Rcpp": { "Package": "Rcpp", "Version": "1.0.12", @@ -190,6 +202,13 @@ ], "Hash": "543776ae6848fde2f48ff3816d0628bc" }, + "bitops": { + "Package": "bitops", + "Version": "1.0-7", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "b7d8d8ee39869c18d8846a184dd8a1af" + }, "brew": { "Package": "brew", "Version": "1.0-10", From be8acfe4336725526622c9421dd9f0a1ade02527 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Wed, 26 Jun 2024 12:18:09 +0200 Subject: [PATCH 30/35] :heavy_plus_sign: track devtools dependency in dev profile --- DESCRIPTION | 3 +- renv/profiles/dev/renv.lock | 195 ++++++++++++++++++++++++++++++++++++ 2 files changed, 197 insertions(+), 1 deletion(-) diff --git a/DESCRIPTION b/DESCRIPTION index 288c710..a67a2a1 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -42,7 +42,8 @@ Config/renv/profiles/dev/dependencies: roxygen2, styler, testthat, - usethis + usethis, + devtools Imports: jsonlite, httr, diff --git a/renv/profiles/dev/renv.lock b/renv/profiles/dev/renv.lock index bbf37ad..010d828 100644 --- a/renv/profiles/dev/renv.lock +++ b/renv/profiles/dev/renv.lock @@ -439,6 +439,40 @@ ], "Hash": "99b79fcbd6c4d1ce087f5c5c758b384f" }, + "devtools": { + "Package": "devtools", + "Version": "2.4.5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "desc", + "ellipsis", + "fs", + "lifecycle", + "memoise", + "miniUI", + "pkgbuild", + "pkgdown", + "pkgload", + "profvis", + "rcmdcheck", + "remotes", + "rlang", + "roxygen2", + "rversions", + "sessioninfo", + "stats", + "testthat", + "tools", + "urlchecker", + "usethis", + "utils", + "withr" + ], + "Hash": "ea5bc8b4a6a01e4f12d98b58329930bb" + }, "diffobj": { "Package": "diffobj", "Version": "0.3.5", @@ -547,6 +581,17 @@ ], "Hash": "f5a648116dfa343b1c76c40d33a8e834" }, + "ellipsis": { + "Package": "ellipsis", + "Version": "0.3.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "rlang" + ], + "Hash": "bb0eec2fe32e88d9e2836c2f73ea2077" + }, "evaluate": { "Package": "evaluate", "Version": "0.24.0", @@ -842,6 +887,21 @@ ], "Hash": "04291cc45198225444a397606810ac37" }, + "httpuv": { + "Package": "httpuv", + "Version": "1.6.15", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "Rcpp", + "later", + "promises", + "utils" + ], + "Hash": "d55aa087c47a63ead0f6fc10f8fa1ee0" + }, "httr": { "Package": "httr", "Version": "1.4.7", @@ -953,6 +1013,17 @@ ], "Hash": "b64ec208ac5bc1852b285f665d6368b3" }, + "later": { + "Package": "later", + "Version": "1.3.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "Rcpp", + "rlang" + ], + "Hash": "a3e051d405326b8b0012377434c62b37" + }, "lattice": { "Package": "lattice", "Version": "0.22-6", @@ -1116,6 +1187,18 @@ ], "Hash": "18e9c28c1d3ca1560ce30658b22ce104" }, + "miniUI": { + "Package": "miniUI", + "Version": "0.1.1.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "htmltools", + "shiny", + "utils" + ], + "Hash": "fec5f52652d60615fdb3957b3d74324a" + }, "munsell": { "Package": "munsell", "Version": "0.5.1", @@ -1314,6 +1397,21 @@ ], "Hash": "0c90a7d71988856bad2a2a45dd871bb9" }, + "profvis": { + "Package": "profvis", + "Version": "0.3.8", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "htmlwidgets", + "purrr", + "rlang", + "stringr", + "vctrs" + ], + "Hash": "aa5a3864397ce6ae03458f98618395a1" + }, "progress": { "Package": "progress", "Version": "1.2.3", @@ -1340,6 +1438,22 @@ ], "Hash": "ac50c4ffa8f6a46580dd4d7813add3c4" }, + "promises": { + "Package": "promises", + "Version": "1.3.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R6", + "Rcpp", + "fastmap", + "later", + "magrittr", + "rlang", + "stats" + ], + "Hash": "434cd5388a3979e74be5c219bcd6e77d" + }, "proxy": { "Package": "proxy", "Version": "0.4-27", @@ -1597,6 +1711,18 @@ "Repository": "CRAN", "Hash": "96710351d642b70e8f02ddeb237c46a7" }, + "rversions": { + "Package": "rversions", + "Version": "2.1.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "curl", + "utils", + "xml2" + ], + "Hash": "a9881dfed103e83f9de151dc17002cd1" + }, "s2": { "Package": "s2", "Version": "1.1.6", @@ -1679,6 +1805,39 @@ ], "Hash": "ad57b543f7c3fca05213ba78ff63df9b" }, + "shiny": { + "Package": "shiny", + "Version": "1.8.1.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "bslib", + "cachem", + "commonmark", + "crayon", + "fastmap", + "fontawesome", + "glue", + "grDevices", + "htmltools", + "httpuv", + "jsonlite", + "later", + "lifecycle", + "methods", + "mime", + "promises", + "rlang", + "sourcetools", + "tools", + "utils", + "withr", + "xtable" + ], + "Hash": "54b26646816af9960a4c64d8ceec75d6" + }, "slippymath": { "Package": "slippymath", "Version": "0.3.1", @@ -1693,6 +1852,16 @@ ], "Hash": "abdaf883004a4791545655d79ca3aae0" }, + "sourcetools": { + "Package": "sourcetools", + "Version": "0.1.7-1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "5f5a7629f956619d519205ec475fe647" + }, "sp": { "Package": "sp", "Version": "2.1-4", @@ -1921,6 +2090,20 @@ ], "Hash": "119d19da480e873f72241ff6962ffd83" }, + "urlchecker": { + "Package": "urlchecker", + "Version": "1.0.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "curl", + "tools", + "xml2" + ], + "Hash": "409328b8e1253c8d729a7836fe7f7a16" + }, "urltools": { "Package": "urltools", "Version": "1.7.3", @@ -2092,6 +2275,18 @@ ], "Hash": "423df1e86d5533fcb73c6b02b4923b49" }, + "xtable": { + "Package": "xtable", + "Version": "1.8-4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "stats", + "utils" + ], + "Hash": "b8acdf8af494d9ec19ccb2481a9b11c2" + }, "yaml": { "Package": "yaml", "Version": "2.3.8", From d65e82b1ba89a9d2d77f43f6b674d4ee0887e92c Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Wed, 26 Jun 2024 12:52:16 +0200 Subject: [PATCH 31/35] :memo: work on get started vignette --- R/breeds.R | 2 - R/genotypes.R | 2 +- R/supported_chips.R | 2 +- R/variants.R | 2 +- man/get_smarter_breeds.Rd | 2 - man/get_smarter_genotypes.Rd | 2 +- man/get_smarter_supportedchips.Rd | 2 +- man/get_smarter_variants.Rd | 2 +- vignettes/smarterapi.Rmd | 132 ++++++++++++++++++++++++++---- 9 files changed, 122 insertions(+), 26 deletions(-) diff --git a/R/breeds.R b/R/breeds.R index e11181c..8305b80 100644 --- a/R/breeds.R +++ b/R/breeds.R @@ -23,9 +23,7 @@ #' #' selected_breeds <- get_smarter_breeds(query = list(search = "mer")) #' \dontrun{ -#' #' all_breeds <- get_smarter_breeds() -#' #' sheep_breeds <- get_smarter_breeds(query = list(species = "Sheep")) #' } get_smarter_breeds <- function(query = list()) { diff --git a/R/genotypes.R b/R/genotypes.R index 445925f..5b86a3a 100644 --- a/R/genotypes.R +++ b/R/genotypes.R @@ -1,5 +1,5 @@ -#' Get SMARTER genotypes +#' Get SMARTER Genotypes #' #' Retrieve genotypes data from SMARTER database. Only information about the #' supported assemblies are returned (see \code{\link{get_smarter_info}} for diff --git a/R/supported_chips.R b/R/supported_chips.R index dd93428..472ecbe 100644 --- a/R/supported_chips.R +++ b/R/supported_chips.R @@ -1,5 +1,5 @@ -#' Get SMARTER supported chips +#' Get SMARTER Supported Chips #' #' Collect information on chip data currently managed in SMARTER database. #' diff --git a/R/variants.R b/R/variants.R index a91c643..47d5700 100644 --- a/R/variants.R +++ b/R/variants.R @@ -1,4 +1,4 @@ -#' Get SMARTER variants +#' Get SMARTER Variants #' #' Retrieve information on SMARTER SNPs. Only information about the supported #' assemblies are returned (see \code{\link{get_smarter_info}} for more diff --git a/man/get_smarter_breeds.Rd b/man/get_smarter_breeds.Rd index 62965fb..67350e4 100644 --- a/man/get_smarter_breeds.Rd +++ b/man/get_smarter_breeds.Rd @@ -32,9 +32,7 @@ selected_breed <- get_smarter_breeds(query = list(code = "TEX")) selected_breeds <- get_smarter_breeds(query = list(search = "mer")) \dontrun{ - all_breeds <- get_smarter_breeds() - sheep_breeds <- get_smarter_breeds(query = list(species = "Sheep")) } } diff --git a/man/get_smarter_genotypes.Rd b/man/get_smarter_genotypes.Rd index 180631f..9714766 100644 --- a/man/get_smarter_genotypes.Rd +++ b/man/get_smarter_genotypes.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/genotypes.R \name{get_smarter_genotypes} \alias{get_smarter_genotypes} -\title{Get SMARTER genotypes} +\title{Get SMARTER Genotypes} \usage{ get_smarter_genotypes(species, assembly, dest_path = NULL) } diff --git a/man/get_smarter_supportedchips.Rd b/man/get_smarter_supportedchips.Rd index 70a0b6a..5341bae 100644 --- a/man/get_smarter_supportedchips.Rd +++ b/man/get_smarter_supportedchips.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/supported_chips.R \name{get_smarter_supportedchips} \alias{get_smarter_supportedchips} -\title{Get SMARTER supported chips} +\title{Get SMARTER Supported Chips} \usage{ get_smarter_supportedchips(query = list()) } diff --git a/man/get_smarter_variants.Rd b/man/get_smarter_variants.Rd index 4db2940..f28522b 100644 --- a/man/get_smarter_variants.Rd +++ b/man/get_smarter_variants.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/variants.R \name{get_smarter_variants} \alias{get_smarter_variants} -\title{Get SMARTER variants} +\title{Get SMARTER Variants} \usage{ get_smarter_variants(species, assembly, query = list()) } diff --git a/vignettes/smarterapi.Rmd b/vignettes/smarterapi.Rmd index 78ee521..3b0100c 100644 --- a/vignettes/smarterapi.Rmd +++ b/vignettes/smarterapi.Rmd @@ -17,8 +17,7 @@ knitr::opts_chunk$set( **smarterapi** is an R package which enable to browse the [SMARTER backend API](https://webserver.ibba.cnr.it/smarter-api/docs/) and collect smarter data. In this R package, functions to deal with the different -API endpoints are implemented. In this vignette, we assume you have configured -properly this function in order to use your SMARTER credentials. +API endpoints are implemented. ## Getting started @@ -58,8 +57,8 @@ $ tree -L 2 SHEEP/ SHEEP/ └── OAR3 ├── archive - ├── SMARTER-OA-OAR3-top-0.4.4.md5 - └── SMARTER-OA-OAR3-top-0.4.4.zip + ├── SMARTER-OA-OAR3-top-0.4.10.md5 + └── SMARTER-OA-OAR3-top-0.4.10.zip ``` You have to ensure that you are working with the same version, for both metadata @@ -72,12 +71,12 @@ file. ## Querying SMARTER API The `smarterapi` package is structured to handle *requests/responses* to the -SMARTER API backend using R packages like `httr`, `jsonlite`, handling token -*authentication* through helper functions. In general, each functions accepts -a `query=list()` parameter, in which pass addtional parameter to the API endpoint +SMARTER API backend using R packages like `httr` and `jsonlite`. +In general, each functions accepts +a `query=list()` parameter, in which pass additional parameter to the API endpoint in order to filter results matching query. Some functions like `get_smarter_samples()` or `get_smarter_variants()` requires additional parameters like the `species` or -the `assembly` version. Each function, in general will returns results in a +the `assembly` version. Each function in general will return results in a `data.frame`: you could filter out data using `dplyr` or with standard R methods or you could filter data *directly* by submitting a proper query to the API. Please refer to the proper documentation to understand @@ -106,17 +105,22 @@ endpoint. For example, to extract only *background* genotypes datasets (data generated before SMARTER project) you have to pass the proper `type` to the `query` argument. Since the `query` argument is a list, you can pass multiple parameters at once. For parameters which supports -arrays, you could supply the same parameters multiple times: each one will be passed -through the API endpoint +arrays, you could supply the same parameter name multiple times: +each one will be passed through the API endpoint ```{r} +# select all genotypes datasets made before SMARTER project background_genotypes <- get_smarter_datasets( query = list(type = "background", type = "genotypes")) # same as before, but limiting to goat species background_goat_genotypes <- get_smarter_datasets( - query = list(type = "background", type = "genotypes", - species = "Goat")) + query = list( + type = "background", + type = "genotypes", + species = "Goat" + ) +) ``` Take some time to explore the dataframe columns. There are two importants fields, @@ -134,12 +138,13 @@ So collect the *adaptmap* samples, we can provide the proper `dataset_id` to the `get_smarter_samples()` method. We can add additional parameters, like country: ```{r eval=FALSE} -adatpmap_id <- background_goat_genotypes["_id.$oid"][1] +# select the adaptmap id, which is in the first row of the dataframe +adatpmap_id <- background_goat_genotypes["_id.$oid"][1, 1] adaptmap_goats <- get_smarter_samples( species = "Goat", query = list(dataset = adatpmap_id, country = "Italy")) ``` -The previous case is quite easy, there was only one dataset in +The previous case is quite easy, we want only one dataset in `background_goat_genotypes` dataframe, so we can simply paste this value in the `get_smarter_samples` query. But how we can handle multiple datasets? we can transform the proper column in a list and then renaming it: @@ -159,6 +164,34 @@ query <- append(datasets, breeds) foreground_goat_samples <- get_smarter_samples(species = "Goat", query = query) ``` +We can also use the `get_smarter_datasets()` function to do a reverse selection +of our samples, for example to get all the samples which are not in one or more +datasets: suppose, for example, to collect all samples which are not in the +*isheep* datasets: + +```{r eval=FALSE} +# collect all foreground datasets having "isheep" in their name +isheep_datasets <- get_smarter_datasets( + query = list( + type = "foreground", + type = "genotypes", + search = "isheep" + ) +) + +# collect ids for isheep datasets +isheep_ids <- isheep_datasets$"_id.$oid" + +# collect all foreground samples +foreground_samples <- get_smarter_samples( + "Sheep", query = list(type = "foreground") +) + +# get rid of isheep_samples +filtered_samples <- foreground_samples %>% + dplyr::filter(!`dataset_id.$oid` %in% isheep_ids) +``` + The last selection example relies on dataset file contents: if you remember the name of the file submitted in the dataset, you can search by datasets *content*: @@ -288,6 +321,73 @@ smarter_goats <- get_smarter_samples( After that, you have to filter out the `smarter_goats` dataframe in order to collect only the samples you want. +## Refer samples to their original publication + +Suppose you want to refer the samples to the original publication the come from: +in the *dataset* dataframe we have a `doi` column in which the *publication DOI* +is stored. You can use this information to collect publication information, but +you need to merge *samples* and *datasets* dataframes in order to refer properly +the samples to the publication they come from. Here is an example of how to do: + +```{r eval=FALSE} +# collect all the genotypes datasets +datasets <- get_smarter_datasets( + query = list( + species = "Sheep", + type = "genotypes" + ) +) + +# collect all the samples +samples <- get_smarter_samples( + species = "Sheep", +) + +# merge datasets and samples using dplyr +samples_with_doi <- dplyr::inner_join( + datasets, + samples, + by = dplyr::join_by(`_id.$oid` == `dataset_id.$oid`) + ) %>% dplyr::select( + smarter_id, + breed_code, + breed.y, + doi + ) %>% dplyr::filter( + !is.na(doi) + ) + +# count how many samples come from each publication +samples_with_doi %>% + group_by(doi) %>% + summarise(counts = n()) +``` + + +## Collect genotypes + +The *genotypes* can't be retrieved using the *smarter-api* because they are +available from the [public FTP](ftp://webserver.ibba.cnr.it/smarter/). You need +to download the files using an FTP client like [FileZilla](https://filezilla-project.org/) +or [lftp](https://lftp.yar.ru/) and then +extract the genotypes using [plink](https://www.cog-genomics.org/plink/). +In alternative, is it possible to download the genotypes using the `get_smarter_genotypes` +method of this package. This method will download the genotypes from the FTP +for the current releases of the selected *species* and *assembly* and will +return the destination path of the downloaded archive: + +```{r eval=FALSE} +downloaded_archive <- get_smarter_genotypes( + "Sheep", + "OAR3" +) +``` + +This method will download the genotypes in the current working directory, or +in the directory specified in the `dest_path` argument. The genotypes will be stored +in a compressed `.zip` file, which need to be de-compressed in order to be +used with [plink](https://www.cog-genomics.org/plink/). + ## Subset genotypes relying samples After you have identified the samples of your interest, @@ -324,8 +424,8 @@ And finally you can call plink and providing your sample list: ```bash plink --chr-set 26 no-xy no-mt --allow-no-sex \ - --bfile SMARTER-OA-OAR3-top-0.4.4 \ + --bfile SMARTER-OA-OAR3-top-0.4.10 \ --keep selected_sheeps.txt \ - --out selected_sheeps-OAR3-top-0.4.4 \ + --out selected_sheeps-OAR3-top-0.4.10 \ --make-bed ``` From 8480d9a1fafbf79dd9ecea51257e482ab18bb254 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Wed, 26 Jun 2024 16:48:20 +0200 Subject: [PATCH 32/35] :memo: update variants vignette --- vignettes/variants.Rmd | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/vignettes/variants.Rmd b/vignettes/variants.Rmd index b53cc7b..9d17cd3 100644 --- a/vignettes/variants.Rmd +++ b/vignettes/variants.Rmd @@ -68,7 +68,7 @@ snp <- get_smarter_variants( ) ``` -```{r echo=FALSE} +```{r echo=FALSE, warning=FALSE} pander::pander( subset( snp, @@ -106,8 +106,8 @@ pander::pander( Is `T/C` on the *forward* strand of *OAR3*: this means that the reversed probe is aligned to the genome (as you could infer from the `bottom` *illumina strand* attribute -of this SNP.). Variants in the SMARTER-database are converted using the **illumina top** -coding convenction, so you will find this SNP as `A/G` in the SMARTER-database while +of this SNP). Genotypes in the SMARTER-database are converted using the **illumina top** +coding convention, so you will find this SNP as `A/G` in the SMARTER-database while on the reference sequence it's `T/C`. ## Fetch Variants by region @@ -119,18 +119,23 @@ format, for example: variants <- get_smarter_variants( species = "Goat", assembly = "ARS1", - query = list(region = "1:1-100000") + query = list( + region = "1:1-100000" + ) ) ``` ```{r echo=FALSE} +variants$chip_name <- sapply(variants$chip_name, function(x) paste(x, collapse = ",")) + pander::pander( subset( - snp, + variants, select = -c( `_id.$oid`, - `chip_name`, - `sequence.IlluminaOvineHDSNP` + `sequence.AffymetrixAxiomGoatv2`, + `sequence.IlluminaGoatSNP50`, + `probesets` ) ) ) From b58931bf72b47bc369abde8db5f75a39071d9364 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Thu, 27 Jun 2024 21:11:58 +0200 Subject: [PATCH 33/35] :sparkles: filter samples with polygons objects --- DESCRIPTION | 3 +- R/geojson.R | 64 ++++++++++++++++++++++++++++++++++++- man/get_smarter_geojson.Rd | 4 ++- renv/profiles/dev/renv.lock | 56 ++++++++++++++++++++++++++++++++ 4 files changed, 124 insertions(+), 3 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index a67a2a1..2ddfe97 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -54,7 +54,8 @@ Imports: logger, dplyr, tidyr, - sf + sf, + geojsonsf URL: https://cnr-ibba.github.io/r-smarter-api/ BugReports: https://github.com/cnr-ibba/r-smarter-api/issues VignetteBuilder: knitr diff --git a/R/geojson.R b/R/geojson.R index d19f4a6..7303f16 100644 --- a/R/geojson.R +++ b/R/geojson.R @@ -6,6 +6,7 @@ #' simple features. #' #' @inheritParams get_smarter_samples +#' @param polygons a sf object with polygons to filter the samples #' #' @return a sf data object #' @export @@ -38,12 +39,13 @@ #' ) #' } # nolint end -get_smarter_geojson <- function(species, query = list()) { +get_smarter_geojson <- function(species, query = list(), polygons = NULL) { logger::log_info("Get data from geojson endpoint") # mind that species is lowercase in endpoint url species <- tolower(species) + # construct the url url <- httr::modify_url( smarterapi_globals$base_url, path = sprintf( @@ -51,6 +53,16 @@ get_smarter_geojson <- function(species, query = list()) { ) ) + # check if polygons are provided, if yes call another function and exit + if (!is.null(polygons)) { + if (!inherits(polygons, "sf")) { + stop("polygons must be a sf object", call. = FALSE) + } else { + # call an helper function with a post method + return(get_within_polygon(url, polygons, query)) + } + } + # in this request, we add the token to the request header section resp <- httr::GET( url, @@ -71,3 +83,53 @@ get_smarter_geojson <- function(species, query = list()) { return(data) } + + +get_within_polygon <- function(url, polygons, query = list()) { + # transform the polygons into a geojson object + feature_list <- geojsonsf::sf_geojson(polygons, atomise = TRUE) + + # for the results + data <- list() + + for (i in seq_along(feature_list)) { + resp = httr::POST( + url = url, + query = query, + body = jsonlite::toJSON( + list(geo_within_polygon = jsonlite::fromJSON(feature_list[i])), + pretty = TRUE, + auto_unbox = TRUE + ), + httr::content_type_json(), + smarterapi_globals$user_agent + ) + + # check errors: SMARTER-backend is supposed to return JSON objects + if (httr::http_type(resp) != "application/json") { + stop("API did not return json", call. = FALSE) + } + + data[[i]] <- sf::read_sf( + httr::content(resp, "text", encoding = "utf-8") + ) + } + + logger::log_info("Done!") + + # Get a list of all unique column names + all_columns <- unique(unlist(lapply(data, colnames))) + + # Standardize the columns across all data frames + standardized_data <- lapply(data, function(df) { + # Add missing columns with NA + missing_cols <- setdiff(all_columns, colnames(df)) + df[missing_cols] <- NA + return(df) + }) + + # Combine all standardized sf objects into a single sf object + data <- do.call(rbind, standardized_data) + + return(data) +} diff --git a/man/get_smarter_geojson.Rd b/man/get_smarter_geojson.Rd index 1980719..5b413d0 100644 --- a/man/get_smarter_geojson.Rd +++ b/man/get_smarter_geojson.Rd @@ -4,12 +4,14 @@ \alias{get_smarter_geojson} \title{Get SMARTER GeoJSON Samples} \usage{ -get_smarter_geojson(species, query = list()) +get_smarter_geojson(species, query = list(), polygons = NULL) } \arguments{ \item{species}{a smarter species ("Goat", "Sheep")} \item{query}{a \code{list} of query arguments} + +\item{polygons}{a sf object with polygons to filter the samples} } \value{ a sf data object diff --git a/renv/profiles/dev/renv.lock b/renv/profiles/dev/renv.lock index 010d828..08a58c9 100644 --- a/renv/profiles/dev/renv.lock +++ b/renv/profiles/dev/renv.lock @@ -705,6 +705,31 @@ ], "Hash": "4d43570de08ab49ba86bb2ccb6fe117d" }, + "geojsonsf": { + "Package": "geojsonsf", + "Version": "2.0.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "Rcpp", + "geometries", + "jsonify", + "rapidjsonr", + "sfheaders" + ], + "Hash": "8d077646c6713838233e8710910ef92e" + }, + "geometries": { + "Package": "geometries", + "Version": "0.2.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "Rcpp" + ], + "Hash": "a722b946e99fd7a006ab1239c0d1b2bc" + }, "gert": { "Package": "gert", "Version": "2.0.1", @@ -976,6 +1001,18 @@ ], "Hash": "5aab57a3bd297eee1c1d862735972182" }, + "jsonify": { + "Package": "jsonify", + "Version": "1.2.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "Rcpp", + "rapidjsonr" + ], + "Hash": "49a9775e4f8c96c654b6018739067055" + }, "jsonlite": { "Package": "jsonlite", "Version": "1.8.8", @@ -1503,6 +1540,13 @@ ], "Hash": "e3087db406e079a8a2fd87f413918ed3" }, + "rapidjsonr": { + "Package": "rapidjsonr", + "Version": "1.2.0", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "88b9f48c93d17cdb811b54079a6a414f" + }, "rappdirs": { "Package": "rappdirs", "Version": "0.3.3", @@ -1805,6 +1849,18 @@ ], "Hash": "ad57b543f7c3fca05213ba78ff63df9b" }, + "sfheaders": { + "Package": "sfheaders", + "Version": "0.4.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "Rcpp", + "geometries" + ], + "Hash": "d63e904c63deda45f3f9149c7dcf8703" + }, "shiny": { "Package": "shiny", "Version": "1.8.1.1", From 8de2299acdff991597d005d76516d6fd9b2f9e52 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Thu, 27 Jun 2024 21:12:10 +0200 Subject: [PATCH 34/35] :memo: update vignette --- vignettes/geojson.Rmd | 62 ++++++++++++++++++++++++++++++++++++++----- 1 file changed, 55 insertions(+), 7 deletions(-) diff --git a/vignettes/geojson.Rmd b/vignettes/geojson.Rmd index 10e844b..d43ad0f 100644 --- a/vignettes/geojson.Rmd +++ b/vignettes/geojson.Rmd @@ -18,12 +18,13 @@ This vignette explain some tips in order to work and visualize SMARTER data using the [GeoJSON endpoints](https://webserver.ibba.cnr.it/smarter-api/docs/#/GeoJSON): These endpoints in particular retrieve all the samples with GPS coordinates (like using the `locations__exists=TRUE` parameter with the `get_smarter_samples()` -method) and then return results as a *Simple feature*. This could help you doing +method) and then return results as a [Simple Feature](https://r-spatial.github.io/sf/index.html). +This could help you doing spatial queries such as collect samples within a certain area or calculate variables from a raster object. Moreover, is it possible to display data using maps or plots. Here are some libraries used in this vignette you may find useful: -```{r setup} +```{r message=FALSE, setup} library(sf) library(leaflet) library(ggplot2) @@ -37,10 +38,18 @@ library(progress) library(smarterapi) ``` +```{r echo=FALSE, message=FALSE} +# required by this vignette +library(pander) +``` + ## Get data using parameters You can collect GeoJSON data using parameters, like using the `get_smarter_samples()` -function. For example, try to collect data for the *Sheep hapmap background* dataset: +function. This function will parse the GeoJSON data to return a +[Simple Feature](https://r-spatial.github.io/sf/index.html) object, which is a +tibble object with a geometry column. +For example, try to collect data for the *Sheep hapmap background* dataset: ```{r} hapmap_dataset <- get_smarter_datasets(query = list( @@ -55,9 +64,20 @@ hapmap_data <- get_smarter_geojson(species = "Sheep", query = list( )) ``` +Here is a preview of the first rows of the `hapmap_data` object: + +```{r echo=FALSE} +pander::pander( + subset( + head(hapmap_data), + select = -c(dataset) + ) +) +``` + ## Filter data using spatial queries -An alternative approach in selecting samples expoits *spatial queries*. In this +An alternative approach in selecting samples exploits *spatial queries*. In this example, we imported the goat dataset as [geojson](https://en.wikipedia.org/wiki/GeoJSON) file into [qgis](https://www.qgis.org/en/site/). Then we created two *polygons* features in correspondance of the samples we want to collect using GPS coordinates @@ -78,9 +98,33 @@ sel_logical <- lengths(sel_sgbp) > 0 selected_goats <- goat_data[sel_logical, ] ``` +The same query could be done using the `get_smarter_geojson()` function and +providing the polygons as an argument: + +```{r eval=FALSE} +selected_goats <- get_smarter_geojson( + "Goat", + query = list(type = "background"), + polygons = polygons +) +``` + +This means that you can also provide any `sf` object as a polygon argument. +Here we select by country, but using spatial queries: + +```{r eval=FALSE} +italy <- rnaturalearth::ne_countries(scale = "medium", returnclass = "sf") %>% + dplyr::filter(name == "Italy") +italy_goats <- get_smarter_geojson( + "Goat", + query = list(type = "background"), + polygons = italy +) +``` + ## Convert from MULTIPOINTS to POINT -The `get_smarter_geojson()` methods returns a `sf()` *MULTIPOINTS* objects since +The `get_smarter_geojson()` methods returns a `sf` *MULTIPOINTS* objects since multiple locations could be collected for each animal, for example for *transhumant* samples. However, for simplicity, we can focus our analyses using only one GPS coordinate, transforming this *MULTIPOINTS* object into a *POINT* @@ -103,9 +147,13 @@ derive the countries from the `rnaturalearth` package, then we will zoom the plot to the selected points of the previous example: ```{r} +# determine a bounding box around our samples bbox <- sf::st_bbox(hapmap_data) + +# collect the world countries as sf world <- rnaturalearth::ne_countries(scale = "medium", returnclass = "sf") +# plot the data: use the bounding box to zoom the plot on our samples ggplot2::ggplot() + ggplot2::geom_sf(data = world, fill = "antiquewhite") + ggplot2::geom_sf(data = hapmap_data, color = "blue", size = 5) + @@ -128,10 +176,10 @@ introduction to `sf` and `ggplot2`. Data could be visualized in an interactive way using *R* `leaflet` library: -```{r eval=FALSE} +```{r} leaflet::leaflet( data = hapmap_data, - options = leaflet::leafletOptions(minZoom = 5, maxZoom = 8)) %>% + options = leaflet::leafletOptions(minZoom = 5, maxZoom = 10)) %>% leaflet::addTiles() %>% leaflet::addMarkers( clusterOptions = leaflet::markerClusterOptions(), label = ~smarter_id From 346398acf55dd2826483216bf33b4152b12478a9 Mon Sep 17 00:00:00 2001 From: Paolo Cozzi Date: Fri, 28 Jun 2024 10:33:40 +0200 Subject: [PATCH 35/35] :rotating_light: solve warning raised by lintr --- R/geojson.R | 2 +- vignettes/geojson.Rmd | 29 +++++++++++++------- vignettes/smarterapi.Rmd | 59 +++++++++++++++++++++++----------------- vignettes/variants.Rmd | 7 +++-- 4 files changed, 59 insertions(+), 38 deletions(-) diff --git a/R/geojson.R b/R/geojson.R index 7303f16..562aba0 100644 --- a/R/geojson.R +++ b/R/geojson.R @@ -93,7 +93,7 @@ get_within_polygon <- function(url, polygons, query = list()) { data <- list() for (i in seq_along(feature_list)) { - resp = httr::POST( + resp <- httr::POST( url = url, query = query, body = jsonlite::toJSON( diff --git a/vignettes/geojson.Rmd b/vignettes/geojson.Rmd index d43ad0f..3d6e34c 100644 --- a/vignettes/geojson.Rmd +++ b/vignettes/geojson.Rmd @@ -103,7 +103,7 @@ providing the polygons as an argument: ```{r eval=FALSE} selected_goats <- get_smarter_geojson( - "Goat", + "Goat", query = list(type = "background"), polygons = polygons ) @@ -116,8 +116,8 @@ Here we select by country, but using spatial queries: italy <- rnaturalearth::ne_countries(scale = "medium", returnclass = "sf") %>% dplyr::filter(name == "Italy") italy_goats <- get_smarter_geojson( - "Goat", - query = list(type = "background"), + "Goat", + query = list(type = "background"), polygons = italy ) ``` @@ -158,11 +158,17 @@ ggplot2::ggplot() + ggplot2::geom_sf(data = world, fill = "antiquewhite") + ggplot2::geom_sf(data = hapmap_data, color = "blue", size = 5) + ggspatial::annotation_scale(location = "bl", width_hint = 0.5) + - ggspatial::annotation_north_arrow(location = "bl", which_north = "true", - pad_x = ggplot2::unit(0.75, "in"), pad_y = ggplot2::unit(0.5, "in"), - style = ggspatial::north_arrow_fancy_orienteering) + + ggspatial::annotation_north_arrow( + location = "bl", + which_north = "true", + pad_x = ggplot2::unit(0.75, "in"), + pad_y = ggplot2::unit(0.5, "in"), + style = ggspatial::north_arrow_fancy_orienteering + ) + ggspatial::coord_sf( - xlim = c(bbox$xmin, bbox$xmax), ylim = c(bbox$ymin, bbox$ymax)) + + xlim = c(bbox$xmin, bbox$xmax), + ylim = c(bbox$ymin, bbox$ymax) + ) + ggplot2::theme_bw() + ggplot2::theme(plot.title = ggplot2::element_text(hjust = 0.5)) + ggplot2::xlab("longitude") + ggplot2::ylab("latitude") + @@ -179,7 +185,8 @@ Data could be visualized in an interactive way using *R* `leaflet` library: ```{r} leaflet::leaflet( data = hapmap_data, - options = leaflet::leafletOptions(minZoom = 5, maxZoom = 10)) %>% + options = leaflet::leafletOptions(minZoom = 5, maxZoom = 10) +) %>% leaflet::addTiles() %>% leaflet::addMarkers( clusterOptions = leaflet::markerClusterOptions(), label = ~smarter_id @@ -228,13 +235,15 @@ into terra *SpatialVectors*: worldclim_bio <- geodata::worldclim_global( var = "bio", res = 10, - path = tempdir()) + path = tempdir() +) bio_data <- terra::extract(worldclim_bio, terra::vect(hapmap_data)) worldclim_elev <- geodata::worldclim_global( var = "elev", res = 10, - path = tempdir()) + path = tempdir() +) elev_data <- terra::extract(worldclim_elev, terra::vect(hapmap_data)) hapmap_data_worldclim <- cbind(hapmap_data, merge(elev_data, bio_data)) diff --git a/vignettes/smarterapi.Rmd b/vignettes/smarterapi.Rmd index 3b0100c..b3e2621 100644 --- a/vignettes/smarterapi.Rmd +++ b/vignettes/smarterapi.Rmd @@ -111,7 +111,8 @@ each one will be passed through the API endpoint ```{r} # select all genotypes datasets made before SMARTER project background_genotypes <- get_smarter_datasets( - query = list(type = "background", type = "genotypes")) + query = list(type = "background", type = "genotypes") +) # same as before, but limiting to goat species background_goat_genotypes <- get_smarter_datasets( @@ -141,7 +142,8 @@ So collect the *adaptmap* samples, we can provide the proper `dataset_id` to the # select the adaptmap id, which is in the first row of the dataframe adatpmap_id <- background_goat_genotypes["_id.$oid"][1, 1] adaptmap_goats <- get_smarter_samples( - species = "Goat", query = list(dataset = adatpmap_id, country = "Italy")) + species = "Goat", query = list(dataset = adatpmap_id, country = "Italy") +) ``` The previous case is quite easy, we want only one dataset in @@ -152,7 +154,8 @@ we can transform the proper column in a list and then renaming it: ```{r eval=FALSE} # get more datasets foreground_goat_genotypes <- get_smarter_datasets( - query = list(type = "genotypes", type = "foreground", species = "Goat")) + query = list(type = "genotypes", type = "foreground", species = "Goat") +) # construct the query arguments datasets <- as.list(foreground_goat_genotypes$"_id.$oid") @@ -217,8 +220,12 @@ search parameter with the `get_smarter_breeds()` which model the endpoint: ```{r} -breeds <- get_smarter_breeds(query = list( - species = "Sheep", search = "de france")) +breeds <- get_smarter_breeds( + query = list( + species = "Sheep", + search = "de france" + ) +) ``` ```{r echo=FALSE} @@ -228,8 +235,12 @@ pander::pander(subset(breeds, select = c("name", "code"))) Search for breeds can return multiple values, for example: ```{r} -breeds <- get_smarter_breeds(query = list( - species = "Sheep", search = "merino")) +breeds <- get_smarter_breeds( + query = list( + species = "Sheep", + search = "merino" + ) +) ``` ```{r echo=FALSE} @@ -333,7 +344,7 @@ the samples to the publication they come from. Here is an example of how to do: # collect all the genotypes datasets datasets <- get_smarter_datasets( query = list( - species = "Sheep", + species = "Sheep", type = "genotypes" ) ) @@ -345,21 +356,16 @@ samples <- get_smarter_samples( # merge datasets and samples using dplyr samples_with_doi <- dplyr::inner_join( - datasets, - samples, - by = dplyr::join_by(`_id.$oid` == `dataset_id.$oid`) - ) %>% dplyr::select( - smarter_id, - breed_code, - breed.y, - doi - ) %>% dplyr::filter( - !is.na(doi) - ) + datasets, + samples, + by = dplyr::join_by(`_id.$oid` == `dataset_id.$oid`) +) %>% + dplyr::select(smarter_id, breed_code, breed.y, doi) %>% + dplyr::filter(!is.na(doi)) # count how many samples come from each publication -samples_with_doi %>% - group_by(doi) %>% +samples_with_doi %>% + group_by(doi) %>% summarise(counts = n()) ``` @@ -378,7 +384,7 @@ return the destination path of the downloaded archive: ```{r eval=FALSE} downloaded_archive <- get_smarter_genotypes( - "Sheep", + "Sheep", "OAR3" ) ``` @@ -397,8 +403,10 @@ file with *breed_code* and *smarter_id* as columns. For example, using the sampl selected above and *dplyr*: ```{r eval=FALSE} -selected_sheeps_ids <- italian_background_sheeps %>% dplyr::select( - "breed_code", "smarter_id") +selected_sheeps_ids <- italian_background_sheeps %>% + dplyr::select( + "breed_code", "smarter_id" + ) write.table( selected_sheeps_ids, @@ -406,7 +414,8 @@ write.table( quote = FALSE, sep = "\t", row.names = FALSE, - col.names = FALSE) + col.names = FALSE +) ``` Next, you need to collect the proper *plink options* in order to not loose diff --git a/vignettes/variants.Rmd b/vignettes/variants.Rmd index 9d17cd3..1afbc9b 100644 --- a/vignettes/variants.Rmd +++ b/vignettes/variants.Rmd @@ -101,7 +101,8 @@ snp <- get_smarter_variants( ```{r echo=FALSE} pander::pander( - subset(snp, select = -c(`_id.$oid`, `sequence.IlluminaOvineHDSNP`))) + subset(snp, select = -c(`_id.$oid`, `sequence.IlluminaOvineHDSNP`)) +) ``` Is `T/C` on the *forward* strand of *OAR3*: this means that the reversed probe is @@ -126,7 +127,9 @@ variants <- get_smarter_variants( ``` ```{r echo=FALSE} -variants$chip_name <- sapply(variants$chip_name, function(x) paste(x, collapse = ",")) +variants$chip_name <- sapply( + variants$chip_name, function(x) paste(x, collapse = ",") +) pander::pander( subset(