Repository navigation
JasperFx 2.73.1
A binary-compatibility patch over 2.73.0. 2.73.0 has been unlisted on NuGet — use this instead. No functional change beyond the constructor described below; everything 2.73.0 shipped is here.
What was wrong with 2.73.0
EventModelClaim gained a third, defaulted parameter (Source, from #861). That is a source-compatible change and a binary-breaking one: a record emits a single constructor, so the two-argument signature 2.72.0 published stopped existing. An assembly compiled against 2.72.0 that constructs a claim got a MissingMethodException rather than picking up the default.
The fix (#863)
An explicit two-argument constructor delegating to the primary one, restoring the 2.72.0 signature:
public EventModelClaim(EventModelProvenance provenance, string value)
: this(provenance, value, null) { }⚠ If you are tempted to make the same change elsewhere, it needs one more thing. A second parameterized constructor makes System.Text.Json refuse the type outright:
NotSupportedException : Deserialization of types without a parameterless constructor, a singular parameterized constructor, or a parameterized constructor annotated with 'JsonConstructorAttribute' is not supported. Type 'EventModelClaim'.
Every descriptor carrying a SourceDisagreement would have failed coming back off the wire — the path into CritterWatch and Bobcat. The primary constructor is therefore marked [method: JsonConstructor], the same pairing SpecificationDescriptor has carried in that folder for the same reason.
What is deliberately not restored
Deconstruct's arity changed the same way and is left alone. A two-output overload would silently drop Source for anyone destructuring a claim in new code, which is the loss #859 exists to stop, and nothing in the Critter Stack deconstructs a claim. If you do, recompile.
So: the constructor surface is restored, not the whole 2.72.0 surface.
Packages
Seven packages at 2.73.1: JasperFx, JasperFx.Events, JasperFx.Events.ComplianceTests, JasperFx.Events.SourceGenerator, JasperFx.SourceGenerator, JasperFx.Aspire, JasperFx.Events.MicrosoftExtensionsAI. JasperFx.RuntimeCompiler is versioned independently and stays at 5.0.0.
Full Changelog: V2.73.0...V2.73.1