README ¶
TMLIBS
This repo is a home for various small packages.
autofile
Autofile is file access with automatic log rotation. A group of files is maintained and rotation happens when the leading file gets too big. Provides a reader for reading from the file group.
cli
CLI wraps the cobra
and viper
packages and handles some common elements of building a CLI like flags and env vars for the home directory and the logger.
clist
Clist provides a linekd list that is safe for concurrent access by many readers.
common
Common provides a hodgepodge of useful functions.
db
DB provides a database interface and a number of implementions, including ones using an in-memory map, the filesystem directory structure, an implemention of LevelDB in Go, and the official LevelDB in C.
events
Events is a synchronous PubSub package.
flowrate
Flowrate is a fork of https://github.com/mxk/go-flowrate that added a SetREMA
method.
log
Log is a log package structured around key-value pairs that allows logging level to be set differently for different keys.
merkle
Merkle provides a simple static merkle tree and corresponding proofs.
process
Process is a simple utility for spawning OS processes.
pubsub
PubSub is an asynchronous PubSub package.
Directories ¶
Path | Synopsis |
---|---|
Package common is a generated protocol buffer package.
|
Package common is a generated protocol buffer package. |
Pub-Sub in go with event caching
|
Pub-Sub in go with event caching |
Package flowrate provides the tools for monitoring and limiting the flow rate of an arbitrary data stream.
|
Package flowrate provides the tools for monitoring and limiting the flow rate of an arbitrary data stream. |
Package pubsub implements a pub-sub model with a single publisher (Server) and multiple subscribers (clients).
|
Package pubsub implements a pub-sub model with a single publisher (Server) and multiple subscribers (clients). |
query
Package query provides a parser for a custom query format: abci.invoice.number=22 AND abci.invoice.owner=Ivan See query.peg for the grammar, which is a https://en.wikipedia.org/wiki/Parsing_expression_grammar.
|
Package query provides a parser for a custom query format: abci.invoice.number=22 AND abci.invoice.owner=Ivan See query.peg for the grammar, which is a https://en.wikipedia.org/wiki/Parsing_expression_grammar. |