Commit Graph

160 Commits

Author SHA1 Message Date
Brian Picciano
5bd0790f6e mctx: implement BreadthFirstVisit 2019-01-30 16:04:58 -05:00
Brian Picciano
8e2cffd65b mcfg: make ParamValue not embed Param, so that a Source which is []ParamValue makes sense, and can replace SourceMap 2019-01-25 17:33:36 -05:00
Brian Picciano
ddd26259b2 merr: make New take in optional key/value pairs for convenience 2019-01-25 17:32:53 -05:00
Brian Picciano
b33b157e15 mcfg: update docs to make running Populate more than once explicitly allowed 2019-01-25 16:46:39 -05:00
Brian Picciano
a24262f295 mlog: update function docs 2019-01-25 16:39:57 -05:00
Brian Picciano
e9416dbe2a mlog: update package doc example 2019-01-25 16:29:22 -05:00
Brian Picciano
79bf3d6f89 totp-proxy: update to use new mctx/mcfg/mrun framework 2019-01-24 22:05:17 -05:00
Brian Picciano
a00a268256 m: implement Run function, which glues together mcfg.Populate, mrun.Start, and mrun.Stop 2019-01-24 22:04:58 -05:00
Brian Picciano
05a69589bc mcfg: use merr for returned errors, and make help output prioritize required params towards the top 2019-01-24 22:02:04 -05:00
Brian Picciano
ef2e76de45 mhttp: implement MListenAndServe, using new mctx/mrun/mcfg framework 2019-01-24 19:23:04 -05:00
Brian Picciano
a0a531cdd2 mnet: add MListener.CloseOnStop, to allow for http.Server.Shutdown (and other entities) closing the listener instead 2019-01-24 19:19:57 -05:00
Brian Picciano
5f864c44f2 mrun: make Thread's callback not take in a context, it doesn't really help anything 2019-01-24 19:18:44 -05:00
Brian Picciano
bd4d7fc9e3 mnet: export MListener and add some debug logging 2019-01-24 16:54:38 -05:00
Brian Picciano
405120513f merr: move With/GetValue to kv.go, make nil error behavior be explicitly defined and tested 2019-01-24 16:45:38 -05:00
Brian Picciano
0e80e1fd3d mlog: remove ErrKV/ErrWithKV, merr.KV/merr.WithValue are used instead 2019-01-15 00:00:24 -05:00
Brian Picciano
56f3e71acd merr: initial implementation, designed to replace merry and work nicely with mlog, while allowing support for multi-errors and other niceties in the future 2019-01-15 00:00:24 -05:00
Brian Picciano
33a10a4ac7 mlog: make the map returned from a KVer be read-only and allowed to be nil 2019-01-14 23:58:58 -05:00
Brian Picciano
1562c4e8f6 mlog: redefine KVer to return a map[string]interface, not a KV, to allow other packages to implement KVer without importing mlog 2019-01-14 23:58:55 -05:00
Brian Picciano
fe07e1cfdc mnet: better logging for MListen 2019-01-12 21:01:16 -05:00
Brian Picciano
57db101c02 mlog: add Logger.WithKV, slightly change Message type to support it 2019-01-12 21:01:00 -05:00
Brian Picciano
448008cb7c mrun: move Hook code into hook.go 2019-01-12 20:14:02 -05:00
Brian Picciano
0fb0cb92a0 mnet: ListenerOnStart -> MListen, and have it close on mrun.Stop 2019-01-12 20:11:22 -05:00
Brian Picciano
0ef6997f40 mlog: fix bug which caused the DefaultHandler to not ever call Flush 2019-01-12 20:10:45 -05:00
Brian Picciano
ee77656f39 mrun: rename functions and add another trigger function which will run hooks in reverse, for use in OnStop 2019-01-12 19:55:41 -05:00
Brian Picciano
8a8cebd127 mnet: implement ListenerOnStart 2019-01-11 17:47:30 -05:00
Brian Picciano
96db88b7d0 mcfg: allow Source param to Populate to be nil 2019-01-11 17:44:53 -05:00
Brian Picciano
57c400a151 mrun: update docs a bit 2019-01-10 18:12:39 -05:00
Brian Picciano
48bb21668a mrun: implement rudimentary event system built on top of mctx 2019-01-10 18:06:34 -05:00
Brian Picciano
92ecb09707 mctx: make GetSetMutableValue lock on the key itself, not the entire map, to allow more throughput when being used on multiple keys at once 2019-01-10 17:22:58 -05:00
Brian Picciano
6e8338a5f8 mcfg: refactor to remove Child and Hook stuff, and use mctx instead 2019-01-08 14:21:55 -05:00
Brian Picciano
57bd022093 mrun: implement Thread and Wait 2018-12-05 23:40:46 -05:00
Brian Picciano
2f647017b9 mlog: add CtxSet and From functions 2018-11-30 18:50:23 -05:00
Brian Picciano
2e269bb6e7 mlog: refactor to use a Stringer for Message.Description 2018-11-30 18:50:08 -05:00
Brian Picciano
b5c676b5c8 mlog: complete refactor again, eliminating the go-routine, which allowed a lot of other things to fall into place nicely 2018-11-30 16:27:18 -05:00
Brian Picciano
47061cec4e mctx: add Root function, and update some docs 2018-11-30 15:11:41 -05:00
Brian Picciano
cb65787f37 mctx: GetSetMutableValue. Not sure if I'm really going to use this or not 2018-10-28 22:17:33 -04:00
Brian Picciano
e349d0fbd8 mctx: moved ctx code from m and kept fleshing it out, trying to figure out how to incorporate Logger 2018-10-28 19:34:26 -04:00
Brian Picciano
6c055d0255 m: WIP on moving the child logic out of mcfg.Cfg and into contexts 2018-10-28 15:59:49 -04:00
Brian Picciano
5c85969bc7 mlog: use a Clone and Set methods instead of With methods 2018-10-28 15:09:42 -04:00
Brian Picciano
910704ae67 massert: add Err and Errf functions 2018-10-28 15:09:14 -04:00
Brian Picciano
d9480abb59 mlog: make stopping logic a little better 2018-10-28 14:31:40 -04:00
Brian Picciano
23045168cf massert: make most assertions handle the case of a reference type, like a map, being changed before Assert is called 2018-10-15 14:34:10 -04:00
Brian Picciano
bc8f323514 mlog: use a waitgroup to flush the Logger on Stop 2018-08-27 15:18:38 -04:00
Brian Picciano
c66f13927a mchk: implement failing test case minimization 2018-08-21 14:45:15 -04:00
Brian Picciano
4a842fbea1 mchk: remove typeName in params printing, it wasn't really helping 2018-08-14 16:18:34 -04:00
Brian Picciano
235e9a1850 massert: make Len error a bit more helpful 2018-08-14 15:38:24 -04:00
Brian Picciano
7f0b8056d7 m: add CfgSource and use it in all current cmds 2018-08-13 21:09:20 -04:00
Brian Picciano
132c51eaf0 mcfg: move Path out of ParamValue and into Param, which allows for shuffling around a whole bunch of code to make things make a bit more sense 2018-08-13 21:02:06 -04:00
Brian Picciano
3de30eb819 mcfg: centralize logic for fuzzy parsing strings, use it to implement SourceMap 2018-08-13 20:44:03 -04:00
Brian Picciano
8ff2abf02c mcfg: implement Sources 2018-08-13 20:15:54 -04:00