woodendesc
Get the available packages and their version codes as well as their dependencies from any R repository with unified API.
Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (19.5%) to scientific vocabulary
Keywords
available-packages
available-versions
dependencies
r
unified-api
Last synced: 6 months ago
·
JSON representation
Repository
Get the available packages and their version codes as well as their dependencies from any R repository with unified API.
Basic Info
- Host: GitHub
- Owner: turtletopia
- License: gpl-3.0
- Language: R
- Default Branch: master
- Homepage: https://turtletopia.github.io/woodendesc/
- Size: 18.8 MB
Statistics
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 8
- Releases: 1
Topics
available-packages
available-versions
dependencies
r
unified-api
Created almost 4 years ago
· Last pushed about 1 year ago
Metadata Files
Readme
Changelog
License
README.Rmd
---
output: github_document
---
```{r, include=FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.path = "man/figures/README-",
out.width = "90%"
)
library(woodendesc)
```
# woodendesc
[](https://CRAN.R-project.org/package=woodendesc)
[](https://turtletopia.r-universe.dev)
[](https://github.com/turtletopia/woodendesc/actions)
[](https://app.codecov.io/gh/turtletopia/woodendesc?branch=master)
{woodendesc} strives to provide an unified API to query any R repository for the following data:
* list of available packages,
* version code of any selected package,
* direct dependencies of any selected package.
The package tries to cache as much as possible and reuse existing cache wherever possible to minimize internet usage. Many repositories (CRAN, Bioconductor, R-universe, and local libraries) have custom implementations of their handlers to make use of additional possibilities they present (e.g. previous versions on CRAN or old releases of Bioconductor).
## Installation
```{r install, eval=FALSE}
# Install from CRAN
install.packages("woodendesc")
# Install the development version from GitHub:
# install.packages("devtools")
devtools::install_github("turtletopia/woodendesc")
```
## How to use woodendesc?
Each repository has its dedicated functions for listing available packages, package version, and package dependencies.
A list of available packages is returned as a character vector. An example call returning a list of CRAN packages:
```{r demo_cran_pkgs, cache=TRUE}
library(woodendesc)
# Too many packages to list them all
all_cran_pkgs <- wood_cran_packages()
print(all_cran_pkgs, max = 10)
```
An available package version is returned as a single code. An example call checking the current version of Biobase package on Bioconductor:
```{r demo_bioc_version, cache=TRUE}
wood_bioc_version("Biobase")
```
Dependencies of a package are returned as a data frame with the same set of columns for all calls. An example call for locally installed digest package (dependency of woodendesc):
```{r demo_local_deps, cache=TRUE}
wood_local_dependencies("digest")
```
Note that some repositories store more than just one version of a package (e.g. CRAN and Github). These cases can be distinguished by pluralized `_versions` function name component and they return all version codes instead; a character vector of any length. This is how it works for gglgbtq on Github:
```{r demo_gh_versions, cache=TRUE}
wood_github_versions("gglgbtq", "turtletopia")
```
If a single version code is needed, there's a counterpart that selects the latest version only. The current version of aurrera on Github is:
```{r demo_gh_latest, cache=TRUE}
wood_github_latest("aurrera", "turtletopia")
```
Last, but not least, there are three functions for searching through multiple repositories and collecting the results. Read the documentation for details on how to specify `repos` parameter.
`wood_packages()` collects available packages from the specified repositories and returns unique elements:
```{r demo_wood_packages, cache=TRUE}
wood_packages(repos = c("core", "https://colinfay.me"))
```
`wood_versions()` returns all package versions available on at least one of the specified repositories; may take more than one package:
```{r demo_wood_versions, cache=TRUE}
wood_versions(
c("aurrera", "woodendesc"),
repos = c("local#all", "runiverse@turtletopia", "cran")
)
```
`wood_dependencies()` returns a list of package dependencies, a data frame for each package specified; the first working repository is used for each package, as the dependencies are not supposed to be summable:
```{r demo_wood_deps, cache=TRUE}
wood_dependencies(
c("versionsort", "gglgbtq"),
repos = c("local#all", "runiverse@turtletopia", "cran")
)
```
And if you ever need to clear cache, simply call:
```{r clear_cache}
wood_clear_cache()
```
## End notes
I believe in equal rights and treatment for everybody, regardless of their sexuality, gender identity, skin tone, nationality, and other features beyond human control. Thus, I do not allow woodendesc to be used in any project that promotes hate based on the aforementioned factors.
Owner
- Name: turtletopia
- Login: turtletopia
- Kind: organization
- Location: Poland
- Repositories: 8
- Profile: https://github.com/turtletopia
GitHub Events
Total
- Issues event: 1
- Push event: 17
- Create event: 2
Last Year
- Issues event: 1
- Push event: 17
- Create event: 2
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 18
- Total pull requests: 0
- Average time to close issues: 5 months
- Average time to close pull requests: N/A
- Total issue authors: 1
- Total pull request authors: 0
- Average comments per issue: 0.22
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- ErdaradunGaztea (21)
Pull Request Authors
Top Labels
Issue Labels
new feature (12)
code upgrade (6)
documentation (2)
tests (1)
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- cran 3 last-month
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 1
- Total maintainers: 1
cran.r-project.org: woodendesc
Find Packages and Their Dependencies in Any 'R' Repository
- Homepage: https://github.com/turtletopia/woodendesc
- Documentation: http://cran.r-project.org/web/packages/woodendesc/woodendesc.pdf
- License: GPL (≥ 3)
- Status: removed
-
Latest release: 0.1.0
published almost 3 years ago
Rankings
Stargazers count: 28.5%
Forks count: 28.8%
Dependent packages count: 29.6%
Dependent repos count: 35.3%
Average: 42.4%
Downloads: 89.7%
Maintainers (1)
Last synced:
about 1 year ago
Dependencies
DESCRIPTION
cran
- R >= 3.5.0 depends
- digest * imports
- httr * imports
- versionsort >= 1.1.0 imports
- httptest * suggests
- testthat >= 3.0.0 suggests
- usethis * suggests
- vcr * suggests
- withr * suggests
- xml2 * suggests
.github/workflows/test-coverage.yaml
actions
- actions/checkout v2 composite
- r-lib/actions/setup-r v1 composite
- r-lib/actions/setup-r-dependencies v1 composite
.github/workflows/check-standard.yaml
actions
- actions/checkout v3 composite
- r-lib/actions/check-r-package v2 composite
- r-lib/actions/setup-pandoc v2 composite
- r-lib/actions/setup-r v2 composite
- r-lib/actions/setup-r-dependencies v2 composite
.github/workflows/pkgdown.yaml
actions
- JamesIves/github-pages-deploy-action v4.4.1 composite
- actions/checkout v3 composite
- r-lib/actions/setup-pandoc v2 composite
- r-lib/actions/setup-r v2 composite
- r-lib/actions/setup-r-dependencies v2 composite