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.Context
parameter, allowing you to interact with the backends and control calls in a more finely-controlled manner. This includes the readers (ChangeReader
et al.) as well as the backends themselves (CaptiveStellarCore
et al.). -
GetLedger()
always blocks now, even for anUnboundedRange
. -
The
CaptiveCoreBackend
now requires an all-inclusiveCaptiveCoreToml
object 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.Meta
has been renamed toUnsafeMeta
to highlight that users should be careful when interacting with it. -
Remote Captive Core no longer includes the
present
field in the ledger response JSON.
New Features
NewLedgerChangeReaderFromLedgerCloseMeta
andNewLedgerTransactionReaderFromLedgerCloseMeta
are 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.