feetures

knitr::opts_chunk$set(
  comment = "#>",
  collapse = TRUE,
  warning = FALSE,
  message = FALSE
)

Project Status: WIP – Initial development is in progress, but there has not yet been a stable, usable release suitable for the public. Build Status

feetures for feature flags

Installation

devtools::install_github("ropenscilabs/feetures")
library("feetures")

basic usage

initialize object

(z <- Feetures$new(adapter = AdapterMemory$new()))

register a flag

z$register("foo")

if/else conditional

if (z$enabled("foo")) {
  message("foo for you :)")
} else {
  message("NO foo for you!")
}

enable the flag

z$enable("foo")

now try again

if (z$enabled("foo")) {
  message("foo for you :)")
} else {
  message("NO foo for you!")
}

expiration

feat <- Feature$new("bar", expiration = Sys.time() + 5)
(z <- Feetures$new(adapter = AdapterMemory$new()))
z$register(feat)
z$features()
z$enable(feat$name)
z$enabled(feat$name)
Sys.sleep(5)
z$enabled(feat$name)

TODO

feat_if_else(feature = "foo", code = {
  x <- 5^2
  x / 10 
})

Meta



ropenscilabs/feetures documentation built on May 14, 2022, 12:49 p.m.