All Projects → krlmlr → minver

krlmlr / minver

Licence: other
What are the minimum dependencies for your package?

Programming Languages

r
7636 projects
Dockerfile
14818 projects

Projects that are alternatives of or similar to minver

Dephell
📦 🔥 Python project management. Manage packages: convert between formats, lock, install, resolve, isolate, test, build graph, show outdated, audit. Manage venvs, build package, bump version.
Stars: ✭ 1,730 (+9511.11%)
Mutual labels:  versioning, dependencies
Android-Dependencies
Project wide handling of tested and used libraries. Also including some utility gradle tasks.
Stars: ✭ 14 (-22.22%)
Mutual labels:  versioning, dependencies
deblibs-gradle-plugin
A Gradle plugin that creates Github issue and Slack message for outdated dependencies so they can easily be tracked and manually upgraded.
Stars: ✭ 73 (+305.56%)
Mutual labels:  versioning, dependencies
Semver
Semantic versioning helper library for PHP
Stars: ✭ 144 (+700%)
Mutual labels:  versioning
Bump
Bump is a gem that will simplify the way you build gems.
Stars: ✭ 150 (+733.33%)
Mutual labels:  versioning
Hatch
A modern project, package, and virtual env manager for Python
Stars: ✭ 2,268 (+12500%)
Mutual labels:  versioning
yavdb
Yet Another Vulnerability Database
Stars: ✭ 14 (-22.22%)
Mutual labels:  dependencies
Cleanerversion
CleanerVersion adds a versioning/historizing layer to your relational DB which implements a "Slowly Changing Dimensions Type 2" behavior
Stars: ✭ 135 (+650%)
Mutual labels:  versioning
Nvm Windows
A node.js version management utility for Windows. Ironically written in Go.
Stars: ✭ 18,587 (+103161.11%)
Mutual labels:  versioning
Maven Git Versioning Extension
This extension will virtually set project versions, based on current git branch or tag.
Stars: ✭ 178 (+888.89%)
Mutual labels:  versioning
Aspnet Api Versioning
Provides a set of libraries which add service API versioning to ASP.NET Web API, OData with ASP.NET Web API, and ASP.NET Core.
Stars: ✭ 2,154 (+11866.67%)
Mutual labels:  versioning
Backport
A simple CLI tool that automates the process of backporting commits on a GitHub repo
Stars: ✭ 154 (+755.56%)
Mutual labels:  versioning
Gradle Android Git Version
A gradle plugin to calculate Android-friendly version names and codes from git tags
Stars: ✭ 227 (+1161.11%)
Mutual labels:  versioning
Semver.c
Semantic version library written in ANSI C
Stars: ✭ 147 (+716.67%)
Mutual labels:  versioning
eleventy-load
Resolve dependencies and post-process files in your Eleventy project
Stars: ✭ 28 (+55.56%)
Mutual labels:  dependencies
Sbt Dynver
An sbt plugin to dynamically set your version from git
Stars: ✭ 243 (+1250%)
Mutual labels:  versioning
Version
Represent and compare versions via semantic versioning (SemVer) in Swift
Stars: ✭ 160 (+788.89%)
Mutual labels:  versioning
Gitversion
From git log to SemVer in no time
Stars: ✭ 2,131 (+11738.89%)
Mutual labels:  versioning
Ansible Silo
Ansible in a self-contained environment via Docker.
Stars: ✭ 183 (+916.67%)
Mutual labels:  versioning
module-dependents
Get the list of npm modules that depend on the specified npm module.
Stars: ✭ 15 (-16.67%)
Mutual labels:  dependencies

minver

Lifecycle: experimental Launch binder Launch rstudio.cloud

A workflow for finding the minimum required versions of all packages that your package imports.

How does it work?

  1. It creates a baseline library via remotes::install_deps(dependencies = TRUE) .

  2. Imported packages are sorted topologically, packages that depend on other packages come first. Versions are erased from the DESCRIPTION .

  3. For each imported package, a bisection along the available versions (obtained via crandb::package(version = "all")) is made. The baseline library is copied (using symlinks), and the packages for which minimum versions are to be tested are installed using remotes::install_version(). The test criterion is a successful R CMD check without NOTEs.

  4. The minimum version for each package is written to the DESCRIPTION .

Prerequisites

  1. Clone this project and install packages (or launch binder or rstudio.cloud from the badge at the top of this README)

    # install.packages("remotes")
    remotes::install_deps()
  2. Clone the package you want to find minimum versions for

  3. Adapt 00-*.R to point to your package

Run it

Run each script ??-*.R in sequence, the 05-*.R script must be run repeatedly until the error "All versions determined, move to next script." is raised.

The following files are created:

  • gen.rds: Imported packages sorted by "generation" (topologically)
  • baseline.rds: All CRAN versions of imported packages
  • lib/: The baseline library
  • candidate-####.rds: Intermediate results of the bisection
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].