Marten Takes a Big Step Forward with v0.6

EDIT: Nuget v0.6.1 is already up with some improvements to the async code in Marten. Hat tip to Daniel Marbach for his pull request on that one.

Marten is a new OSS project that seeks to turn Postgresql into a robust, usable document database (and an event store someday) for .Net development. There’s a recording of an internal talk I gave introducing Marten at work live on YouTube for more background.

Marten v0.6 just went live on nuget this afternoon. This turned into a pretty substantial release that I feel makes Marten much more robust, usable, and generally a lot closer to ready for production usage in bigger, more complicated systems.

This release came with substantial contributions from other developers and incorporates feedback from early adopters. I’d like to thank (in no particular order) Jens Pettersson, Corey Kaylor, Bojan Veljanovski, Jeff Doolittle, Phillip Haydon, and Evgeniy Kulakov for their contributions and feedback in this release.

What’s New:

You can see the complete set of changes from the v0.6 milestone on GitHub.

So, what’s next?

More than anything, I’m hoping to get more early adopters giving us feedback (and pull requests!) on what’s missing, what’s not easy to use, and where it needs to change. I think I’ll get the chance to try converting a large project from RavenDb to Marten soon that should help as well.

Feature wise, I think the next couple things up for a future v0.7 release would be:

  • Batched queries (futures)
  • Readside projections, but whether that’s going to be via Javascript, .Net transforms, or both is yet to be determined
  • Using saved queries to avoid unnecessarily taking the hit of Linq expression parsing

5 thoughts on “Marten Takes a Big Step Forward with v0.6

  1. Looking forward to converting my big Ravendb project also to test this out. Probably won’t be able to help with pull requests but certainly chime in with ideas and bug reports.

    I too have had far too much trouble with Ravendb of late.

  2. would be nice to see a blog post how you handled the linq support with the relinq lib. i will be looking into your github code for this, however an intro how to deal with that lib and your experience (as it is badly documented) is very helpful.

    1. @vip3232,

      That might have to start with “do as I say, not as I do.” What’s in there is just a notch over spike caliber code. I should probably be doing almost everything w/ ExpressionVisitor’s instead of if/then checks.

      I’m backed up on blog ideas, but I’ll try to get around to that soonish.

      – Jeremy

Leave a comment