Repository navigation
v0.6.0
v0.6.0: stores under store/, opened by URI
The storage side takes the database/sql shape (#55):
-
store.Open(uri)opens a store from a URI through drivers that register their scheme ininit.storeitself knows no driver: blank-import the ones you want and nothing else is linked into the binary.import ( "github.com/dangra/durable/store" _ "github.com/dangra/durable/store/bbolt" ) st, err := store.Open("bbolt:///var/lib/app/durable.db") eng := engine.New(st)
-
store/bboltis the persistent driver (bbolt:///abs/path,bbolt:/abs/path,bbolt:rel/path; no host, no options yet, a query string is an error). -
store/memis the in-memory driver (mem:), promoted from a test double to a real store for CLI tools and other programs whose runs are ephemeral. It remains the executable reference the bbolt driver is differentially fuzzed against. -
store/driveris the SPI backends implement.
Breaking changes and migration
github.com/dangra/durable/storedriverisgithub.com/dangra/durable/store/driver(packagedriver).github.com/dangra/durable/bboltstoreisgithub.com/dangra/durable/store/bbolt(packagebbolt; alias one side if you also importgo.etcd.io/bbolt).bbolt.Open(path)is unchanged, or usestore.Open("bbolt:...").durabletest.NewMemStore()ismem.New()ingithub.com/dangra/durable/store/mem, orstore.Open("mem:").durabletestkeeps the fake Clock and the fake Invocation.- No wire or behavior change: a v0.5.0 bbolt database opens unchanged.
contrib/durableotel v0.6.0 is released in lockstep.
Modules
github.com/dangra/durable@v0.6.0github.com/dangra/durable/contrib/durableotel@v0.6.0
What's Changed
- Stores under store/: driver SPI, bbolt and mem drivers, Open by URI by @dangra in #55
- Release v0.6.0 by @dangra in #56
Full Changelog: v0.5.0...v0.6.0