Release 9.19.0 — adopt JasperFx 2.35.0, RaiseSideEffects slice-id docs, fix #5039 - #5040
Merged
Conversation
Bumps the JasperFx family pins (JasperFx, JasperFx.Events, JasperFx.Events.SourceGenerator, JasperFx.SourceGenerator) from 2.34.0 to 2.35.0, which adds the backwards-compatible RaiseSideEffects(TOperations, TId, IEventSlice<TDoc>) overload (#561). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Documents the new RaiseSideEffects(IDocumentOperations, TId, IEventSlice<TDoc>) overload (JasperFx.Events 2.35.0 / #561) for recovering the slice identity of a deleted MultiStreamProjection aggregate whose snapshot is null. Adds a compiled sample_raise_side_effects_with_slice_id snippet backed by a passing test that exercises the null-snapshot delete path end to end through the async daemon. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
A closed generic marker interface (e.g. IMartenStoreMarker<MyContext>) has a CLR type name containing a backtick and arity (IMartenStoreMarker`1), which is not a valid URI hostname, so SecondaryStoreConfig.Build threw UriFormatException when composing the marten:// subject. Strips the arity and folds the sanitized generic argument names into the host segment so distinct closed generics still map to distinct, valid URIs. Adds a regression test covering both the sanitizer and the full AddMartenStore path. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Stages the Marten 9.19.0 release for the coordinated Critter Stack drop.
What's in it
Adopt JasperFx / JasperFx.Events 2.35.0
Bumps the JasperFx family pins (JasperFx, JasperFx.Events, JasperFx.Events.SourceGenerator, JasperFx.SourceGenerator)
2.34.0 → 2.35.0. 2.35.0 adds the backwards-compatible aggregation-projection overloadRaiseSideEffects(TOperations operations, TId id, IEventSlice<TDoc> slice)(#561). The self-pinned dogfoodMartenversion is intentionally left as-is.Docs:
RaiseSideEffectsslice-id overload sampleNew prose + compiled
sample_raise_side_effects_with_slice_idsnippet indocs/events/projections/side-effects.md, backed byraise_side_effects_with_slice_id(EventSourcingTests) which exercises the null-snapshot delete path end to end through the async daemon. Theidparameter lets aMultiStreamProjectionrecover the slice identity to emit a follow-on event / publish a message even whenslice.Snapshot == null(deleted aggregate).Fix #5039 —
UriFormatExceptionfor generic secondary-store markersSecondaryStoreConfig.Buildput the raw CLR type name into themarten://subject URI. A closed generic marker (e.g.IMartenStoreMarker<MyContext>) has a backtick + arity in its name (IMartenStoreMarker\1), which is not a valid URI host →UriFormatException. Now sanitized (arity stripped, generic args folded in so distinct closed generics stay distinct). Regression test inBug_5039_generic_secondary_store_marker`.Version
Directory.Build.props→9.19.0.Verification
side_effects_in_aggregations(7), composite/blue-green side-effect gates (3),Bug_5001_running_on_node_persisted(2),EventSourcingTests.Aggregation(159),Bug_5039_*(2), LINQOperators(203) all green locally on 2.35.0.Issue board
col = NULLinstead ofIS NULL→ silent wrong results on a cache hit). Change-requested; stays open for a follow-up. Does not gate the release (opt-in, unmerged).🤖 Generated with Claude Code
Closes #5039.