Repository navigation
Fixed typo and capitalization - #890
Merged
Merged
Conversation
Member
|
Got it, thank you |
jeremydmiller
added a commit
that referenced
this pull request
Sep 27, 2026
JasperFx 2.75.0 carries the three changes filed out of #5495, all of which reach a Marten consumer through Marten's own package: - #887/#890 — the source generator now emits [assembly: JasperFxSourceGeneratorApplied] from RegisterPostInitializationOutput, so an assembly it processed is distinguishable at runtime from one it never saw. - #891/#895 — two copies of the generator in one compilation no longer collide with CS0433. Verified end-to-end against a locally packed Marten 9.39.1: a project that references the standalone analyzer package at the SAME version Marten bundles used to fail the build, and now compiles with one generator copy handed to csc. - #892/#896 — the opt-in JasperFxEventsRequireSourceGenerator property turns a missing analyzer into build error JFXEVT900. Its targets live in JasperFx.Events's buildTransitive folder and do reach a consumer through a store package whose dependency carries exclude="Build,Analyzers". #889 is the one behaviour change: the source-generated DetermineAction now decides one action per batch rather than per event. EventSourcingTests, which is enrolled in StreamArchivingCompliance, is green on it. Weasel 9.35.1 is EF Core and SQL Server work (weasel#625, #627, #628, #629, #631, #632) plus weasel#624. Nothing in it touches the Postgres paths Marten drives, and the suites that would notice are green. #5495 is NOT closed by this bump — see the PR description. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01481eiEZg1Bv6pu4DrgPRg3
jeremydmiller
added a commit
that referenced
this pull request
Sep 27, 2026
* Bump JasperFx to 2.75.0 and Weasel to 9.35.1 JasperFx 2.75.0 carries the three changes filed out of #5495, all of which reach a Marten consumer through Marten's own package: - #887/#890 — the source generator now emits [assembly: JasperFxSourceGeneratorApplied] from RegisterPostInitializationOutput, so an assembly it processed is distinguishable at runtime from one it never saw. - #891/#895 — two copies of the generator in one compilation no longer collide with CS0433. Verified end-to-end against a locally packed Marten 9.39.1: a project that references the standalone analyzer package at the SAME version Marten bundles used to fail the build, and now compiles with one generator copy handed to csc. - #892/#896 — the opt-in JasperFxEventsRequireSourceGenerator property turns a missing analyzer into build error JFXEVT900. Its targets live in JasperFx.Events's buildTransitive folder and do reach a consumer through a store package whose dependency carries exclude="Build,Analyzers". #889 is the one behaviour change: the source-generated DetermineAction now decides one action per batch rather than per event. EventSourcingTests, which is enrolled in StreamArchivingCompliance, is green on it. Weasel 9.35.1 is EF Core and SQL Server work (weasel#625, #627, #628, #629, #631, #632) plus weasel#624. Nothing in it touches the Postgres paths Marten drives, and the suites that would notice are green. #5495 is NOT closed by this bump — see the PR description. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01481eiEZg1Bv6pu4DrgPRg3 * Take JasperFx 2.75.1, and install the commit listeners the compliance suites register #905 repairs two facts 2.75.0 shipped wrong: the tenanted-concurrency fact contradicted itself, and the phantom-delete fact passed without discriminating. Adding its control half turned stream_archiving_compliance red here, which is the gap working as intended. The cause was in Marten's own harness, not the product. The suite registers its IDocumentCommitListener on ComplianceStoreConfig (#893) and then asserts on what the listener saw, but MartenComplianceFixture never installed one -- so every commit-listener fact was passing vacuously. "No phantom deletion was reported" is trivially true of a store that reports nothing at all, and that is exactly what the new control was written to catch. With the listener actually running, both halves pass: Marten does not report a phantom deletion for a document created and deleted inside one batch, and does report the real one. No product change was needed. The hand-built fixture store has no container, so it applies DocumentCommitListenerAdapter directly; the hosted coordinator store registers the listener in DI, which is the path a real application uses. Also rides in 2.75.1: #900/#904 stops a Block worker inheriting Activity.Current from construction time, which changes span parentage in daemon traces (the same class of bug as #5465), and #887/#901, test-only. EventSourcingTests 2330 tests, 0 failed. CoreTests unchanged at its 4 pre-existing failures. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01481eiEZg1Bv6pu4DrgPRg3 * Take JasperFx 2.75.2 and Weasel 9.35.2, which unblocks #5495 #906/#907 fixes the inverted marker verdict this PR reported. The evidence list now excludes a constructed generic projection type, so Snapshot<T>() / SingleStreamProjection<T, TId> / AggregateStream<T> no longer let Marten.dll's own marker answer a question about the user's build. Verified against a Marten packed from this branch, in the #5495 topology (aggregate in an assembly the analyzer never ran over, registered through SingleStreamProjection<T, Guid>). The message now names the real cause: "The JasperFx.Events source generator left no trace in assembly App -- no marker attribute and no generated registration -- so it most likely never ran there. Reference Marten (or JasperFx.Events.SourceGenerator) directly from that project, and check the reference chain for ExcludeAssets="analyzers" or PrivateAssets="all" ..." Before the fix that same call reported "DID run ... this is a code-shape problem, not a build configuration one", which is the opposite of the truth for this shape. The fix keeps the Any quantifier rather than switching to All, which matters: a user-declared MyProjection : SingleStreamProjection<Agg, Guid> does get its evolver emitted into its own assembly, so confirmation there is genuine even when the aggregate's assembly has no marker. Also in 2.75.2: #902 warns JFXEVT902 when two analyzer copies are present and the dedupe is opted out, and puts an explanation of the CS0433 into the generated marker file -- the only thing that reaches a compilation running none of our targets. #908 imports and exercises the shipped MSBuild targets in JasperFx's own CI. Weasel 9.35.2 is weasel#634: an exhausted DropSchema retry is reported instead of returning success. EventSourcingTests 2330/0 failed. DocumentDbTests 1114/0. CoreTests unchanged at its pre-existing set. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01481eiEZg1Bv6pu4DrgPRg3 --------- Co-authored-by: Claude Opus 5 (1M context) <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.
No description provided.