All notable changes to this project will be documented in this file. This change log follows the conventions of keepachangelog.com.
- Writing sets in RethinkDB documents no longer throws exceptions. They are coerced to arrays before getting written to RethinkDB, and are returned as vectors.
- Added support for
order-by
with multiple fields
- Save milliseconds for dates
get-field
can get nested fields when passed a vector- Breaking Use Java 8's Base64 class instead of the
clojure.data.codec
library. This requires Java 8.
- Breaking renamed
indexes-of
tooffsets-of
- Renamed
get-intersection
toget-intersecting
- Added support for
group
with multiple fields
- Added
range
- Add TLS support
- Use netty on the backend and make connections thread safe
- Use connection DB with
table-create
- Dropped the
read-timeout
option to connect - Allow namespaced keywords
- Add support for binary
- Added options to make queries return a core.async channel
- Disable Nagle's algorithm (set TCP NO_DELAY to true). This provides a speedup of around 30-40x for small queries on Linux. #114
- Renamed changes arg from
table
toxs
. #76 - Prefix RethinkDB server exceptions with
RethinkDB server:
. #100 - Mask auth-key when logging connection exceptions #90
- Upgraded to support RethinkDB 2.2 protobuf query language
- Add optargs arity to
table
. #78 - Added support for 2.1's error types. These give more information about why an error happened. See http://rethinkdb.com/docs/error-types/ for more details. Breaking the structure of exception data has changed from
<response map>
to {:type :op-failed :response }`. #77
- Added a new arity to
changes
that allows you to pass optargs. #112 - Added new arity to
uuid
to allow you to pass a string. The string is then SHA-1 hashed to a UUID. Only valid in RethinkDB >= 2.2. #109 - Added new RethinkDB term
values
. This is analogous to Clojure'svals
function. Only valid in RethinkDB >= 2.2. #110 - Added new RethinkDB query term
server
. This is used to retrieve information about the server you are connected to. #111 - Add new RethinkDB query term
reconfigure
. #78 - Add new RethinkDB query term
wait
. #78
- Support for RethinkDB < 2.0. Changes in RethinkDB 2.2 mean we can't (easily) support changefeeds in versions older than 2.0. The rest of the driver commands should work, but explicit support is being removed.
- clojure.tools.logging support. #72
fn
macro to ClojureScriptrethinkdb.query
namespace. #64rethinkdb.query/order-by
function to ClojureScript. #65rethinkdb.query/default
function, for supplying a default value/function for missing values. 90b58cd
- Change Maven Group ID from
rethinkdb
tocom.apa512
. #102, #92 - Update dependency to Clojure 1.7. #59
- The query parts of this library have been converted to use Clojure 1.7 Reader Conditionals. This means that you can generate queries in ClojureScript and run them on the server (be very careful with this!). #59
- Update protobuf support to RethinkDB 2.1.0.
- Update docstring for
rethinkdb.query/without
. - Update arity and docstring for
rethinkdb.query/merge
to support merging any number of objects. - Add new arity to
rethinkdb.query/index-create
to allow creating simple indexes from field names. #86 - Update
rethinkdb.query/time
arity to only allow 3, 4, 6, and 7 arguments. Also update docstring to make usage clearer. This was already enforced on the server, but will now be enforced by the client library too. #87
- Support for Clojure 1.6 and below
- Add docstring for
rethinkdb.core/close
. #44 - Add alias for
rethinkdb.core/connect
intorethinkdb.query/connect
so you don't need to import therethinkdb.core
namespace. #44 - Add CHANGELOG.md #47
- Added explicit support for RethinkDB 2.0 (It worked before but wasn't documented as such).
- Add new arity for the queries
table-drop
, andtable-list
which doesn't require a db. #54 - Add docstring to
rethinkdb.query
ns explaining DB priority #54 - Exceptions thrown when connecting are more descriptive, and are now of type
clojure.lang.ExceptionInfo
. #41 #56 - Add docstrings to many functions #56
- Fix close method on Connection record #50
- Fix handling of sending CONTINUE queries to RethinkDB when using an implicit db on the connection. Affects any query that returns a Cursor. #52
- Fix reflection warnings #58
0.10.1
is the last release that will support Clojure 1.6. Future release will require Clojure 1.7 or above. This is to allow the use of cljc Reader Conditionals.
NB 0.10.0
was partly released but due to a Clojars snafu 0.10.1
is the recommended release to use.