Tags: vedang/clj_fdb
Tags
Release v0.3.0 * Changes - This release contains *significant breaking changes* - The API now supports Clojure vectors as Tuples and Subspaces (they are converted internally). This makes the library much more intuitive to use and my recommendation is to always use Subspaces + Tuples for keys and where possible use Tuples for values in FDB. - ~encode~ and ~decode~ functions have been removed from the core API. When using vectors, they are unnecessary. - Support for top-level ~keyfn~ and ~valfn~ arguments has been moved to an ~opts~ map, which will support more options in the future. - The behavior of ~keyfn~ / ~valfn~ has changed and become more intuitive. Refer to examples in the README to understand how to use these functions. - ~parsefn~ has been renamed to ~valfn~ for consistency - MutationType and ~mutate~ support is now available and baked into the core API. (Check out docs for ~fc/mutate!~ and it's usage in ~farstar~) - The following functionality will be added in upcoming releases: + Leveraging the power of Clojure for FDB async operations + Full support for FDB watches + Support for versionstamps - This library is still in the 0.x stage. I expect new releases to have breakage in API until I get to the 1.0.0 release, post which the API will be permanently supported. * Commit history - (#18) MutationType support is now available in the core API as ~fc/mutate!~ - Auto handle vectors, remove encode/decode from core API - Provide a consistent ~create~ function across Tuple, Subspace, Directory layers
Release v0.2.0
* Changes
- This release contains *significant breaking changes*
+ The API has been simplified to only the following functions in
core (below). Also, key and value parsing is only available where
needed:
- ~get~
- ~set~
- ~clear~
- ~get-range~
- ~clear-range~
+ The ~*-subspaced-*~ functions are no longer available, the
functionality is folded into the core API (listed above)
+ ~byte-streams~ support has been removed from the library.
Serialization / De-serialization is supported for data-structures
that FDB provides (Tuple, Subspace, Directory). (You are of course
free to use ~byte-streams~ or any other serialization library in
the application code)
- This library now depends on the latest java driver available.
(~6.3.13~)
- Full Subspace and DirectoryLayer support is now available and baked
into the core API.
- Should you need it, the full underlying Java API is available to
you.
- The following functionality will be added in upcoming releases:
+ Leveraging the power of Clojure for FDB async operations
+ Full support for FDB watches
+ Support for versionstamps
- This library is still in the 0.x stage. I expect new releases to
have breakage in API until I get to the 1.0.0 release, post which
the API will be permanently supported.
* Commit history
- (#13, #14) Subspace and Directory support is available in core APIs
- (#17) byte-streams has been removed as a library dependency
- All examples have now been moved to the vedang/farstar repository
- There are three new functions for executing transactions
+ ~run-async!~ returns a future which will contain the result of the transaction
+ ~read~ and ~read-async!~ support execution of read-only transactions in an efficient manner
Release 0.1.1 Release version 0.1.1 of the clj-fdb library. * Changes - Update all the project dependencies to the latest versions. - This library now runs against version 6.2.19 of the Foundationdb client and server. - It uses the API version 610 in all it's tests, this is the oldest supported version of FDB. - The `me.vedang.clj-fdb.FDB/create-cluster` has been removed in this release, since the underlying functionality has been deprecated in the Java API. - This library is still in the 0.1.x stage. I'll start using sensible SemVer from 1.0 release, currently I'm using Break Versioning.