Skip to content

v0.4.0 (2018-12-02)

Compare
Choose a tag to compare
@philippgille philippgille released this 05 Dec 21:00
· 360 commits to master since this release
  • Added: Method Close() error (issue #36)
  • Added gokv.Store implementations:
    • Package mongodb - A gokv.Store implementation for MongoDB (issue #27)
    • Package dynamodb - A gokv.Store implementation for Amazon DynamoDB (issue #28)
    • Package memcached - A gokv.Store implementation for Memcached (issue #31)
    • Package mysql - A gokv.Store implementation for MySQL (issue #32)
  • Added: The factory function redis.NewClient() now checks if the connection to the Redis server works and otherwise returns an error.
  • Added: The test package now has the function func TestConcurrentInteractions(t *testing.T, goroutineCount int, store gokv.Store) that you can use to test your gokv.Store implementation with concurrent interactions.
  • Improved: The etcd.Client timeout implementation was improved.
  • Fixed: The Get() method of the bbolt store ignored errors if they occurred during the retrieval of the value
  • Fixed: Spelling in error message when using the etcd implementation and the etcd server is unreachable

Breaking changes

  • The added Close() error method (see above) means that previous implementations of gokv.Store are not compatible with the interface anymore.
  • Renamed bolt package to bbolt to reflect the fact that the maintained fork is used. Also changed all other occurrences of "bolt" (e.g. in GoDoc comments etc.).
  • Due to the above mentioned addition to the Redis client factory function, the function signature changed from func NewClient(options Options) Client to func NewClient(options Options) (Client, error).