Collect Version Histories For Vendor Products
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

3.4 KiB

---
output: rmarkdown::github_document
editor_options:
chunk_output_type: console
---
```{r include=FALSE}
knitr::opts_chunk$set(
message = FALSE,
warning = FALSE,
fig.retina = 2
)
options(width=120)
```
# vershist

Collect Version Histories For Vendor Products

## Description

Provides a set of functions to gather version histories of products
(mainly software products) from their sources (generally websites).

## What's Inside The Tin

The following functions are implemented:

Core:

- `apache_httpd_version_history`: Retrieve Apache httpd Version Release History
- `apple_ios_version_history`: Retrieve Apple iOS Version Release History
- `citrix_netscaler_version_history`: Citrix Netscaler ADC Version History
- `etcd_version_history`: Retrieve etcd Version Release History
- `google_chrome_version_history`: Retrieve Google Chrome Version Release History
- `isc_bind_version_history` : Retrieve ISC BIND Version Release History
- `lighttpd_version_history`: Retrieve lighttpd Version Release History
- `memcached_version_history`: Retrieve memcached Version Release History
- `mongodb_version_history`: Retrieve MongoDB Version Release History
- `mysql_version_history`: Retrieve MySQL Version Release History
- `nginx_version_history`: Retrieve nginx Version Release History
- `openresty_version_history`: Retrieve openresty Version Release History
- `openssh_version_history`: Retrieve OpenSSH Version Release History
- `php_version_history`: Retrieve PHP Version Release History
- `sendmail_version_history`: Retrieve sendmail Version Release History
- `sqlite_version_history`: Retrieve sqlite Version Release History
- `tomcat_version_history`: Retrieve Apache Tomcat Version Release History

Utility:

- `is_valid_semver`: Test if semantic version strings are valid
- `complete_semver`: Turn partial "valid" semantic version strings into a complete semver-tri or quad strings

## Installation

```{r eval=FALSE}
devtools::install_git("https://git.sr.ht/~hrbrmstr/vershist")
# OR
devtools::install_gitlab("hrbrmstr/vershist")
# OR
devtools::install_github("hrbrmstr/vershist")
```

## Usage

```{r}
library(vershist)

# current verison
packageVersion("vershist")
```

Utility

```{r utility}
versions <- c("steve", "1", "2.1", "3.2.1", "4.3.2.1")

# Technically, a "valid" semver string is MAJOR.MINOR.PATCH
is_valid_semver(versions)

complete_semver(versions)

complete_semver(versions, quad=TRUE)
```

Apache

```{r apache, cache=TRUE}
apache_httpd_version_history()
```

Apple iOS

```{r apple_ios, cache=TRUE}
apple_ios_version_history()
```

etcd iOS

```{r etcd, cache=TRUE}
etcd_version_history()
```

Google Chrome

```{r chrome, cache=TRUE}
google_chrome_version_history()
```

ISC BIND

```{r isc-bind, cache=TRUE}
isc_bind_version_history()
```

lighttpd

```{r lighttpd, cache=TRUE}
lighttpd_version_history()
```

memcached

```{r memcached, cache=TRUE}
memcached_version_history()
```

mongodb

```{r mongodb, cache=TRUE}
mongodb_version_history()
```

MySQL

```{r mysql, cache=TRUE}
mysql_version_history()
```

nginx

```{r nginx, cache=TRUE}
nginx_version_history()
```

openresty

```{r openresty, cache=TRUE}
openresty_version_history()
```

OpenSSH

```{r openssh, cache=TRUE}
openssh_version_history()
```

PHP

```{r php, cache=TRUE}
php_version_history()
```

SQLite

```{r sqlite, cache=TRUE}
sqlite_version_history()
```

sendmail

```{r sendmail, cache=TRUE}
sendmail_version_history()
```

Tomcat

```{r tomcat, cache=TRUE}
tomcat_version_history()
```