Shipped · Databases

What JasperFx/marten shipped

The public repository of Martendb · github.com/JasperFx/marten

Written by FoxPlug from the repository's own releases; not affiliated with Martendb. Paste your own repository in the box below and FoxPlug writes the same weekly update for your product. This page is an automatic summary of the releases, pull requests and commits in github.com/JasperFx/marten; Martendb did not write it and does not use or endorse FoxPlug. Every line links to the change it describes.

Get a weekly update like this for your product, free

Or Use it as a GitHub Action

See the update FoxPlug writes for marten, free

Week of November 2, 2026

What shipped

Why it matters

This week closed several correctness problems in released behavior: archived events showing up in DCB tag queries, double event application on a repeated Async fetch, and composite rebuilds leaving member progress behind. Cursor paging became reliable for nullable and value type keys, and a stream that folds to null stops losing its history. It also landed the 9.58.0 release on JasperFx 2.100.0 and Weasel 9.49.0.

Changelog entry

Example posts FoxPlug drafted from these changes. Not written or posted by the project.

Post for X

Marten 9.58.0 is out on JasperFx 2.100.0 and Weasel 9.49.0, with per-tenant composite rebuilds fixed. Also this week: DCB tag queries skip archived events, repeated Async fetches stop double-applying events, and cursor paging handles nullable and value type keys.

Post for LinkedIn

Marten 9.58.0 shipped this week, moving to JasperFx 2.100.0 and Weasel 9.49.0 and making per-tenant composite rebuilds work on per-tenant partitioned stores. Alongside it, several correctness fixes landed: DCB tag queries now exclude archived events, a repeated Async-lifecycle fetch no longer folds events onto the same document twice, and a per-tenant rebuild resets each composite member's progression. Cursor paging now handles nullable leading sort keys and strong-typed id keys, a stream that folds to null keeps its history, and a custom IMartenLogger no longer silences logging. EventStoreUsage also reports the event store's TenancyStyle.

Week of October 26, 2026

What shipped

Why it matters

This week brought a new raw event query API on the event store and fixes for culture-dependent naming, a HiLo outage recovery problem, and projection version tracking. Users querying events directly get a supported IQueryable entry point, and users on non-invariant cultures or running diagnostics get more predictable behavior. Several releases shipped, so upgrading brings these fixes together.

Changelog entry

Example posts FoxPlug drafted from these changes. Not written or posted by the project.

Post for X

Marten 9.56.0 is out. Raw event queries now support IQueryable through IReadOnlyEventStore.QueryRawEvents. Also in this week: culture-invariant document aliases and DDL names, HiLo factory failures no longer cached across an outage, and projection version tokens move on every wri

Post for LinkedIn

Marten 9.56.0 shipped this week. IReadOnlyEventStore.QueryRawEvents now supports IQueryable, with tenant rules matching the other event store queries. Fixes landed for culture-dependent identifiers: document aliases, DDL template lookups and flat-table upsert function names now use invariant culture, which matters under Turkish and Azerbaijani cultures when names contain an uppercase I. A failed HiLo factory build is no longer cached across an outage, so sequence generation recovers when the database returns. Subclass queries resolve nested duplicated fields to their columns, verbose tracing now emits marten.append.event on the Quick append routes, and the diagnostics writer moves a projection document's version token on every write.

Week of October 19, 2026

What shipped

Why it matters

This week reached people using the event store in multi-tenant setups, where removing or re-adding tenants and per-tenant subscriptions got several fixes. It also filled in the JasperFx members behind the document and event store explorers, and closed a set of smaller bugs around compaction, tenant removal and cancelled saves.

Changelog entry

Example posts FoxPlug drafted from these changes. Not written or posted by the project.

Post for X

Marten 9.51 through 9.54 shipped this week: UndeleteDocumentAsync and QueryEventData<T>, tenant removal fixes under per-tenant partitioning, false ConcurrencyException fixes, Contains() with array literals in LINQ, and a cancelled save no longer left idle in transaction.

Post for LinkedIn

This week Marten shipped releases 9.51 through 9.54. UndeleteDocumentAsync restores a soft-deleted document, and QueryEventData<T> adds store-agnostic LINQ over event bodies, along with metadata ordering and projection start floors behind SubscribeFromFirstRun. Multi-tenant setups got several fixes: removing a tenant now clears its natural-key and DCB tag rows before the partition drop, and compacting streams with DCB tags works again. UndoDeleteWhere and HardDeleteWhere no longer raise a false ConcurrencyException, an inline array literal works in LINQ Contains(), and a save cancelled before COMMIT now rolls back instead of sitting idle in transaction.

Week of October 12, 2026

What shipped

Why it matters

This week's release, 9.50.3, is the one to read first: it brings Native AOT and hard stream delete, plus schema-naming fixes and behavior changes that users need to check before upgrading. Alongside it, a run of query fixes removes wrong TotalResults counts and broken Include() joins on the document's own id. Several smaller changes cut needless database round trips and correct foreign key and tenancy handling.

Changelog entry

Example posts FoxPlug drafted from these changes. Not written or posted by the project.

Post for X

Marten 9.50.3 is out: Native AOT, hard stream delete via TombstoneStream, two schema-naming fixes and three behavior changes to check before upgrading. Also this week: TotalResults now counts matches, and Include() joins on the document's own id no longer fail.

Post for LinkedIn

Marten 9.50.3 is out. It adds Native AOT support and hard stream delete through TombstoneStream, along with two schema-naming fixes that could not be worked around and three behavior changes worth reading before you upgrade. The rest of the week was mostly correctness: Stats() with Include(), Select() and Take() now returns the number of matches instead of the page size, and Include() joined on the queried document's own id no longer fails with a missing column error. A few queries that always returned nothing now skip the database entirely, and a custom foreign key name is kept under conjoined tenancy.

Week of October 5, 2026

What shipped

Why it matters

This week focused on making the LINQ projection path usable under Native AOT and on closing consistency gaps in async fetches. It also fixed concrete production problems, including repeated pages in keyset paging and inline EF Core projections losing their row to a retried commit. Several releases shipped together, so the changelog and behavior notes are worth reading before upgrading.

Changelog entry

Example posts FoxPlug drafted from these changes. Not written or posted by the project.

Post for X

Marten 9.49.0 makes LINQ projections work under Native AOT. 9.48.0 adds document diagnostics filtering and ordering. Also fixed repeated keyset pages with NodaTime sort keys, grouped Count with a predicate, and async fetch consistency gaps.

Post for LinkedIn

Marten shipped several releases this week. 9.49.0 makes LINQ projections into new objects and structs work under Native AOT, with projection select clauses resolved without runtime code generation. 9.48.0 lets IDocumentStoreDiagnostics.QueryDocumentsAsync apply Where, OrderBy and Arguments. We also fixed keyset cursor paging repeating the first page when a sort key is a NodaTime type, Count and LongCount with a predicate inside grouped projections, a quick-mode StartStream collision throwing a raw duplicate key error, and async fetches whose snapshot and delta reads disagree returning a null or stale aggregate. Inline EF Core projections now use one pooled connection per save and no longer lose their row to a retried commit. 9.47.0 changed FetchForWriting and FetchLatest consistency behavi

Week of September 28, 2026

What shipped

Why it matters

This week brings critical fixes for Native AOT support, resiliency improvements that surface previously hidden failures, and data integrity fixes for concurrent operations. The shift toward explicit error handling in retry paths and connection lifecycle management makes failure modes visible, helping developers catch issues earlier.

Changelog entry

Example posts FoxPlug drafted from these changes. Not written or posted by the project.

Post for X

Marten 9.46.0: Native AOT resiliency improvements, timeout retry changes, and failure visibility. Five behaviour changes surface issues previously absorbed. See the release notes for details on upgrade impact.

Post for LinkedIn

Marten 9.46.0 focuses on resiliency and Native AOT. Command timeouts no longer retry automatically on reads—they now reach application code on first attempt. Strong-typed document IDs work under Native AOT, connection lifetimes track failure states, and the daemon's event loader stops double-retrying. Five behaviour changes worth reviewing if you upgrade.

Week of September 21, 2026

What shipped

Why it matters

This week delivers tenant identity consistency fixes across multiple code paths, correctness improvements for projection progress tracking and LINQ queries, and documentation updates for contributors. These fixes address real production issues and edge cases in event sourcing, tenancy, and query projection.

Changelog entry

Example posts FoxPlug drafted from these changes. Not written or posted by the project.

Post for X

Marten 9.40.0: tenant id consistency fixes, projection progress row count check, GroupJoin/SelectMany LINQ correction, and Select() null handling. Read the release notes for the archiving behaviour change if you use projections.

Post for LinkedIn

Marten 9.40.0 ships this week with fixes across tenancy, projections, and LINQ queries. Tenant id handling is now consistent at all boundaries where ids are stamped or keyed. Projection progress tracking checks every write instead of just the first. GroupJoin().SelectMany() outer projections work correctly. Select() projections no longer embed explicit JSON nulls for absent keys. The README is updated for current contributor workflows. One behaviour change: archiving projections now decides one action per batch rather than per event.

Week of September 14, 2026

What shipped

Why it matters

Marten.PgVector was shipped in 9.36.0 but contained silent correctness bugs where searches returned wrong rows. 9.37.0 audited the entire search surface and fixed eighteen issues discovered in that audit. The alignment with JasperFx's shared vector contracts means application code can now use a single API across multiple stores.

Changelog entry

Example posts FoxPlug drafted from these changes. Not written or posted by the project.

Post for X

Marten 9.37.0: fixed eighteen silent correctness bugs in vector and hybrid search found by auditing the surface 9.36.0 shipped. Searches returned wrong rows in plausible order. All fixed.

Post for LinkedIn

Marten 9.37.0 shipped this week with eighteen correctness fixes for vector and hybrid search. Every bug was silent—searches returned plausible answers in the right order, but they were wrong. The 9.36.0 release introduced PgVector search; 9.37.0 audited the entire surface and fixed what it found. Marten.PgVector now shares JasperFx's store-neutral vector contracts, aligning with other stores on one API.

Weeks with too little public activity are left out rather than filled in. Last updated 2026-11-10.

Is this your repo? Ask us to remove this page.