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

Bug#999505: ITP: golang-github-audriusbutkevicius-recli -- reflection based CLI (command line interface) generator for Golang (library)



Package: wnpp
Severity: wishlist
Owner: Nicholas D Steeves <nsteeves@gmail.com>
X-Debbugs-Cc: debian-devel@lists.debian.org, Debian Go Packaging Team <team+pkg-go@tracker.debian.org>, Alexandre Viau <aviau@debian.org>

* Package name    : golang-github-audriusbutkevicius-recli
  Version         : 0.0.6
  Upstream Author : Audrius Butkevicius <github@audrius.rocks>
* URL             : https://github.com/AudriusButkevicius/recli
* License         : MPL-2.0
  Programming Lang: Go
  Description     : reflection based CLI (command line interface) generator for Golang (library)

 recli - Reflection based CLI (command line interface) generator for
 Golang GoDoc (https://godoc.org/github.com/AudriusButkevicius/recli)
 .
 Recli is useful for generating command line clients for your application
 configuration that is stored in a Go struct.  For a given struct, builds a set
 of urfave/cli (https://github.com/urfave/cli) commands which allows you to
 modify it from the command line.
 .
 Features:
   • Nested struct support
   • Enum/Custom complex type support via MarshalText/UnmarshalText
   • Slice support, including complex types
   • Slice indexing by struct field
   • Map support
   • Default primitive value support when adding items to slices
 .
 Known limitations:
   • Adding new struct to a slice only allows setting primitive fields (use
     add-json as a work-around)
   • Only primitive types supported for map keys and values
   • No defaults for mapsExamples

Recli is a new dependency of Syncthing 1.18.0 and newer.

I plan to maintain it on the Debian Go Packaging Team.  As it's my
first Golang package (IIRC :$) it might be nice to have someone check
that it really was as easy to correctly package as dh-make-golang made
it seem.  Thank you for excellent tooling, btw! :-)

As far as I can tell, the package just needs to close this yet-to-be-created ITP bug, be pushed to DGPT namespace on salsa, and uploaded.

Regards,
Nicholas

Reply to: