<commit_before>Current [semantic](http://semver.org/) version:

```clojure
[com.taoensso/carmine "1.12.0"]       ; Stable, needs Clojure 1.4+ as of 1.9.0
[com.taoensso/carmine "2.0.0-alpha1"] ; Development (notes below)
```

v2 adds API improvements, integration with [Nippy v2](https://github.com/ptaoussanis/nippy) for pluggable compression+crypto, improved performance, additional message queue features, and [Tundra](#tundra) - an API for archiving cold data to an additional datastore.

This is a **mostly** backwards-compatible release. See the [Carmine v2 migration guide](https://github.com/ptaoussanis/carmine/blob/master/MIGRATION-v2.md) for details.

# Carmine, a Clojure Redis client & message queue

[Redis](http://www.redis.io/) is _awesome_ and it's getting [more awesome](http://www.redis.io/commands/eval) [every day](http://redis.io/topics/cluster-spec). It deserves a great Clojure client.

##### Aren't there already a bunch of clients?

Plenty: there's [redis-clojure](https://github.com/tavisrudd/redis-clojure), [clj-redis](https://github.com/mmcgrana/clj-redis) based on [Jedis](https://github.com/xetorthio/jedis), [Accession](https://github.com/abedra/accession), and (the newest) [labs-redis-clojure](https://github.com/wallrat/labs-redis-clojure). Each has its strengths but these strengths often fail to overlap, leaving one with no easy answer to an obvious question: _which one should you use_?

Carmine is an attempt to **cohesively bring together the best bits from each client**. And by bringing together the work of others I'm hoping to encourage more folks to **pool their efforts** and get behind one banner. (Rah-rah and all that).

## What's in the box™?
  * Small, uncomplicated **all-Clojure** library.
  * **Fully documented**, up-to-date API, including **full Redis 2.6 support**.
  * **Great performance**.
  * Industrial strength **connection pooling**.
  * Composable, **first-class command functions**.
  * Flexible, high-performance **binary-safe serialization** using [Nippy](https://github.com/ptaoussanis/nippy).
  * Full support for **Lua scripting**, **Pub/Sub**, etc.
  * Full support for custom **reply parsing**.
  * **Command helpers** (`atomically`, `lua-script`, `sort*`, etc.).
  * **Ring session-store**.<commit_msg>Tweak README<commit_after>Current [semantic](http://semver.org/) version:

```clojure
[com.taoensso/carmine "1.12.0"]       ; Stable, needs Clojure 1.4+ as of 1.9.0
[com.taoensso/carmine "2.0.0-alpha1"] ; Development (notes below)
```

v2 adds API improvements, integration with [Nippy v2](https://github.com/ptaoussanis/nippy) for pluggable compression+crypto, improved performance, additional message queue features, and [Tundra](#tundra) - an API for archiving cold data to an additional datastore. (A [Faraday DynamoDB](https://github.com/ptaoussanis/faraday) implementation is included).

This is a **mostly** backwards-compatible release. See the [Carmine v2 migration guide](https://github.com/ptaoussanis/carmine/blob/master/MIGRATION-v2.md) for details.

# Carmine, a Clojure Redis client & message queue

[Redis](http://www.redis.io/) is _awesome_ and it's getting [more awesome](http://www.redis.io/commands/eval) [every day](http://redis.io/topics/cluster-spec). It deserves a great Clojure client.

##### Aren't there already a bunch of clients?

Plenty: there's [redis-clojure](https://github.com/tavisrudd/redis-clojure), [clj-redis](https://github.com/mmcgrana/clj-redis) based on [Jedis](https://github.com/xetorthio/jedis), [Accession](https://github.com/abedra/accession), and (the newest) [labs-redis-clojure](https://github.com/wallrat/labs-redis-clojure). Each has its strengths but these strengths often fail to overlap, leaving one with no easy answer to an obvious question: _which one should you use_?

Carmine is an attempt to **cohesively bring together the best bits from each client**. And by bringing together the work of others I'm hoping to encourage more folks to **pool their efforts** and get behind one banner. (Rah-rah and all that).

## What's in the box™?
  * Small, uncomplicated **all-Clojure** library.
  * **Fully documented**, up-to-date API, including **full Redis 2.6 support**.
  * **Great performance**.
  * Industrial strength **connection pooling**.
  * Composable, **first-class command functions**.
  * Flexible, high-performance **binary-safe serialization** using [Nippy](https://github.com/ptaoussanis/nippy).
  * Full support for **Lua scripting**, **Pub/Sub**, etc.
  * Full support for custom **reply parsing**.
  * **Command helpers** (`atomically`, `lua-script`, `sort*`, etc.).
  * **Ring session-store**.
{'fraction_non_alphanumeric': 0.14534883720930233, 'fraction_numerical': 0.00818260120585702, 'mean_word_length': 4.777363184079602, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 17, 'lorem ipsum': 0, 'www.': 4, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2688671', 'n_tokens_mistral': 1536, 'n_tokens_neox': 1466, 'n_words': 454}