Repository navigation
Marten 9.22.6
A fix-and-adoption release: a masking-rule fix, a broadened event-store compliance net, a CI overhaul, and the JasperFx 2.46.0 / Weasel 9.24.0 dependency adoptions.
Fixes
Every matching masking rule runs, not just the first (#5199)
ApplyEventDataMasking used to stop at the first masking rule whose event type matched, so an event enrolled in two rules (say, one masking a name and another masking an address) only ever had the first applied. All matching rules now compose: each rule runs in registration order against the output of the previous one.
Test coverage
Compliance waves 6-8 + strong-typed identity (#5198, #5201, #5203, #5205)
Marten's event-store behavior is now enrolled in the shared JasperFx.Events.ComplianceTests suite for: stream compacting and event data masking (wave 6), projection rebuild/catch-up and dead letters (wave 7), conjoined event tenancy and subscriptions (wave 8), plus StrongTypedIdentityCompliance (#5144). These pin Marten's behavior to the same contract Polecat and future stores are held to.
CI
One job per test project, supervised (#5096, #5208)
The monolithic CI test run is split into one job per test project running under Bobcat's supervisor, so a flaky suite no longer poisons the whole gate and failures name the project that produced them. Also removes stray ITestOutputHelper/debug logger injections from tests (#5211).
Dependencies
- JasperFx / JasperFx.Events 2.45.0 -> 2.46.0 — includes the high-water-detection memory fix for very high tenant counts (#644, the 2,000+ tenant OOM).
- Weasel 9.23.2 -> 9.24.0 — parallel
db-apply/db-assertacross physical databases (weasel#431/#442), per-fingerprint schema stamp keying (weasel#439), SQL ServerCREATE DATABASEpostcondition check (weasel#415), discovery progress reporting (weasel#432).