github.com/tendermint/tmlibs@v0.9.0/README.md (about) 1 # TMLIBS 2 3 This repo is a home for various small packages. 4 5 ## autofile 6 7 Autofile is file access with automatic log rotation. A group of files is maintained and rotation happens 8 when the leading file gets too big. Provides a reader for reading from the file group. 9 10 ## cli 11 12 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. 13 14 ## clist 15 16 Clist provides a linekd list that is safe for concurrent access by many readers. 17 18 ## common 19 20 Common provides a hodgepodge of useful functions. 21 22 ## db 23 24 DB provides a database interface and a number of implementions, including ones using an in-memory map, the filesystem directory structure, 25 an implemention of LevelDB in Go, and the official LevelDB in C. 26 27 ## events 28 29 Events is a synchronous PubSub package. 30 31 ## flowrate 32 33 Flowrate is a fork of https://github.com/mxk/go-flowrate that added a `SetREMA` method. 34 35 ## log 36 37 Log is a log package structured around key-value pairs that allows logging level to be set differently for different keys. 38 39 ## merkle 40 41 Merkle provides a simple static merkle tree and corresponding proofs. 42 43 ## process 44 45 Process is a simple utility for spawning OS processes. 46 47 ## pubsub 48 49 PubSub is an asynchronous PubSub package.