Skip to content

chore: Bump the nuget-all group with 21 updates#251

Open
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/nuget/dot-config/main/nuget-all-b3f6822643
Open

chore: Bump the nuget-all group with 21 updates#251
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/nuget/dot-config/main/nuget-all-b3f6822643

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot Bot commented on behalf of github May 1, 2026

Updated dotnet-ef from 10.0.2 to 10.0.7.

Release notes

Sourced from dotnet-ef's releases.

No release notes found for this version range.

Commits viewable in compare view.

Updated Finbuckle.MultiTenant from 10.0.6 to 10.0.7.

Release notes

Sourced from Finbuckle.MultiTenant's releases.

10.0.7

10.0.7 (2026-04-29)

Bug Fixes

Commits viewable in compare view.

Updated Finbuckle.MultiTenant.AspNetCore from 10.0.6 to 10.0.7.

Release notes

Sourced from Finbuckle.MultiTenant.AspNetCore's releases.

10.0.7

10.0.7 (2026-04-29)

Bug Fixes

Commits viewable in compare view.

Updated Finbuckle.MultiTenant.EntityFrameworkCore from 10.0.6 to 10.0.7.

Release notes

Sourced from Finbuckle.MultiTenant.EntityFrameworkCore's releases.

10.0.7

10.0.7 (2026-04-29)

Bug Fixes

Commits viewable in compare view.

Updated Grpc.Core.Api from 2.76.0 to 2.80.0.

Release notes

Sourced from Grpc.Core.Api's releases.

2.80.0-pre1

What's Changed

New Contributors

Full Changelog: grpc/grpc-dotnet@v2.76.0...v2.80.0-pre1

Commits viewable in compare view.

Updated Grpc.Net.ClientFactory from 2.76.0 to 2.80.0.

Release notes

Sourced from Grpc.Net.ClientFactory's releases.

2.80.0-pre1

What's Changed

New Contributors

Full Changelog: grpc/grpc-dotnet@v2.76.0...v2.80.0-pre1

Commits viewable in compare view.

Updated Meziantou.Analyzer from 3.0.54 to 3.0.58.

Release notes

Sourced from Meziantou.Analyzer's releases.

3.0.58

NuGet package: https://www.nuget.org/packages/Meziantou.Analyzer/3.0.58

What's Changed

Full Changelog: meziantou/Meziantou.Analyzer@3.0.57...3.0.58

3.0.57

NuGet package: https://www.nuget.org/packages/Meziantou.Analyzer/3.0.57

What's Changed

Full Changelog: meziantou/Meziantou.Analyzer@3.0.56...3.0.57

3.0.56

NuGet package: https://www.nuget.org/packages/Meziantou.Analyzer/3.0.56

What's Changed

Full Changelog: meziantou/Meziantou.Analyzer@3.0.55...3.0.56

3.0.55

NuGet package: https://www.nuget.org/packages/Meziantou.Analyzer/3.0.55

What's Changed

Full Changelog: meziantou/Meziantou.Analyzer@3.0.54...3.0.55

Commits viewable in compare view.

Updated Microsoft.TestPlatform from 18.4.0 to 18.5.1.

Release notes

Sourced from Microsoft.TestPlatform's releases.

18.5.1

What's Changed

Full Changelog: microsoft/vstest@v18.5.0...v18.5.1

18.5.0

⚠️ Unlisted on Nuget, because of #​15718

What's Changed

Full Changelog: microsoft/vstest@v18.4.0...v18.5.0

Commits viewable in compare view.

Updated Scalar.AspNetCore from 2.13.8 to 2.14.9.

Release notes

Sourced from Scalar.AspNetCore's releases.

No release notes found for this version range.

Commits viewable in compare view.

Updated Scalar.AspNetCore.Microsoft from 2.13.8 to 2.14.9.

Release notes

Sourced from Scalar.AspNetCore.Microsoft's releases.

No release notes found for this version range.

Commits viewable in compare view.

Updated SonarAnalyzer.CSharp from 10.24.0.138807 to 10.25.0.139117.

Release notes

Sourced from SonarAnalyzer.CSharp's releases.

10.25

?

Feature

  • NET-3613 - Support Cobertura coverage file format
    • Cobertura report paths can be passed via the sonar.cs.cobertura.reportsPaths parameter
  • NET-3665 - Update RSPEC before 10.25 release

False Positive

  • NET-3640 - Fix S3400 FP: Don't report function with conditional compilation body

Commits viewable in compare view.

Updated System.IdentityModel.Tokens.Jwt from 8.17.0 to 8.18.0.

Release notes

Sourced from System.IdentityModel.Tokens.Jwt's releases.

No release notes found for this version range.

Commits viewable in compare view.

Updated WolverineFx from 5.32.1 to 5.35.2.

Release notes

Sourced from WolverineFx's releases.

5.35.2

What's Changed

A small bug-fix and dependency-refresh release.

Persistence fixes

  • Oracle: timestamp default expressions now survive non-UTC DB sessions (#​2634) — OracleMessageStore.Initialize and the surrounding schema declared timestamp columns (health_check, started, posted, etc.) with a DEFAULT of SYS_EXTRACT_UTC(SYSTIMESTAMP). That returns a TIMESTAMP without a time zone, and when implicitly cast into the TIMESTAMP WITH TIME ZONE column Oracle stamps it with the session time zone — so for any session in UTC+N the just-persisted value's UTC equivalent was N hours in the past. That tripped the NodeAgentController.DoHealthChecksAsync staleness filter and surfaced as a NullReferenceException during the first leadership-election heartbeat (self!.AssignAgents([LeaderUri]) on a null self). All 18 occurrences swapped to SYSTIMESTAMP AT TIME ZONE 'UTC', with quote-doubling for the DDL contexts that go through Weasel's EXECUTE IMMEDIATE '...' wrapper.

Reliability hardening

  • Lock dbcontrol:// and oraclecontrol:// endpoints to BufferedInMemory (#​2637) — the database-backed control transport carries inter-node leader-election and agent-reassignment commands. Marking either endpoint Durable would route every control envelope through the same store-backed inbox/outbox the durability agent itself owns (deadlock); marking it Inline contradicts the batched-poll semantics. Both DatabaseControlEndpoint and OracleControlEndpoint now override supportsMode so any policy that tries to flip them off BufferedInMemory either silently skips (UseDurableInboxOnAllListeners, UseDurableOutboxOnAllSendingEndpoints, etc., already check SupportsMode) or fails fast with a clear InvalidOperationException.

Source-gen / startup

  • Aggregate IWolverineTypeLoader across all known assemblies (#​2632) by @​devployment — since 5.34.0, hosts on the source-generated codegen path silently dropped handlers that lived in referenced assemblies because tryDiscoverTypeLoaderFromAttribute only inspected Options.ApplicationAssembly. First invocation of one of those handlers threw IndeterminateRoutesException. The runtime now walks ApplicationAssembly and every assembly in Discovery.Assemblies, collects every [WolverineTypeManifest] loader it finds, and exposes their union via the new internal CompositeWolverineTypeLoader. Existing single-loader semantics are preserved when only one manifest is found.

Other

  • Saga timeout flag + scheduled-dispatch Activity tag (#​2631) by @​jeremydmiller — surfaces saga timeout and scheduled-dispatch metadata so the upcoming CritterWatch saga visualization can render in-flight saga state.

Dependencies

  • Bump JasperFx 1.28.0 → 1.28.2 and JasperFx.Events 1.29.0 → 1.31.1 (#​2638).

Full Changelog: JasperFx/wolverine@V5.35.1...V5.35.2

5.35.1

What's Changed

A bug-fix and small-feature release covering Oracle-in-Balanced-mode startup, a duplicate-poller defect on RavenDb, an AWS SQS sharded-slot naming fix, and a new SagaDescriptor surface for CritterWatch.

Persistence fixes

  • Oracle in DurabilityMode.Balanced now boots (#​2622) — OracleMessageStore.Initialize was a no-op, so hosts using Oracle persistence in Balanced mode failed to start with ArgumentOutOfRangeException("ControlEndpoint cannot be null for this usage"). The fix mirrors MessageDatabase.Initialize for Oracle and stands up a parallel OracleControlTransport / OracleControlEndpoint / OracleControlSender / OracleControlListener set under the new oraclecontrol:// protocol — necessary because the shared DatabaseControlSender / DatabaseControlListener assume @-prefixed placeholders and Guid values that map directly onto a DbParameter, neither of which Oracle accepts (:-prefixed placeholders, RAW(16) id columns requiring byte[]). Also fixes a latent OracleMessageStore.EnqueueAsync no-op that left LogRecordsAsync silently dropping node records, and makes FetchRecentRecordsAsync DBNull-safe on the description column. Adds a new OracleTests.LeaderElection project so the leadership-compliance suite runs against Oracle (marked [Trait("Category","Flaky")] because the suite needs careful TM/DML lock sequencing between back-to-back runs).

  • RavenDb: only one durability agent polls after host start (#​2623, #​2629) by @​Bishbulb (root-cause investigation and original fix) and @​jeremydmiller — RavenDbMessageStore.StartScheduledJobs eagerly built and started a RavenDbDurabilityAgent at boot in addition to the agent that NodeAgentController already builds and starts via IAgentFamily / MessageStoreCollection. Two RavenDbDurabilityAgent instances then polled the same database concurrently, both believed they held the scheduled-job lock, raced to mark the same envelopes Incoming, and surfaced ConcurrencyException plus double-fired timeouts. Drops the eager StartTimers() call; the cluster-managed agent is now the single owner of polling. The agent returned from StartScheduledJobs is held by WolverineRuntime.DurableScheduledJobs purely for its disposal-time StopAsync. Comes with a reflection-free regression test (added RavenDbDurabilityAgent.IsPolling and CompositeAgent.InnerAgents for the test to enumerate without poking at private fields). A companion regression-guard test for CosmosDb is included; investigation showed the equivalent CosmosDb path does NOT have the bug today (CosmosDbMessageStore.BuildAgentFamily returns null and Uri uses the cosmosdb:// scheme rather than wolverinedb://, so MessageStoreCollection never registers a competing agent).

Other improvements

  • AWS SQS: correct naming for sharded slot endpoints in #​1f294ce5 — fixes a regression where sharded slot endpoint URIs were assembled with the wrong segment ordering, causing the consumer side to listen at the wrong queue.

  • SagaDescriptor exported via ServiceCapabilities in #f0998c7b — adds a saga-shape descriptor (saga type, id type, current state) to the capabilities exporter so CritterWatch can surface saga inventory and current state in its dashboard.

Full Changelog: JasperFx/wolverine@V5.34.0...V5.35.1

5.34.0

What's Changed

This release introduces three new features (Claim Check pattern, declarative Polecat data requirements, and a new opt-in WolverineFx.RuntimeCompilation package as the first step toward AOT compatibility), a fix for a long-standing service-location footgun, several real RavenDB and EF Core durability fixes, plus the cold-start prep work done as part of issue #​1577.

Highlights

  • Add Claim Check / DataBus pattern with [Blob] attribute (#​2412) by @​jeremydmiller in #​2617 — off-load large message-property payloads to external storage on send and re-hydrate them on receive, so the on-the-wire envelope stays small. Core abstractions (IClaimCheckStore, ClaimCheckToken, [Blob], FileSystemClaimCheckStore, opts.UseClaimCheck(...)) live in Wolverine.Persistence. Two new backend NuGet packages ship alongside: WolverineFx.ClaimCheck.AzureBlobStorage and WolverineFx.ClaimCheck.AmazonS3. New documentation page under /guide/durability/claim-checks.
  • Declarative data-requirement attributes for Polecat (#​2552) by @​jeremydmiller in #​2615 — [DocumentExists<T>], [DocumentDoesNotExist<T>], and PolecatOps.Document<T>().MustExist(...) / .MustNotExist(...) mirror the Marten ergonomics, with the same batch-query optimization that folds multiple existence checks into a single Polecat IBatchedQuery round-trip.
  • Service-located IMessageBus / IMessageContext now see the active context (#​2583) by @​jeremydmiller in #​2616 — when user code service-locates IMessageBus (e.g., constructor injection on a service the handler resolves at runtime), it now receives the same MessageContext the handler itself uses, preserving outbox semantics. Implemented as a per-chain opt-in (gated on Chain.UsesServiceLocation) so chains that don't service-locate pay zero AsyncLocal overhead per message.
  • Cold-start optimizations and WolverineFx.RuntimeCompilation opt-in package (#​1577) by @​jeremydmiller in #​2613 and #cc00ca0a — first pass at the cold-start / AOT roadmap. Wires the Wolverine.SourceGeneration analyzer into the WolverineFx NuGet output (so source-generated IWolverineTypeLoader discovery flows transitively to consumers), pre-populates the WolverineMessageNaming cache during startup to eliminate first-message reflection cost, applies [DynamicallyAccessedMembers] annotations on the Activator.CreateInstance call sites for trimmer-friendliness, and adds ConfigureAwait(false) across 117 awaits on the per-message hot path. The new WolverineFx.RuntimeCompilation package becomes the future-facing opt-in API for runtime Roslyn compilation; default behavior is preserved.

RavenDB durability fixes

  • Fix bulk RavenDB inbox store leaking duplicates as inbox-unavailable (#​2606) by @​Bishbulb in #​2606
  • Take over expired RavenDB scheduled-job and leadership locks (#​2608) by @​Bishbulb in #​2608
  • Disable optimistic concurrency on RavenDB cluster-wide node sessions; load-then-modify on agent-assignment writes (#​2610) by @​Bishbulb in #​2610

EF Core / ancillary stores

  • Fix DurableLocalQueue to route incoming envelopes to ancillary stores (#​2611) by @​jeremydmiller — handler chains targeting an ancillary message store now have their incoming envelopes persisted in that store rather than the main store, fixing a class of "envelope stuck as Incoming forever" bugs.
  • Fix WolverineEnabled annotation collision in ancillary-store EF Core scenarios as part of #​2618 — MapWolverineEnvelopeStorage is now idempotent when called against the same model graph more than once.

Other improvements

  • Fix MessageBus clobbering per-message Envelope.Source in #​26e38002 — MessageBus.Send was overwriting the per-message Source with the host's ServiceName, masking the originating service in causation tracking.
  • Surface upcoming ServiceLocationPolicy.NotAllowed v6 default (#​2584) by @​jeremydmiller in #​2609 — chains that resolve dependencies via service location now log a warning at codegen time, with a clear migration path to the new opt-in Wolverine.RuntimeCompilation story for v6.

CI stabilization

  • Several flaky test classes fixed or marked in #​2612 and #​2618 — timeout bumps, IDisposableIAsyncLifetime conversions, lifecycle cleanup; chronically broken-on-CI classes (SqliteTests.Transport.multi_tenancy_with_multiple_files, CosmosDbTests.LeaderElection.leader_election, Wolverine.RabbitMQ.Tests.send_by_topics, Wolverine.RabbitMQ.Tests.sending_raw_messages) tagged [Trait("Category", "Flaky")] with header comments documenting the symptom and the real follow-up fix.
  • JasperFx 1.28 / RuntimeCompiler 4.5 ambiguity fallout fixed in #​2618 — files importing both JasperFx.CodeGeneration and JasperFx.RuntimeCompiler now compile cleanly after the InitializeSynchronously extension method was moved into JasperFx.CodeGeneration upstream.

Issue-tracker housekeeping

  • #​2507 (Quartz.Net / TickerQ first-class integration) added to the 6.0 milestone with a phased plan documented on the issue.
  • #​1577 (cold-start optimization roadmap) updated with a six-phase plan and current-state checklist; phases 1–4 are non-breaking on v5.x and largely landed in this release.

Full Changelog: JasperFx/wolverine@V5.33.0...V5.34.0

5.33.0

What's Changed

This release includes a major reliability fix for distributed leader election, a port of the Polecat 2.x event store integration, and several other quality-of-life improvements.

Highlights

  • Fix #​2602: Leader split-brain via stale advisory lock by @​jeremydmiller in #​2607 — three-layer defensive fix that detects when a Postgres/SQL Server/MySQL/Oracle/SQLite advisory lock has been silently released server-side, steps down the local leader, releases its agents, and triggers a fresh leader election. Adds a new LeadershipLost node record type and an IWolverineObserver.LostLeadership() hook for monitoring.
  • Polecat 2.x event store integration by @​jeremydmiller in #​2598 — ports the aggregate handler workflow from Marten so SQL Server-backed projects can use Polecat as a native event store with Wolverine. Requires SQL Server 2025 for the native JSON type.
  • Fix #​2571: Preserve context fields on scheduled-send wrap/unwrap by @​jeremydmiller in #​2605 — saga IDs, tenant IDs, and other correlation fields now survive the scheduled-send envelope round-trip.
  • gRPC enhancements by @​jeremydmiller in #​2565 — middleware weaving, validate convention, user exception mapping, bidirectional streaming, code-first codegen, plus new samples.
  • Allow RabbitMQ exchanges to be declared passive by @​jeremydmiller in #​2574

Other Improvements

  • Move non-sticky-handlers guard inside the compile lock by @​jeremydmiller in #​2556
  • Add launchSettings.json to sample projects by @​jeremydmiller in #​2600

Full Changelog: JasperFx/wolverine@V5.32.1...V5.33.0

What's Changed

New Contributors

Full Changelog: JasperFx/wolverine@V5.32.1...V5.33.0

Commits viewable in compare view.

Updated WolverineFx.EntityFrameworkCore from 5.32.1 to 5.35.2.

Release notes

Sourced from WolverineFx.EntityFrameworkCore's releases.

5.35.2

What's Changed

A small bug-fix and dependency-refresh release.

Persistence fixes

  • Oracle: timestamp default expressions now survive non-UTC DB sessions (#​2634) — OracleMessageStore.Initialize and the surrounding schema declared timestamp columns (health_check, started, posted, etc.) with a DEFAULT of SYS_EXTRACT_UTC(SYSTIMESTAMP). That returns a TIMESTAMP without a time zone, and when implicitly cast into the TIMESTAMP WITH TIME ZONE column Oracle stamps it with the session time zone — so for any session in UTC+N the just-persisted value's UTC equivalent was N hours in the past. That tripped the NodeAgentController.DoHealthChecksAsync staleness filter and surfaced as a NullReferenceException during the first leadership-election heartbeat (self!.AssignAgents([LeaderUri]) on a null self). All 18 occurrences swapped to SYSTIMESTAMP AT TIME ZONE 'UTC', with quote-doubling for the DDL contexts that go through Weasel's EXECUTE IMMEDIATE '...' wrapper.

Reliability hardening

  • Lock dbcontrol:// and oraclecontrol:// endpoints to BufferedInMemory (#​2637) — the database-backed control transport carries inter-node leader-election and agent-reassignment commands. Marking either endpoint Durable would route every control envelope through the same store-backed inbox/outbox the durability agent itself owns (deadlock); marking it Inline contradicts the batched-poll semantics. Both DatabaseControlEndpoint and OracleControlEndpoint now override supportsMode so any policy that tries to flip them off BufferedInMemory either silently skips (UseDurableInboxOnAllListeners, UseDurableOutboxOnAllSendingEndpoints, etc., already check SupportsMode) or fails fast with a clear InvalidOperationException.

Source-gen / startup

  • Aggregate IWolverineTypeLoader across all known assemblies (#​2632) by @​devployment — since 5.34.0, hosts on the source-generated codegen path silently dropped handlers that lived in referenced assemblies because tryDiscoverTypeLoaderFromAttribute only inspected Options.ApplicationAssembly. First invocation of one of those handlers threw IndeterminateRoutesException. The runtime now walks ApplicationAssembly and every assembly in Discovery.Assemblies, collects every [WolverineTypeManifest] loader it finds, and exposes their union via the new internal CompositeWolverineTypeLoader. Existing single-loader semantics are preserved when only one manifest is found.

Other

  • Saga timeout flag + scheduled-dispatch Activity tag (#​2631) by @​jeremydmiller — surfaces saga timeout and scheduled-dispatch metadata so the upcoming CritterWatch saga visualization can render in-flight saga state.

Dependencies

  • Bump JasperFx 1.28.0 → 1.28.2 and JasperFx.Events 1.29.0 → 1.31.1 (#​2638).

Full Changelog: JasperFx/wolverine@V5.35.1...V5.35.2

5.35.1

What's Changed

A bug-fix and small-feature release covering Oracle-in-Balanced-mode startup, a duplicate-poller defect on RavenDb, an AWS SQS sharded-slot naming fix, and a new SagaDescriptor surface for CritterWatch.

Persistence fixes

  • Oracle in DurabilityMode.Balanced now boots (#​2622) — OracleMessageStore.Initialize was a no-op, so hosts using Oracle persistence in Balanced mode failed to start with ArgumentOutOfRangeException("ControlEndpoint cannot be null for this usage"). The fix mirrors MessageDatabase.Initialize for Oracle and stands up a parallel OracleControlTransport / OracleControlEndpoint / OracleControlSender / OracleControlListener set under the new oraclecontrol:// protocol — necessary because the shared DatabaseControlSender / DatabaseControlListener assume @-prefixed placeholders and Guid values that map directly onto a DbParameter, neither of which Oracle accepts (:-prefixed placeholders, RAW(16) id columns requiring byte[]). Also fixes a latent OracleMessageStore.EnqueueAsync no-op that left LogRecordsAsync silently dropping node records, and makes FetchRecentRecordsAsync DBNull-safe on the description column. Adds a new OracleTests.LeaderElection project so the leadership-compliance suite runs against Oracle (marked [Trait("Category","Flaky")] because the suite needs careful TM/DML lock sequencing between back-to-back runs).

  • RavenDb: only one durability agent polls after host start (#​2623, #​2629) by @​Bishbulb (root-cause investigation and original fix) and @​jeremydmiller — RavenDbMessageStore.StartScheduledJobs eagerly built and started a RavenDbDurabilityAgent at boot in addition to the agent that NodeAgentController already builds and starts via IAgentFamily / MessageStoreCollection. Two RavenDbDurabilityAgent instances then polled the same database concurrently, both believed they held the scheduled-job lock, raced to mark the same envelopes Incoming, and surfaced ConcurrencyException plus double-fired timeouts. Drops the eager StartTimers() call; the cluster-managed agent is now the single owner of polling. The agent returned from StartScheduledJobs is held by WolverineRuntime.DurableScheduledJobs purely for its disposal-time StopAsync. Comes with a reflection-free regression test (added RavenDbDurabilityAgent.IsPolling and CompositeAgent.InnerAgents for the test to enumerate without poking at private fields). A companion regression-guard test for CosmosDb is included; investigation showed the equivalent CosmosDb path does NOT have the bug today (CosmosDbMessageStore.BuildAgentFamily returns null and Uri uses the cosmosdb:// scheme rather than wolverinedb://, so MessageStoreCollection never registers a competing agent).

Other improvements

  • AWS SQS: correct naming for sharded slot endpoints in #​1f294ce5 — fixes a regression where sharded slot endpoint URIs were assembled with the wrong segment ordering, causing the consumer side to listen at the wrong queue.

  • SagaDescriptor exported via ServiceCapabilities in #f0998c7b — adds a saga-shape descriptor (saga type, id type, current state) to the capabilities exporter so CritterWatch can surface saga inventory and current state in its dashboard.

Full Changelog: JasperFx/wolverine@V5.34.0...V5.35.1

5.34.0

What's Changed

This release introduces three new features (Claim Check pattern, declarative Polecat data requirements, and a new opt-in WolverineFx.RuntimeCompilation package as the first step toward AOT compatibility), a fix for a long-standing service-location footgun, several real RavenDB and EF Core durability fixes, plus the cold-start prep work done as part of issue #​1577.

Highlights

  • Add Claim Check / DataBus pattern with [Blob] attribute (#​2412) by @​jeremydmiller in #​2617 — off-load large message-property payloads to external storage on send and re-hydrate them on receive, so the on-the-wire envelope stays small. Core abstractions (IClaimCheckStore, ClaimCheckToken, [Blob], FileSystemClaimCheckStore, opts.UseClaimCheck(...)) live in Wolverine.Persistence. Two new backend NuGet packages ship alongside: WolverineFx.ClaimCheck.AzureBlobStorage and WolverineFx.ClaimCheck.AmazonS3. New documentation page under /guide/durability/claim-checks.
  • Declarative data-requirement attributes for Polecat (#​2552) by @​jeremydmiller in #​2615 — [DocumentExists<T>], [DocumentDoesNotExist<T>], and PolecatOps.Document<T>().MustExist(...) / .MustNotExist(...) mirror the Marten ergonomics, with the same batch-query optimization that folds multiple existence checks into a single Polecat IBatchedQuery round-trip.
  • Service-located IMessageBus / IMessageContext now see the active context (#​2583) by @​jeremydmiller in #​2616 — when user code service-locates IMessageBus (e.g., constructor injection on a service the handler resolves at runtime), it now receives the same MessageContext the handler itself uses, preserving outbox semantics. Implemented as a per-chain opt-in (gated on Chain.UsesServiceLocation) so chains that don't service-locate pay zero AsyncLocal overhead per message.
  • Cold-start optimizations and WolverineFx.RuntimeCompilation opt-in package (#​1577) by @​jeremydmiller in #​2613 and #cc00ca0a — first pass at the cold-start / AOT roadmap. Wires the Wolverine.SourceGeneration analyzer into the WolverineFx NuGet output (so source-generated IWolverineTypeLoader discovery flows transitively to consumers), pre-populates the WolverineMessageNaming cache during startup to eliminate first-message reflection cost, applies [DynamicallyAccessedMembers] annotations on the Activator.CreateInstance call sites for trimmer-friendliness, and adds ConfigureAwait(false) across 117 awaits on the per-message hot path. The new WolverineFx.RuntimeCompilation package becomes the future-facing opt-in API for runtime Roslyn compilation; default behavior is preserved.

RavenDB durability fixes

  • Fix bulk RavenDB inbox store leaking duplicates as inbox-unavailable (#​2606) by @​Bishbulb in #​2606
  • Take over expired RavenDB scheduled-job and leadership locks (#​2608) by @​Bishbulb in #​2608
  • Disable optimistic concurrency on RavenDB cluster-wide node sessions; load-then-modify on agent-assignment writes (#​2610) by @​Bishbulb in #​2610

EF Core / ancillary stores

  • Fix DurableLocalQueue to route incoming envelopes to ancillary stores (#​2611) by @​jeremydmiller — handler chains targeting an ancillary message store now have their incoming envelopes persisted in that store rather than the main store, fixing a class of "envelope stuck as Incoming forever" bugs.
  • Fix WolverineEnabled annotation collision in ancillary-store EF Core scenarios as part of #​2618 — MapWolverineEnvelopeStorage is now idempotent when called against the same model graph more than once.

Other improvements

  • Fix MessageBus clobbering per-message Envelope.Source in #​26e38002 — MessageBus.Send was overwriting the per-message Source with the host's ServiceName, masking the originating service in causation tracking.
  • Surface upcoming ServiceLocationPolicy.NotAllowed v6 default (#​2584) by @​jeremydmiller in #​2609 — chains that resolve dependencies via service location now log a warning at codegen time, with a clear migration path to the new opt-in Wolverine.RuntimeCompilation story for v6.

CI stabilization

  • Several flaky test classes fixed or marked in #​2612 and #​2618 — timeout bumps, IDisposableIAsyncLifetime conversions, lifecycle cleanup; chronically broken-on-CI classes (SqliteTests.Transport.multi_tenancy_with_multiple_files, CosmosDbTests.LeaderElection.leader_election, Wolverine.RabbitMQ.Tests.send_by_topics, Wolverine.RabbitMQ.Tests.sending_raw_messages) tagged [Trait("Category", "Flaky")] with header comments documenting the symptom and the real follow-up fix.
  • JasperFx 1.28 / RuntimeCompiler 4.5 ambiguity fallout fixed in #​2618 — files importing both JasperFx.CodeGeneration and JasperFx.RuntimeCompiler now compile cleanly after the InitializeSynchronously extension method was moved into JasperFx.CodeGeneration upstream.

Issue-tracker housekeeping

  • #​2507 (Quartz.Net / TickerQ first-class integration) added to the 6.0 milestone with a phased plan documented on the issue.
  • #​1577 (cold-start optimization roadmap) updated with a six-phase plan and current-state checklist; phases 1–4 are non-breaking on v5.x and largely landed in this release.

Full Changelog: JasperFx/wolverine@V5.33.0...V5.34.0

5.33.0

What's Changed

This release includes a major reliability fix for distributed leader election, a port of the Polecat 2.x event store integration, and several other quality-of-life improvements.

Highlights

  • Fix #​2602: Leader split-brain via stale advisory lock by @​jeremydmiller in #​2607 — three-layer defensive fix that detects when a Postgres/SQL Server/MySQL/Oracle/SQLite advisory lock has been silently released server-side, steps down the local leader, releases its agents, and triggers a fresh leader election. Adds a new LeadershipLost node record type and an IWolverineObserver.LostLeadership() hook for monitoring.
  • Polecat 2.x event store integration by @​jeremydmiller in #​2598 — ports the aggregate handler workflow from Marten so SQL Server-backed projects can use Polecat as a native event store with Wolverine. Requires SQL Server 2025 for the native JSON type.
  • Fix #​2571: Preserve context fields on scheduled-send wrap/unwrap by @​jeremydmiller in #​2605 — saga IDs, tenant IDs, and other correlation fields now survive the scheduled-send envelope round-trip.
  • gRPC enhancements by @​jeremydmiller in #​2565 — middleware weaving, validate convention, user exception mapping, bidirectional streaming, code-first codegen, plus new samples.
  • Allow RabbitMQ exchanges to be declared passive by @​jeremydmiller in #​2574

Other Improvements

  • Move non-sticky-handlers guard inside the compile lock by @​jeremydmiller in #​2556
  • Add launchSettings.json to sample projects by @​jeremydmiller in #​2600

Full Changelog: JasperFx/wolverine@V5.32.1...V5.33.0

What's Changed

New Contributors

Full Changelog: JasperFx/wolverine@V5.32.1...V5.33.0

Commits viewable in compare view.

Updated WolverineFx.FluentValidation from 5.32.1 to 5.35.2.

Release notes

Sourced from WolverineFx.FluentValidation's releases.

5.35.2

What's Changed

A small bug-fix and dependency-refresh release.

Persistence fixes

  • Oracle: timestamp default expressions now survive non-UTC DB sessions (#​2634) — OracleMessageStore.Initialize and the surrounding schema declared timestamp columns (health_check, started, posted, etc.) with a DEFAULT of SYS_EXTRACT_UTC(SYSTIMESTAMP). That returns a TIMESTAMP without a time zone, and when implicitly cast into the TIMESTAMP WITH TIME ZONE column Oracle stamps it with the session time zone — so for any session in UTC+N the just-persisted value's UTC equivalent was N hours in the past. That tripped the NodeAgentController.DoHealthChecksAsync staleness filter and surfaced as a NullReferenceException during the first leadership-election heartbeat (self!.AssignAgents([LeaderUri]) on a null self). All 18 occurrences swapped to SYSTIMESTAMP AT TIME ZONE 'UTC', with quote-doubling for the DDL contexts that go through Weasel's EXECUTE IMMEDIATE '...' wrapper.

Reliability hardening

  • Lock dbcontrol:// and oraclecontrol:// endpoints to BufferedInMemory (#​2637) — the database-backed control transport carries inter-node leader-election and agent-reassignment commands. Marking either endpoint Durable would route every control envelope through the same store-backed inbox/outbox the durability agent itself owns (deadlock); marking it Inline contradicts the batched-poll semantics. Both DatabaseControlEndpoint and OracleControlEndpoint now override supportsMode so any policy that tries to flip them off BufferedInMemory either silently skips (UseDurableInboxOnAllListeners, UseDurableOutboxOnAllSendingEndpoints, etc., already check SupportsMode) or fails fast with a clear InvalidOperationException.

Source-gen / startup

  • Aggregate IWolverineTypeLoader across all known assemblies (#​2632) by @​devployment — since 5.34.0, hosts on the source-generated codegen path silently dropped handlers that lived in referenced assemblies because tryDiscoverTypeLoaderFromAttribute only inspected Options.ApplicationAssembly. First invocation of one of those handlers threw IndeterminateRoutesException. The runtime now walks ApplicationAssembly and every assembly in Discovery.Assemblies, collects every [WolverineTypeManifest] loader it finds, and exposes their union via the new internal CompositeWolverineTypeLoader. Existing single-loader semantics are preserved when only one manifest is found.

Other

  • Saga timeout flag + scheduled-dispatch Activity tag (#​2631) by @​jeremydmiller — surfaces saga timeout and scheduled-dispatch metadata so the upcoming CritterWatch saga visualization can render in-flight saga state.

Dependencies

  • Bump JasperFx 1.28.0 → 1.28.2 and JasperFx.Events 1.29.0 → 1.31.1 (#​2638).

Full Changelog: JasperFx/wolverine@V5.35.1...V5.35.2

5.35.1

What's Changed

A bug-fix and small-feature release covering Oracle-in-Balanced-mode startup, a duplicate-poller defect on RavenDb, an AWS SQS sharded-slot naming fix, and a new SagaDescriptor surface for CritterWatch.

Persistence fixes

  • Oracle in DurabilityMode.Balanced now boots (#​2622) — OracleMessageStore.Initialize was a no-op, so hosts using Oracle persistence in Balanced mode failed to start with ArgumentOutOfRangeException("ControlEndpoint cannot be null for this usage"). The fix mirrors MessageDatabase.Initialize for Oracle and stands up a parallel OracleControlTransport / OracleControlEndpoint / OracleControlSender / OracleControlListener set under the new oraclecontrol:// protocol — necessary because the shared DatabaseControlSender / DatabaseControlListener assume @-prefixed placeholders and Guid values that map directly onto a DbParameter, neither of which Oracle accepts (:-prefixed placeholders, RAW(16) id columns requiring byte[]). Also fixes a latent OracleMessageStore.EnqueueAsync no-op that left LogRecordsAsync silently dropping node records, and makes FetchRecentRecordsAsync DBNull-safe on the description column. Adds a new OracleTests.LeaderElection project so the leadership-compliance suite runs against Oracle (marked [Trait("Category","Flaky")] because the suite needs careful TM/DML lock sequencing between back-to-back runs).

  • RavenDb: only one durability agent polls after host start (#​2623, #​2629) by @​Bishbulb (root-cause investigation and original fix) and @​jeremydmiller — RavenDbMessageStore.StartScheduledJobs eagerly built and started a RavenDbDurabilityAgent at boot in addition to the agent that NodeAgentController already builds and starts via IAgentFamily / MessageStoreCollection. Two RavenDbDurabilityAgent instances then polled the same database concurrently, both believed they held the scheduled-job lock, raced to mark the same envelopes Incoming, and surfaced ConcurrencyException plus double-fired timeouts. Drops the eager StartTimers() call; the cluster-managed agent is now the single owner of polling. The agent returned from StartScheduledJobs is held by WolverineRuntime.DurableScheduledJobs purely for its disposal-time StopAsync. Comes with a reflection-free regression test (added RavenDbDurabilityAgent.IsPolling and CompositeAgent.InnerAgents for the test to enumerate without poking at private fields). A companion regression-guard test for CosmosDb is included; investigation showed the equivalent CosmosDb path does NOT have the bug today (CosmosDbMessageStore.BuildAgentFamily returns null and Uri uses the cosmosdb:// scheme rather than wolverinedb://, so MessageStoreCollection never registers a competing agent).

Other improvements

  • AWS SQS: correct naming for sharded slot endpoints in #​1f294ce5 — fixes a regression where sharded slot endpoint URIs were assembled with the wrong segment ordering, causing the consumer side to listen at the wrong queue.

  • SagaDescriptor exported via ServiceCapabilities in #f0998c7b — adds a saga-shape descriptor (saga type, id type, current state) to the capabilities exporter so CritterWatch can surface saga inventory and current state in its dashboard.

Full Changelog: JasperFx/wolverine@V5.34.0...V5.35.1

5.34.0

What's Changed

This release introduces three new features (Claim Check pattern, declarative Polecat data requirements, and a new opt-in WolverineFx.RuntimeCompilation package as the first step toward AOT compatibility), a fix for a long-standing service-location footgun, several real RavenDB and EF Core durability fixes, plus the cold-start prep work done as part of issue #​1577.

Highlights

  • Add Claim Check / DataBus pattern with [Blob] attribute (#​2412) by @​jeremydmiller in #​2617 — off-load large message-property payloads to external storage on send and re-hydrate them on receive, so the on-the-wire envelope stays small. Core abstractions (IClaimCheckStore, ClaimCheckToken, [Blob], FileSystemClaimCheckStore, opts.UseClaimCheck(...)) live in Wolverine.Persistence. Two new backend NuGet packages ship alongside: WolverineFx.ClaimCheck.AzureBlobStorage and WolverineFx.ClaimCheck.AmazonS3. New documentation page under /guide/durability/claim-checks.
  • Declarative data-requirement attributes for Polecat (#​2552) by @​jeremydmiller in #​2615 — [DocumentExists<T>], [DocumentDoesNotExist<T>], and PolecatOps.Document<T>().MustExist(...) / .MustNotExist(...) mirror the Marten ergonomics, with the same batch-query optimization that folds multiple existence checks into a single Polecat IBatchedQuery round-trip.
  • Service-located IMessageBus / IMessageContext now see the active context (#​2583) by @​jeremydmiller in #​2616 — when user code service-locates IMessageBus (e.g., constructor injection on a service the handler resolves at runtime), it now receives the same MessageContext the handler itself uses, preserving outbox semantics. Implemented as a per-chain opt-in (gated on Chain.UsesServiceLocation) so chains that don't service-locate pay zero AsyncLocal overhead per message.
  • Cold-start optimizations and WolverineFx.RuntimeCompilation opt-in package (#​1577) by @​jeremydmiller in #​2613 and #cc00ca0a — first pass at the cold-start / AOT roadmap. Wires the Wolverine.SourceGeneration analyzer into the WolverineFx NuGet output (so source-generated IWolverineTypeLoader discovery flows transitively to consumers), pre-populates the WolverineMessageNaming cache during startup to eliminate first-message reflection cost, applies [DynamicallyAccessedMembers] annotations on the Activator.CreateInstance call sites for trimmer-friendliness, and adds ConfigureAwait(false) across 117 awaits on the per-message hot path. The new WolverineFx.RuntimeCompilation package becomes the future-facing opt-in API for runtime Roslyn compilation; default behavior is preserved.

RavenDB durability fixes

  • Fix bulk RavenDB inbox store leaking duplicates as inbox-unavailable (#​2606) by @​Bishbulb in #​2606
  • Take over expired RavenDB scheduled-job and leadership locks (#​2608) by @​Bishbulb in #​2608
  • Disable optimistic concurrency on RavenDB cluster-wide node sessions; load-then-modify on agent-assignment writes (#​2610) by @​Bishbulb in #​2610

EF Core / ancillary stores

  • Fix DurableLocalQueue to route incoming envelopes to ancillary stores (#​2611) by @​jeremydmiller — handler chains targeting an ancillary message store now have their incoming envelopes persisted in that store rather than the main store, fixing a class of "envelope stuck as Incoming forever" bugs.
  • Fix WolverineEnabled annotation collision in ancillary-store EF Core scenarios as part of #​2618 — MapWolverineEnvelopeStorage is now idempotent when called against the same model graph more than once.

Other improvements

  • Fix MessageBus clobbering per-message Envelope.Source in #​26e38002 — MessageBus.Send was overwriting the per-message Source with the host's ServiceName, masking the originating service in causation tracking.
  • Surface upcoming ServiceLocationPolicy.NotAllowed v6 default (#​2584) by @​jeremydmiller in #​2609 — chains that resolve dependencies via service location now log a warning at codegen time, with a clear migration path to the new opt-in Wolverine.RuntimeCompilation story for v6.

CI stabilization

  • Several flaky test classes fixed or marked in #​2612 and #​2618 — timeout bumps, IDisposableIAsyncLifetime conversions, lifecycle cleanup; chronically broken-on-CI classes (SqliteTests.Transport.multi_tenancy_with_multiple_files, CosmosDbTests.LeaderElection.leader_election, Wolverine.RabbitMQ.Tests.send_by_topics, Wolverine.RabbitMQ.Tests.sending_raw_messages) tagged [Trait("Category", "Flaky")] with header comments documenting the symptom and the real follow-up fix.
  • JasperFx 1.28 / RuntimeCompiler 4.5 ambiguity fallout fixed in #​2618 — files importing both JasperFx.CodeGeneration and JasperFx.RuntimeCompiler now compile cleanly after the InitializeSynchronously extension method was moved into JasperFx.CodeGeneration upstream.

Issue-tracker housekeeping

  • #​2507 (Quartz.Net / TickerQ first-class integration) added to the 6.0 milestone with a phased plan documented on the issue.
  • #​1577 (cold-start optimization roadmap) updated with a six-phase plan and current-state checklist; phases 1–4 are non-breaking on v5.x and largely landed in this release.

Full Changelog: JasperFx/wolverine@V5.33.0...V5.34.0

5.33.0

What's Changed

This release includes a major reliability fix for distributed leader election, a port of the Polecat 2.x event store integration, and several other quality-of-life improvements.

Highlights

  • Fix #​2602: Leader split-brain via stale advisory lock by @​jeremydmiller in #​2607 — three-layer defensive fix that detects when a Postgres/SQL Server/MySQL/Oracle/SQLite advisory lock has been silently released server-side, steps down the local leader, releases its agents, and triggers a fresh leader election. Adds a new LeadershipLost node record type and an IWolverineObserver.LostLeadership() hook for monitoring.
  • Polecat 2.x event store integration by @​jeremydmiller in #​2598 — ports the aggregate handler workflow from Marten so SQL Server-backed projects can use Polecat as a native event store with Wolverine. Requires SQL Server 2025 for the native JSON type.
  • Fix #​2571: Preserve context fields on scheduled-send wrap/unwrap by @​jeremydmiller in #​2605 — saga IDs, tenant IDs, and other correlation fields now survive the scheduled-send envelope round-trip.
  • gRPC enhancements by @​jeremydmiller in #​2565 — middleware weaving, validate convention, user exception mapping, bidirectional streaming, code-first codegen, plus new samples.
  • Allow RabbitMQ exchanges to be declared passive by @​jeremydmiller in #​2574

Other Improvements

  • Move non-sticky-handlers guard inside the compile lock by @​jeremydmiller in #​2556
  • Add launchSettings.json to sample projects by @​jeremydmiller in #​2600

Full Changelog: JasperFx/wolverine@V5.32.1...V5.33.0

What's Changed

Description has been truncated

Bumps dotnet-ef from 10.0.2 to 10.0.7
Bumps Finbuckle.MultiTenant from 10.0.6 to 10.0.7
Bumps Finbuckle.MultiTenant.AspNetCore from 10.0.6 to 10.0.7
Bumps Finbuckle.MultiTenant.EntityFrameworkCore from 10.0.6 to 10.0.7
Bumps Grpc.Core.Api from 2.76.0 to 2.80.0
Bumps Grpc.Net.ClientFactory from 2.76.0 to 2.80.0
Bumps Meziantou.Analyzer from 3.0.54 to 3.0.58
Bumps Microsoft.TestPlatform from 18.4.0 to 18.5.1
Bumps Scalar.AspNetCore from 2.13.8 to 2.14.9
Bumps Scalar.AspNetCore.Microsoft from 2.13.8 to 2.14.9
Bumps SonarAnalyzer.CSharp from 10.24.0.138807 to 10.25.0.139117
Bumps System.IdentityModel.Tokens.Jwt from 8.17.0 to 8.18.0
Bumps WolverineFx from 5.32.1 to 5.35.2
Bumps WolverineFx.EntityFrameworkCore from 5.32.1 to 5.35.2
Bumps WolverineFx.FluentValidation from 5.32.1 to 5.35.2
Bumps WolverineFx.Http from 5.32.1 to 5.35.2
Bumps WolverineFx.MemoryPack from 5.32.1 to 5.35.2
Bumps WolverineFx.Postgresql from 5.32.1 to 5.35.2
Bumps WolverineFx.RabbitMQ from 5.32.1 to 5.35.2
Bumps WolverineFx.SignalR from 5.32.1 to 5.35.2
Bumps WolverineFx.SqlServer from 5.32.1 to 5.35.2

---
updated-dependencies:
- dependency-name: dotnet-ef
  dependency-version: 10.0.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-all
- dependency-name: Finbuckle.MultiTenant
  dependency-version: 10.0.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-all
- dependency-name: Finbuckle.MultiTenant.AspNetCore
  dependency-version: 10.0.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-all
- dependency-name: Finbuckle.MultiTenant.EntityFrameworkCore
  dependency-version: 10.0.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-all
- dependency-name: Grpc.Core.Api
  dependency-version: 2.80.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-all
- dependency-name: Grpc.Net.ClientFactory
  dependency-version: 2.80.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-all
- dependency-name: Meziantou.Analyzer
  dependency-version: 3.0.58
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-all
- dependency-name: Microsoft.TestPlatform
  dependency-version: 18.5.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-all
- dependency-name: Scalar.AspNetCore
  dependency-version: 2.14.9
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-all
- dependency-name: Scalar.AspNetCore.Microsoft
  dependency-version: 2.14.9
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-all
- dependency-name: SonarAnalyzer.CSharp
  dependency-version: 10.25.0.139117
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-all
- dependency-name: System.IdentityModel.Tokens.Jwt
  dependency-version: 8.18.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-all
- dependency-name: WolverineFx
  dependency-version: 5.35.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-all
- dependency-name: WolverineFx.EntityFrameworkCore
  dependency-version: 5.35.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-all
- dependency-name: WolverineFx.FluentValidation
  dependency-version: 5.35.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-all
- dependency-name: WolverineFx.Http
  dependency-version: 5.35.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-all
- dependency-name: WolverineFx.MemoryPack
  dependency-version: 5.35.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-all
- dependency-name: WolverineFx.Postgresql
  dependency-version: 5.35.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-all
- dependency-name: WolverineFx.RabbitMQ
  dependency-version: 5.35.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-all
- dependency-name: WolverineFx.SignalR
  dependency-version: 5.35.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-all
- dependency-name: WolverineFx.SqlServer
  dependency-version: 5.35.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-all
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added .NET Pull requests that update .NET code dependencies Update one or more dependencies version minor Increment the minor version when merged labels May 1, 2026
@github-actions github-actions Bot enabled auto-merge (squash) May 1, 2026 03:52
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 1, 2026

🎯 Affected Projects

  • 📄 Project: Teck.Cloud.AppHost
  • 📄 Project: Teck.Cloud.ServiceDefaults
  • 📄 Project: SharedKernel.Core
  • 📄 Project: SharedKernel.Events
  • 📄 Project: SharedKernel.Grpc.Contracts
  • 📚 Library: SharedKernel.Infrastructure
  • 📄 Project: SharedKernel.Persistence
  • 📄 Project: Teck.Cloud.Migrations
  • 📚 Library: Catalog.Application
  • 📚 Library: Catalog.Domain
  • 📄 Project: Catalog.Infrastructure.Migrations.MySql
  • 📄 Project: Catalog.Infrastructure.Migrations.PostgreSQL
  • 📄 Project: Catalog.Infrastructure.Migrations.SqlServer
  • 📚 Library: Catalog.Infrastructure
  • 📚 Library: Customer.Application
  • 📚 Library: Customer.Domain
  • 📄 Project: Customer.Infrastructure.Migrations.MySql
  • 📄 Project: Customer.Infrastructure.Migrations.PostgreSQL
  • 📄 Project: Customer.Infrastructure.Migrations.SqlServer
  • 📚 Library: Customer.Infrastructure
  • 🧪 Test: Catalog.Arch.UnitTests
  • 🧪 Test: Teck.Cloud.Arch.Tests
  • 🧪 Test: Catalog.UnitTests
  • 🧪 Test: Customer.UnitTests
  • 🧪 Test: SharedKernel.Infrastructure.UnitTests
  • 🧪 Test: SharedKernel.Persistence.UnitTests
  • 🚀 Service: Catalog.Api
  • 🧪 Test: Web.Admin.Gateway.IntegrationTests
  • 📄 Project: Web.Admin.Gateway
  • 🧪 Test: Web.Admin.Gateway.UnitTests
  • 🧪 Test: Web.Public.Gateway.IntegrationTests
  • 🚀 Service: Customer.Api
  • 📄 Project: Web.Public.Gateway
  • 🧪 Test: Web.Public.Gateway.UnitTests
  • 🧪 Test: Catalog.IntegrationTests
ℹ️ About CI/CD Strategy

Testing Strategy:

  • Build: Only affected projects are built for fast feedback
  • Test: Non-E2E .NET tests run on every PR to ensure no regressions
  • 🎯 E2E: Runs only when run-e2e label is added to the PR
  • 🐳 Docker: Only affected service Docker images are built to save time

These jobs run in parallel for maximum speed.

Detection Method:
Projects are detected using dotnet-affected, which tracks:

  • Projects with direct file changes
  • Projects that depend on changed projects
  • Projects affected by NuGet package updates in Directory.Packages.props
  • Projects affected by changes to Directory.Build.props

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 1, 2026

Dependency Review

✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.

@dependabot @github
Copy link
Copy Markdown
Contributor Author

dependabot Bot commented on behalf of github May 1, 2026

Dependabot tried to update this pull request, but something went wrong. We're looking into it, but in the meantime you can retry the update by commenting @dependabot recreate.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Update one or more dependencies version minor Increment the minor version when merged .NET Pull requests that update .NET code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants