Repository navigation
v0.0.19
This release carries MarfaCore built from Marfa v0.0.11 (withmarfa/marfa@e56c09f66606e09f213eb0400bd251e0590025a2). It has one change to public API, and two additions to the generated wire types.
To update, pin 0.0.19. A server at Marfa v0.0.11 or later can list an edge type that no file writes, which the earlier core could not read, so an app talking to such a server needs this release.
Public API that changed or was removed
| Before | Now |
|---|---|
EdgeEnd (source, target) |
EdgeWrittenAt (source, target, none). none means no file writes the edge, as for in-folder. |
EdgeType.writtenAt: EdgeEnd |
EdgeType.writtenAt: EdgeWrittenAt. The EdgeType initializer takes writtenAt: EdgeWrittenAt, still .source by default. |
An app that switches over EdgeType.writtenAt needs a case for .none. An app that compares with == .source or == .target needs no change.
Public API added
MarfaCore.EdgeWrittenAt, the core binding's catalog type behindEdgeType.writtenAt, with the same three cases.Components.Schemas.RetentionPolicyinMarfaTypes, withfeedDays(a whole number of days, ornull): a type definition now carriesretention_policy, which says how long the server keeps the type's feed items.written_atinMarfaTypesgains the valuenone.
Behavior that follows from the server
These come from the server and need no code change. Marfa v0.0.11 checks each element of an array property against its items_type, so a write the earlier server accepted can now be refused invalid_properties; its source filter also narrows event streams and webhook deliveries. The Marfa v0.0.11 changelog entry has the list.