Skip to content

v0.0.19

Choose a tag to compare

@github-actions github-actions released this 18 Oct 15:43
· 18 commits to main since this release

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 behind EdgeType.writtenAt, with the same three cases.
  • Components.Schemas.RetentionPolicy in MarfaTypes, with feedDays (a whole number of days, or null): a type definition now carries retention_policy, which says how long the server keeps the type's feed items.
  • written_at in MarfaTypes gains the value none.

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.