From bf100c06e593b96243491d29ebf30d3818a5366d Mon Sep 17 00:00:00 2001 From: al-obrien Date: Tue, 14 Nov 2023 17:36:13 -0700 Subject: [PATCH] Update README and NEWS with new changes --- NEWS.md | 7 +++++++ README.Rmd | 9 ++++----- README.md | 13 +++++++------ 3 files changed, 18 insertions(+), 11 deletions(-) diff --git a/NEWS.md b/NEWS.md index 2a52886..a85d1c4 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,5 +1,12 @@ # rosv (development version) +* Upgraded to {httr2} 1.0.0 +* Upgraded tests with {httrtest2} 1.0.0 +* Implemented pagination as core functionality in low-level functions (e.g. `RosvQueryBatch()`) +* Remove page_token parameter from mid-level functions, all handled at low-level automatically. +* Use `httr2::req_perform_sequential()` for the `RosvVulns()` methods to get build-in helpers not +available in `purrr::map()` alone. + # rosv 0.4.2 * Initial CRAN release diff --git a/README.Rmd b/README.Rmd index 0a9a712..7d34795 100644 --- a/README.Rmd +++ b/README.Rmd @@ -26,7 +26,7 @@ knitr::opts_chunk$set( ## Overview -The {rosv} package is an API client to the [Open Source Vulnerability (OSV) database](https://osv.dev/). Both high and low level functions are available to query the database for vulnerabilities in package repositories across various open source ecosystems such as CRAN, Bioconductor, PyPI, and many more. Queries made against the OSV database are useful to check for package vulnerabilities (including by specific versions) enumerated in package management files such as `requirements.txt` (Python) and `renv.lock` (R). +The {rosv} package is an API client to the [Open Source Vulnerability (OSV) database](https://osv.dev/). Both high and low level functions are available to query the database for vulnerabilities in package repositories across various open source ecosystems such as CRAN, Bioconductor, PyPI, and many more. Queries made against the OSV database are useful to check for package vulnerabilities (including by specific versions) enumerated in package management files such as `requirements.txt` (Python) and `renv.lock` (R). Checking valid query construction, API response pagination, and parsing content are all handled by {rosv}. Various helper functions assist in the administration of [Posit Package Manager](https://packagemanager.posit.co/client/#/) or similar services. Packages can be routinely examined for new vulnerabilities which aide in the creation and updating of curated repositories as well as assigning block lists. @@ -62,7 +62,6 @@ osv_query(c('dask', 'readxl', 'dplyr'), ## Development notes -{rosv} is still a young project. There are plans to extend its use. Currently it uses R6 -classes for its low-level interface to the OSV API. Pagination functionality will be added -once it is offered by {httr2}, which at time of writing is available but experimental. -There are also plans to have more types of returned details and parsing of content. +{rosv} leverages {httr2} and {httrtest2} for its core API client functionality and +uses R6 classes for its low-level interface to the OSV API. There are also plans to have more +types of returned details and parsing of content. diff --git a/README.md b/README.md index 2b5cabe..29d548b 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,9 @@ repositories across various open source ecosystems such as CRAN, Bioconductor, PyPI, and many more. Queries made against the OSV database are useful to check for package vulnerabilities (including by specific versions) enumerated in package management files such as -`requirements.txt` (Python) and `renv.lock` (R). +`requirements.txt` (Python) and `renv.lock` (R). Checking valid query +construction, API response pagination, and parsing content are all +handled by {rosv}. Various helper functions assist in the administration of [Posit Package Manager](https://packagemanager.posit.co/client/#/) or similar services. @@ -67,8 +69,7 @@ osv_query(c('dask', 'readxl', 'dplyr'), ## Development notes -{rosv} is still a young project. There are plans to extend its use. -Currently it uses R6 classes for its low-level interface to the OSV API. -Pagination functionality will be added once it is offered by {httr2}, -which at time of writing is available but experimental. There are also -plans to have more types of returned details and parsing of content. +{rosv} leverages {httr2} and {httrtest2} for its core API client +functionality and uses R6 classes for its low-level interface to the OSV +API. There are also plans to have more types of returned details and +parsing of content.