From 05b424fe33c7ff43aa4d9cdc77fae0075f124285 Mon Sep 17 00:00:00 2001 From: Peter Taoussanis Date: Sat, 5 Apr 2014 18:14:24 +0700 Subject: [PATCH] v2.7.0-alpha1 --- CHANGELOG.md | 20 ++++++++++++++++++++ README.md | 5 +++-- project.clj | 2 +- 3 files changed, 24 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 25345db..b255404 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,23 @@ +## v2.7.0-alpha1 / 2014 Jul 6 + +> **Major release** with significant performance improvements, a new default compression type ([LZ4](http://blog.jpountz.net/post/28092106032/wow-lz4-is-fast)), and better support for a variety of compression/encryption tools. +> +> The data format is fully **backwards-compatible**, the API is backwards compatible **unless** you are using the `:headerless-meta` thaw option. + +### Changes + + * A number of internal performance improvements. + * Added [LZ4](http://blog.jpountz.net/post/28092106032/wow-lz4-is-fast) compressor, **replacing Snappy as the default** (often ~10+% faster with similar compression ratios). **Thanks to [mpenet](https://github.com/mpenet) for his work on this**! + * **BREAKING**: the `thaw` `:headerless-meta` option has been dropped. Its purpose was to provide Nippy v1 compatibility, which is now done automatically. To prevent any surprises, `thaw` calls with this option will now **throw an assertion error**. + * **IMPORTANT**: the `thaw` API has been improved (simplified). The default `:encryptor` and `:compressor` values are now both `:auto`, which'll choose intelligently based on data now included with the Nippy header. Behaviour remains the same for data written without a header: you must specify the correct `:compressor` and `:encryptor` values manually. + * Promoted from Alpha status: `taoensso.nippy.compression` ns, `taoensso.nippy.encryption` ns, `taoensso.nippy.tools` ns, `extend-freeze`, `extend-thaw`. + * All Nippy exceptions are now `ex-info`s. + +### NEW + + * #50: `extend-freeze`, `extend-thaw` can now take arbitrary keyword type ids (see docstrings for more info). + + ## v2.6.3 / 2014 Apr 29 * Fix #48: broken freeze/thaw identity for empty lazy seqs (@vgeshel). diff --git a/README.md b/README.md index b00b106..34aa602 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,11 @@ **[API docs][]** | **[CHANGELOG][]** | [other Clojure libs][] | [Twitter][] | [contact/contributing](#contact--contributing) | current ([semantic][]) version: ```clojure -[com.taoensso/nippy "2.6.3"] ; Stable (please upgrade from v2.6.0 ASAP) +[com.taoensso/nippy "2.6.3"] ; Stable +[com.taoensso/nippy "2.7.0-alpha1"] ; EXPERIMENTAL! May irrevocably eat your data!! ``` -v2.6 is a **major, backwards-compatible release** with: improved performance (incl. frozen data size), a new low-level DataInput/DataOuput API, improved support for headerless freezing, and 1-to-1 binary-value representation guarantees. See the [CHANGELOG][] for details. +v2.7 is a major, **mostly backwards-compatible** release focused on improved performance and a new default compression scheme (LZ4). See the [CHANGELOG][] for details. Thanks to [mpenet](https://github.com/mpenet) for his work on the LZ4 support! # Nippy, a Clojure serialization library diff --git a/project.clj b/project.clj index 71a82eb..8efe3be 100644 --- a/project.clj +++ b/project.clj @@ -1,4 +1,4 @@ -(defproject com.taoensso/nippy "2.6.3" +(defproject com.taoensso/nippy "2.7.0-alpha1" :author "Peter Taoussanis " :description "Clojure serialization library" :url "https://github.com/ptaoussanis/nippy"