chore: Bump Marten and WolverineFx.Marten#279
Closed
dependabot[bot] wants to merge 1 commit into
Closed
Conversation
Bumps Marten from 8.37.1 to 9.2.0 Bumps WolverineFx.Marten from 5.39.3 to 6.2.1 --- updated-dependencies: - dependency-name: Marten dependency-version: 9.2.0 dependency-type: direct:production update-type: version-update:semver-major - dependency-name: WolverineFx.Marten dependency-version: 6.2.1 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
Contributor
Author
|
Looks like these dependencies are updatable in another way, so this is no longer needed. |
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.
Updated Marten from 8.37.1 to 9.2.0.
Release notes
Sourced from Marten's releases.
9.2.0
Marten 9.2.0
Features & changes
IEventStore.AllDatabases()onDocumentStore(#4570, #4571). Implements the store-agnostic database accessor added toJasperFx.Events.IEventStore. Delegates straight toITenancy(mirroringIMartenStorage.AllDatabases()) and projects toIEventDatabase, so store-neutral monitoring/tooling can reach every database to call the read abstractions (AllProjectionProgress,FetchDeadLetterCountsAsync/CountDeadLetterEventsAsync) even when onlyIEventStoreis registered in DI.Dependencies
JasperFx.*packages to 2.2.0 (JasperFx,JasperFx.Events,JasperFx.Events.SourceGenerator,JasperFx.SourceGenerator).Full Changelog: JasperFx/marten@V9.0.2...V9.2.0
9.0.2
Marten 9.0.2
A patch release that fixes #4557 — self-aggregating projections failing for consumers that reference only the
Martenpackage.Fixes
#4557 — Self-aggregating projections now work out of the box. Marten 9 dispatches conventional
Apply/Create/ShouldDeleteprojection methods through the compile-timeJasperFx.Events.SourceGeneratorand has no runtime fallback, but the generator shipped as aDevelopmentDependencyand never flowed to a consumer that only referenced theMartenpackage — surfacing asInvalidProjectionException: No source-generated dispatcher found ...atDocumentStore.For(...). Marten now bundles the analyzer in its own NuGet package, so a plain<PackageReference Include="Marten" />runs the generator automatically. (#4558)Self-aggregating
recordaggregates work without aSnapshot<T>call site and withoutpartial. BumpedJasperFx.Events/JasperFx.Events.SourceGeneratorto 2.1.1 (JasperFx/jasperfx#367): the generator now emits a self-aggregating evolver for arecordfrom its own declaration (parity with classes), which also fixes the cross-assembly case where the aggregate type is defined in a different assembly than its registration.Docs. Corrected the migration guide's projection section, which incorrectly stated Marten falls back to a runtime evolver lookup for non-
partialconvention projections; documented that self-aggregatingSnapshot<T>types do not need to bepartial(only projection subclasses do).Dependency bumps
JasperFx.Events2.1.0 → 2.1.1JasperFx.Events.SourceGenerator2.1.0 → 2.1.1No public API changes from 9.0.1.
9.0.1
Marten 9.0.1
A patch release on the Critter Stack 2026 foundation, rolling up the latest JasperFx 2.0.1 / JasperFx.Events 2.1.0 / Weasel 9.0.1 dependencies along with several source-generator and reliability fixes.
Foundation bumps
Fixes
requiredmembers on self-aggregating snapshot types no longer break generated evolver construction;default!is emitted only when a public parameterless constructor exists, otherwiseRuntimeHelpers.GetUninitializedObjectis used.[ReadAggregate]aggregate parameters generate correctly.IEventDatabasedead-letter count reads (CountDeadLetterEventsAsync/FetchDeadLetterCountsAsync) are implemented onMartenDatabasevia LINQ over theDeadLetterEventdocument.SystemTextJsonSerializer.UseTypeInfoResolver) for AOT/trimming-friendly metadata.feature_flag_positiveadvisory-lock contention (distinctApplyChangesLockId, #4553) and the conjoined multi-tenantquery_before_savingXX000: tuple concurrently updatedmigration-DDL race (resolved upstream in Weasel 9.0.1 / weasel#293).No public API breaking changes from 9.0.0.
RestoreV8Defaults()continues to revert the 9.0 default flips.9.0.0
Marten 9.0.0 — Critter Stack 2026
The headline release of the Critter Stack 2026 wave, on the final JasperFx 2.0 + Weasel 9.0 foundation.
Highlights
net9.0;net10.0.JasperFx.RuntimeCompileris no longer a dependency. Document/event storage is hand-written closed-shape; compiled queries useMarten.SourceGenerator. Nocodegen writestep for Marten.Staticmode; lazy document-mapping materialization; per-query handler-factory caching.IStorageOperationrebased onWeasel.Core; async-daemon distributor concretes consumed fromJasperFx.Events.Daemon;OperationRole/BulkInsertModerelocated toWeasel.Core.QuickWithServerTimestampsappend mode, advanced async tracking, bigint events, lightweight default sessions, System.Text.Json default — all revertable viaRestoreV8Defaults().IRevisioned.Versionstaysint(V8-compatible); newILongVersioned(long) forMultiStreamProjectiondocuments.FetchForWritingByTags<T>for identity-less boundary aggregates.See the migration guide (
docs/migration-guide.md). Master plan: marten#4349. Ships in lockstep with Polecat 4.0.Commits viewable in compare view.
Updated WolverineFx.Marten from 5.39.3 to 6.2.1.
Release notes
Sourced from WolverineFx.Marten's releases.
6.2.1
Patch release picking up upstream JasperFx 2.2.1 fixes. No Wolverine code changes — pure dependency bump.
Bumped pins
JasperFxJasperFx.EventsJasperFx.Events.SourceGeneratorJasperFx.SourceGeneratorUnchanged
JasperFx.RuntimeCompilerRelated links
6.2.0
Bug-fix + feature release on top of 6.1.0 — 13 PRs.
✨ New features
Custom
Result<T>Support — #2952 (refs #2221)First three phases of native
Result<T>-style handler return-value support:ResultPolicyregistry, handler-side unwrapping seams, and caller-sideInvokeAsync<T>unwrap. Lays the groundwork for integrating with libraries likeErrorOr,OneOf,FluentResults, etc.DbContext Abstractions for EF Core Transaction Middleware — #2919, #2954
The EF Core transaction middleware now binds correctly when handler parameters are declared as interface or abstract base abstractions over a concrete
DbContext. Multiple abstractions to the sameDbContextare supported in a single handler — the runtime resolves them all to the same scoped instance, and the transaction still auto-applies.📖 DbContext Abstractions docs
🚀 Performance
Outgoing Envelope Pooling — #2956 (closes #2955)
MessageRouter.RouteForPublishnow acquires from the runtime envelope pool (originally introduced in #2741 for the Executor sites in 6.1.0) when the route's sender is anInlineSendingAgentorBufferedSendingAgent. Measured −504 B/op (−90 %) on the transport-bound publish/send paths in the CritterStackScalability harness, with ~10× fewer Gen0 collections per 1k ops.DurableSendingAgent, local-queue agents, andISenderRequiresCallbacksenders are explicitly excluded — different lifecycle plumbing required, tracked as follow-ups.🐛 Bug fixes
Marten / Polecat
[ReadAggregate]/[DocumentExists]handlers (closes #2941).chain.AncillaryStoreTypein Phase A so the inbox-routing map sees[MartenStore](closes #2944).Persistence (Postgres / MySQL)
PostgresqlQueueidentifiers through Weasel'sPostgresqlIdentifier.Shorten()so long queue names don't overflow Postgres's 63-byte identifier limit (closes #2942).PersistNodeRecordSQL with unquoted schema (MySQL, closes #2940).Pulsar
KeyNotFoundExceptionacking batch messages on partitioned topics (supersedes #2883).Distributed agents
InvokeAsync<T>reply timeout 10 s → 30 s (closes #2949).Quality
📖 Documentation
📦 Dependency bumps
Full changelog: JasperFx/wolverine@V6.1.0...V6.2.0
... (truncated)
6.1.0
Wolverine 6.1.0
Minor release. Critter Stack dependency refresh, plus the rollup of the entire post-6.0.0
6.0.xline — most significantly the AOT runtime-scanning-elimination work and a new command-line handler-discovery diagnostic.Dependencies
9.0.1→9.2.02.1.3→2.2.0(#2938)4.1.1(unchanged — already latest)5.0.0(unchanged — own 5.x line)Marten 9.2.0 now bundles
JasperFx.Events.SourceGeneratoras an analyzer, so projects referencingWolverine.Martenreceive it transitively. The previously-explicit analyzer references were dropped from the 8 Marten-referencing projects to avoid running the generator twice, which produced duplicateEvolve/*Evolverbuild errors (#2939).PolecatTestsretains its explicit reference because Polecat does not bundle the generator.New & Noteworthy
AOT: eliminate runtime assembly scanning — AOT Publishing. Static-mode apps no longer scan assemblies at startup; discovery now flows through source-generated manifests:
[WolverineHandlerModule]assemblies, with no filesystem probe — #2905 / #2935TypeQuery— #2909 / #2932GetTypes()scan — #2908 / #2936Command-line handler-discovery diagnostic — Command Line Integration · Command Line Diagnostics tutorial. New
dotnet run -- wolverine-diagnostics describe-handlers <Type>runsDescribeHandlerMatchfrom the CLI so you can troubleshoot handler discovery without editing your bootstrapping code — #2921 / #2923Build-time OpenAPI generation — Command Line Integration.
dotnet run -- openapigenerates the OpenAPI document without starting the host (no database/broker required) — #2903 / #2911SQS fair queues on standard queues — support
MessageGroupIdon standard Amazon SQS queues — #2886 / #2889SignalR
ClaimsPrincipal— the connection'sClaimsPrincipalis now exposed onSignalREnvelope— #2927 / #2937EF Core transactional outbox timing fix — the EF Core transaction and outbox flush now complete before the HTTP response is written — #2917 / #2920
Mixed-lifetime
IEnumerable<T>support; Lamar removed — handlers depending on a mixed singleton/scopedIEnumerable<T>now resolve every element correctly; Lamar is no longer used or supported, and the built-inServiceProvideris the container — #2896 / #2914Aggregate handler naming clarity — clarified and guarded the
*AggregateHandlernaming convention vs.[ReadAggregate]— #2924Production code-generation guidance — Code Generation. How to drop Roslyn from production images, with a linked
CqrsMinimalApisample — #2900 / #2912Bug fixes
Senderroutes built during description mode — #2897 / #2899What's Changed
... (truncated)
6.0.0
Wolverine 6.0.0 — Critter Stack 2026
The messaging/orchestration release completing the Critter Stack 2026 wave, on the final foundation (JasperFx 2.0 / Weasel 9.0 / Marten 9.0 / Polecat 4.0).
Highlights
net9.0;net10.0.WolverineFxno longer ships Roslyn. Apps in the defaultTypeLoadMode.Dynamicmust addWolverineFx.RuntimeCompilation, or pre-generate viacodegen write+TypeLoadMode.Static(the trimmer then drops Roslyn). See the migration guide.ServiceLocationPolicy.NotAllowedis the default (BREAKING) — restructure registrations, allow-list per type, or callopts.RestoreV5Defaults()to revert.IsAotCompatible=true(except the intentionalWolverineFx.RuntimeCompilation); Static-mode publish drops Roslyn.WolverineFx.Newtonsoft/WolverineFx.Http.Newtonsoft;IForwardsTo<T>discovery now explicit; removed[Obsolete]APIs (EventForwardingToWolverine,RedisTransport.BuildRedisStreamUri,PulsarEndpoint.UriFor).Migration guide: https://wolverinefx.net/guide/migration.html (or
docs/guide/migration.md). Master plan: wolverine#2715. Remaining release-cut comms items tracked in #2745.Commits viewable in compare view.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)