{"id":16571591,"url":"https://github.com/hrbrmstr/vershist","last_synced_at":"2026-03-02T19:36:08.780Z","repository":{"id":141238958,"uuid":"126080823","full_name":"hrbrmstr/vershist","owner":"hrbrmstr","description":"🕵🏽‍♀️ Collect Version Histories For Vendor Products","archived":false,"fork":false,"pushed_at":"2020-01-30T19:38:50.000Z","size":194,"stargazers_count":8,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-07-30T15:37:10.122Z","etag":null,"topics":["r","r-cyber","release-history","rstats","semantic-versions","version-check","version-checker"],"latest_commit_sha":null,"homepage":null,"language":"R","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hrbrmstr.png","metadata":{"files":{"readme":"README.Rmd","changelog":"NEWS.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-03-20T20:50:59.000Z","updated_at":"2025-03-22T11:01:13.000Z","dependencies_parsed_at":null,"dependency_job_id":"d1c9e380-e724-4f1e-9301-e354712ce8a7","html_url":"https://github.com/hrbrmstr/vershist","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/hrbrmstr/vershist","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hrbrmstr%2Fvershist","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hrbrmstr%2Fvershist/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hrbrmstr%2Fvershist/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hrbrmstr%2Fvershist/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hrbrmstr","download_url":"https://codeload.github.com/hrbrmstr/vershist/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hrbrmstr%2Fvershist/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30016524,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-02T17:00:27.440Z","status":"ssl_error","status_checked_at":"2026-03-02T17:00:03.402Z","response_time":60,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["r","r-cyber","release-history","rstats","semantic-versions","version-check","version-checker"],"created_at":"2024-10-11T21:24:30.828Z","updated_at":"2026-03-02T19:36:08.763Z","avatar_url":"https://github.com/hrbrmstr.png","language":"R","funding_links":[],"categories":[],"sub_categories":[],"readme":"---\noutput: rmarkdown::github_document\neditor_options: \n  chunk_output_type: console\n---\n```{r include=FALSE}\nknitr::opts_chunk$set(\n  message = FALSE,\n  warning = FALSE,\n  fig.retina = 2\n)\noptions(width=120)\n```\n# vershist\n\nCollect Version Histories For Vendor Products\n\n## Description\n\nProvides a set of functions to gather version histories of products \n(mainly software products) from their sources (generally websites).\n\n## What's Inside The Tin\n\nThe following functions are implemented:\n\nCore:\n\n- `apache_httpd_version_history`: Retrieve Apache httpd Version Release History\n- `apple_ios_version_history`:  Retrieve Apple iOS Version Release History\n- `citrix_netscaler_version_history`: Citrix Netscaler ADC Version History\n- `etcd_version_history`: Retrieve etcd Version Release History\n- `google_chrome_version_history`:  Retrieve Google Chrome Version Release History\n- `isc_bind_version_history` : Retrieve ISC BIND Version Release History\n- `lighttpd_version_history`: Retrieve lighttpd Version Release History\n- `memcached_version_history`:  Retrieve memcached Version Release History\n- `mongodb_version_history`:  Retrieve MongoDB Version Release History\n- `mysql_version_history`:  Retrieve MySQL Version Release History\n- `nginx_version_history`:  Retrieve nginx Version Release History\n- `openresty_version_history`:  Retrieve openresty Version Release History\n- `openssh_version_history`:  Retrieve OpenSSH Version Release History\n- `php_version_history`:  Retrieve PHP Version Release History\n- `sendmail_version_history`: Retrieve sendmail Version Release History\n- `sqlite_version_history`: Retrieve sqlite Version Release History\n- `tomcat_version_history`: Retrieve Apache Tomcat Version Release History\n\nUtility:\n\n- `is_valid_semver`:  Test if semantic version strings are valid\n- `complete_semver`:  Turn partial \"valid\" semantic version strings into a complete semver-tri or quad strings\n\n## Installation\n\n```{r eval=FALSE}\ndevtools::install_git(\"https://git.sr.ht/~hrbrmstr/vershist\")\n# OR\ndevtools::install_gitlab(\"hrbrmstr/vershist\")\n# OR\ndevtools::install_github(\"hrbrmstr/vershist\")\n```\n\n## Usage\n\n```{r}\nlibrary(vershist)\n\n# current verison\npackageVersion(\"vershist\")\n```\n\nUtility\n\n```{r utility}\nversions \u003c- c(\"steve\", \"1\", \"2.1\", \"3.2.1\", \"4.3.2.1\")\n\n# Technically, a \"valid\" semver string is MAJOR.MINOR.PATCH\nis_valid_semver(versions)\n\ncomplete_semver(versions)\n\ncomplete_semver(versions, quad=TRUE)\n```\n\nApache\n\n```{r apache, cache=TRUE}\napache_httpd_version_history()\n```\n\nApple iOS\n\n```{r apple_ios, cache=TRUE}\napple_ios_version_history()\n```\n\netcd iOS\n\n```{r etcd, cache=TRUE}\netcd_version_history()\n```\n\nGoogle Chrome\n\n```{r chrome, cache=TRUE}\ngoogle_chrome_version_history()\n```\n\nISC BIND \n\n```{r isc-bind, cache=TRUE}\nisc_bind_version_history()\n```\n\nlighttpd\n\n```{r lighttpd, cache=TRUE}\nlighttpd_version_history()\n```\n\nmemcached\n\n```{r memcached, cache=TRUE}\nmemcached_version_history()\n```\n\nmongodb\n\n```{r mongodb, cache=TRUE}\nmongodb_version_history()\n```\n\nMySQL\n\n```{r mysql, cache=TRUE}\nmysql_version_history()\n```\n\nnginx\n\n```{r nginx, cache=TRUE}\nnginx_version_history()\n```\n\nopenresty\n\n```{r openresty, cache=TRUE}\nopenresty_version_history()\n```\n\nOpenSSH\n\n```{r openssh, cache=TRUE}\nopenssh_version_history()\n```\n\nPHP\n\n```{r php, cache=TRUE}\nphp_version_history()\n```\n\nSQLite\n\n```{r sqlite, cache=TRUE}\nsqlite_version_history()\n```\n\nsendmail\n\n```{r sendmail, cache=TRUE}\nsendmail_version_history()\n```\n\nTomcat\n\n```{r tomcat, cache=TRUE}\ntomcat_version_history()\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhrbrmstr%2Fvershist","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhrbrmstr%2Fvershist","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhrbrmstr%2Fvershist/lists"}