[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#963576: ITP: golang-github-stevenroose-gonfig -- Go package for program configuration



Package: wnpp
Severity: wishlist
Owner: Leo Antunes <costela@debian.org>

* Package name    : golang-github-stevenroose-gonfig
  Version         : 0.1.5-1
  Upstream Author : Steven Roose
* URL             : https://github.com/stevenroose/gonfig
* License         : Expat
  Programming Lang: Go
  Description     : Go package for program configuration

 gonfig is a configuration library designed using the following
 principles:
 - The configuration variables are fully specified and loaded into a
   struct variable.
 - You only need one statement to load the configuration fully.
 - Configuration variables can be retrieved from various sources, in
   this order of increasing priority:
   - default values from the struct definition
   - the value already in the object when passed into Load()
   - config file in either YAML, TOML, JSON or a custom decoder
   - environment variables
   - command line flags

 Furthermore, it has the following features:
 - supported types for interpreting:
   - native Go types: all int, uint, string, bool
   - types that implement TextUnmarshaler from the "encoding" package
   - byte slices ([]byte) are interpreted as base64
   - slices of the above mentioned types
   - map[string]interface{}
 - the location of the config file can be passed through command line
   flags or environment variables
 - printing help message (and hiding individual flags)

This package is needed for #963575


Reply to: