We're as proud as this kid's parents must be to release our second beta. We fixed a few bugs and added a few minor features, but most changes were external to Immutant proper. As always, view our road map here.

What is Immutant?

Immutant is an application server for Clojure. It's an integrated platform built on JBoss AS7 that aims to reduce the inherent incidental complexity in real world applications.

What's in this release?

  • Our slim build is even slimmer now (44mb - beta1 was 68mb)!
  • You can now make message listeners non-transactional by passing :xa false to immutant.messaging/listen. This may interest you if your handlers take longer than a minute or so and you don't require rollbacks if your handler tosses an exception.
  • We now allow messages and cache contents to be encoded to byte arrays, mostly to support Ian Eslick's new Fressian codec.

See the complete list of changes below.

A new plugin release

We've also released a new lein-immutant plugin, primarily to show off a nice contribution to our fntest library from Paul Legato: the test task of the plugin will now test any Midje facts it finds in your project.

We had intended to synchronize the versions of Immutant and lein-immutant, releasing both as beta2 today, but we discovered a bug soon after releasing the plugin and had to bump it to beta3.

So be sure and update your ~/.lein/profiles.clj with [lein-immutant "1.0.0.beta3"].

Get It

The simplest way to install or upgrade to 1.0.0.beta2 is via our Leiningen plugin:

$ lein immutant install 1.0.0.beta2

See our install page for more details. Once you have it installed, take a look at our tutorials.

Get In Touch

If you have any questions, issues, or other feedback about Immutant, you can always find us on #immutant on freenode or our mailing lists.

Issues resolved in 1.0.0.beta2

  • [IMMUTANT-229] - Remove dist-bin references in favor of dist-slim, dist-full
  • [IMMUTANT-239] - Remove support for deprecated jobs/schedule signature
  • [IMMUTANT-289] - msg/start throws a CCE if used on a destination defined in xml
  • [IMMUTANT-290] - Switch to real slim build
  • [IMMUTANT-294] - Provide an option to make listeners non-transactional (:xa false)
  • [IMMUTANT-295] - Immutant does not handle development network changes easily
  • [IMMUTANT-296] - Update to core.memoize 0.5.5
  • [IMMUTANT-299] - Update to lein-core 2.2.0
  • [IMMUTANT-301] - Cut a polyglot release before we release
  • [IMMUTANT-302] - Support the caching of byte[]'s