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

2022-11-17 Thread Anoop MS
On Wed, 24 Jun 2020 00:35:21 +0200 "Leo Antunes"  wrote:

> 
> Package: wnpp
>  Severity: wishlist
>  Owner: Leo Antunes 
>  
>  * 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
> 
Hi,

I would like to package and maintain this.

Regards,
Anoop

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

2020-06-23 Thread Leo Antunes
Package: wnpp
Severity: wishlist
Owner: Leo Antunes 

* 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