Meltdown 1.0.0-beta8 is released
TL;DR
Meltdown is a Clojure interface to Reactor, an asynchronous programming, event passing and stream processing toolkit for the JVM.
1.0.0-beta8
is a development milestone with minor improvements.
Changes between 1.0.0-beta7 and 1.0.0-beta8
Key in Event Payload
Meltdown now includes event key when transforming them into Clojure maps.
Example event map:
{:data {:event delivered}, :reply-to nil, :headers {}, :key events.dummy, :id #uuid "5714bb01-ac7e-11e3-64b3-6b2c231ad83a"}
Changes between 1.0.0-beta6 and 1.0.0-beta7
Match-All Selector
clojurewerkz.meltdown.selectors/predicate
is a new function
that creates a match-all selector (a predicate selector
that unconditionally returns true
).
Predicate Selectors
clojurewerkz.meltdown.selectors/predicate
is a new function
that creates a predicate selector:
(require '[clojurewerkz.meltdown.reactor :as mr])
(require '[clojurewerkz.meltdown.selectors :as ms])
(let [r (mr/create)
;; will filter out events with keys that are
;; odd numbers
sel (ms/predicate even?)]
)
Changes between 1.0.0-beta5 and 1.0.0-beta6
Reactor Update
Reactor is updated to 1.1.0.M2
.
Change log
Meltodwn change log is available on GitHub.
Meltdown is a ClojureWerkz Project
Meltdown is part of the group of libraries known as ClojureWerkz, together with
- Langohr, a Clojure client for RabbitMQ that embraces the AMQP 0.9.1 model
- Elastisch, a Clojure client for ElasticSearch
- Monger, a Clojure MongoDB client for a more civilized age
- Cassaforte, a Clojure Cassandra client
- Titanium, a Clojure graph library
- Neocons, a client for the Neo4J REST API
- Quartzite, a powerful scheduling library
and several others. If you like Meltdown, you may also like our other projects.
Let us know what you think on Twitter or on the Clojure mailing list.
About the Author
Michael on behalf of the ClojureWerkz Team