This release of the ingest package is related to the release of Horizon v2.3.0 and introduces some breaking changes for those building their own tools. Refer to stellar-ingest-v1.0.0 for more on this package.
Breaking Changes
-
Many APIs now require a
context.Contextparameter, allowing you to interact with the backends and control calls in a more finely-controlled manner. This includes the readers (ChangeReaderet al.) as well as the backends themselves (CaptiveStellarCoreet al.). -
GetLedger()always blocks now, even for anUnboundedRange. -
The
CaptiveCoreBackendnow requires an all-inclusiveCaptiveCoreTomlobject to configure Captive Core rather than an assortment of individual parameters. This object can be built from a TOML file (seeNewCaptiveCoreTomlFromFile) or from parameters (seeNewCaptiveCoreToml) as was done before. -
LedgerTransaction.Metahas been renamed toUnsafeMetato highlight that users should be careful when interacting with it. -
Remote Captive Core no longer includes the
presentfield in the ledger response JSON.
New Features
NewLedgerChangeReaderFromLedgerCloseMetaandNewLedgerTransactionReaderFromLedgerCloseMetaare new ways to construct readers from a particular single ledger.
Other Changes
-
The remote Captive Core client timeout has doubled.
-
Captive Core now creates a temporary directory (
captive-core-...) in the specified storage path (current directory by default) that it cleans it up on shutdown rather than in the OS's temp directory.