nippy/CHANGELOG.md

70 lines
2.6 KiB
Markdown
Raw Normal View History

2013-10-19 11:18:31 +00:00
## v2.3.0 → v2.4.1
2013-10-19 08:37:10 +00:00
* Added (alpha) LZMA2 (high-ratio) compressor.
* Bump tools.reader dependency to 0.7.9.
2013-10-17 10:51:06 +00:00
## v2.2.0 → v2.3.0
* Huge (~30%) improvement to freeze time courtesy of Zach Tellman (ztellman).
2013-10-03 14:21:59 +00:00
## v2.1.0 → v2.2.0
2013-08-07 10:59:52 +00:00
* Dropped `:read-eval?`, `:print-dup?` options.
Thanks to James Reeves (weavejester) for these changes!:
* Switched to `tools.reader.edn` for safer reader fallback.
* Added fast binary serialization for Date and UUID types.
* Added fast binary serialization for record types.
2013-07-29 08:59:24 +00:00
## v2.0.0 → v2.1.0
* Exposed low-level fns: `freeze-to-stream!`, `thaw-from-stream!`.
* Added `extend-freeze` and `extend-thaw` for extending to custom types:
2013-08-05 06:36:52 +00:00
2013-07-29 08:59:24 +00:00
* Added support for easily extending Nippy de/serialization to custom types:
2013-08-05 06:36:52 +00:00
```clojure
(defrecord MyType [data])
(nippy/extend-freeze MyType 1 [x steam] (.writeUTF stream (:data x)))
(nippy/extend-thaw 1 [stream] (->MyType (.readUTF stream)))
(nippy/thaw (nippy/freeze (->MyType "Joe"))) => #taoensso.nippy.MyType{:data "Joe"}
```
2013-07-29 08:59:24 +00:00
2013-07-22 16:44:37 +00:00
## v1.2.1 → v2.0.0
2013-07-23 16:21:48 +00:00
* **MIGRATION NOTE**: Please be sure to use `lein clean` to clear old (v1) build artifacts!
2013-06-27 12:01:01 +00:00
* Refactored for huge performance improvements (~40% roundtrip time).
* New header format for better error messages.
* New `taoensso.nippy.tools` ns for easier integration with 3rd-party tools.
* **DEPRECATED**: `freeze-to-bytes` -> `freeze`, `thaw-from-bytes` -> `thaw`.
See the new fn docstrings for updated opts, etc.
* Added pluggable compression support:
```clojure
(freeze "Hello") ; defaults to:
(freeze "Hello" {:compressor taoensso.nippy.compression/snappy-compressor})
;; The :compressor value above can be replaced with nil (no compressor) or
;; an alternative Compressor implementing the appropriate protocol
```
* Added pluggable crypto support:
```clojure
(freeze "Hello") ; defaults to:
(freeze "Hello" {:encryptor taoensso.nippy.encryption/aes128-encryptor}
;; The :encryptor value above can be replaced with nil (no encryptor) or
;; an alternative Encryptor implementing the appropriate protocol
```
See the [README](https://github.com/ptaoussanis/nippy#encryption-currently-in-alpha) for an example using encryption.
## For older versions please see the [commit history][]
[commit history]: https://github.com/ptaoussanis/nippy/commits/master
[API docs]: http://ptaoussanis.github.io/nippy
[Taoensso libs]: https://www.taoensso.com/clojure-libraries
[Nippy GitHub]: https://github.com/ptaoussanis/nippy
[Nippy CHANGELOG]: https://github.com/ptaoussanis/carmine/blob/master/CHANGELOG.md
2013-07-22 16:44:37 +00:00
[Nippy API docs]: http://ptaoussanis.github.io/nippy