Daml.Ledger.Abstractions
0.4.1-preview.1
Prefix Reserved
dotnet add package Daml.Ledger.Abstractions --version 0.4.1-preview.1
NuGet\Install-Package Daml.Ledger.Abstractions -Version 0.4.1-preview.1
<PackageReference Include="Daml.Ledger.Abstractions" Version="0.4.1-preview.1" />
<PackageVersion Include="Daml.Ledger.Abstractions" Version="0.4.1-preview.1" />
<PackageReference Include="Daml.Ledger.Abstractions" />
paket add Daml.Ledger.Abstractions --version 0.4.1-preview.1
#r "nuget: Daml.Ledger.Abstractions, 0.4.1-preview.1"
#:package Daml.Ledger.Abstractions@0.4.1-preview.1
#addin nuget:?package=Daml.Ledger.Abstractions&version=0.4.1-preview.1&prerelease
#tool nuget:?package=Daml.Ledger.Abstractions&version=0.4.1-preview.1&prerelease
Daml.Ledger.Abstractions
Transport-agnostic abstractions for Daml ledger clients.
ILedgerClient is the composition of three capability interfaces, each
covering one slice of ledger interaction:
ILedgerWriter— submit commands, create contracts, exercise choices.ILedgerReader— query the participant's ledger end.ILedgerStreamer— subscribe to contract events and active-contract-set snapshots.
A transport implements the split interfaces (and therefore ILedgerClient);
a consumer that only needs to read or stream can depend on ILedgerReader or
ILedgerStreamer alone. Implementations live in their own transport
packages:
- (planned, not yet published) gRPC client for Canton participants
- (planned) HTTP REST client for the Daml JSON Ledger API
- in-memory test fakes for application testing
Derived convenience methods — single-Party overloads, the throwing
ExerciseAsync wrappers, and the create-by-exercise helpers
(TryCreateOneByExerciseAsync, TryCreateManyByExerciseAsync, and their
throwing CreateOneByExerciseAsync/CreateManyByExerciseAsync twins) — live in
Daml.Ledger.Abstractions.Extensions and are opt-in via using Daml.Ledger.Abstractions.Extensions;. The capability interfaces stay free of
this sugar, so a consumer that only needs the SubmitterInfo-based
primitives never has it in scope.
Ledger positions are the LedgerOffset value type, never a raw long.
Generated codegen output (<Choice>Async extensions, projector helpers)
references this package — never a transport-specific one — so consumers
that only need projectors do not transitively depend on a gRPC stack.
Versioned in lockstep with Daml.Runtime and Daml.Codegen.CSharp.
Interface-only package. Daml.Ledger.Abstractions.Testing.Conformance ships the
shared behavioral conformance kit — a transport implementation subclasses it
to verify it upholds this package's documented contract (cancellation,
unclassified-row surfacing, terminal checkpoint, seeded-row ordering) —
beyond that, implementers carry their own contract tests.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Daml.Runtime (>= 0.4.1-preview.1)
NuGet packages (45)
Showing the top 5 NuGet packages that depend on Daml.Ledger.Abstractions:
| Package | Downloads |
|---|---|
|
Splice.Api.Token.Metadata.V1
C# bindings for Daml package splice-api-token-metadata-v1 |
|
|
Splice.Api.Token.Holding.V1
C# bindings for Daml package splice-api-token-holding-v1 |
|
|
Splice.Api.Token.Allocation.V1
C# bindings for Daml package splice-api-token-allocation-v1 |
|
|
Splice.Api.Token.Transfer.Instruction.V1
C# bindings for Daml package splice-api-token-transfer-instruction-v1 |
|
|
Splice.Api.Featured.App.V1
C# bindings for Daml package splice-api-featured-app-v1 |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.4.1-preview.1 | 275 | 7/25/2026 |
| 0.4.0-preview.3 | 294 | 7/19/2026 |
| 0.4.0-preview.2 | 359 | 7/18/2026 |
| 0.4.0-preview.1 | 284 | 7/17/2026 |
| 0.3.0-preview.1 | 337 | 7/4/2026 |
| 0.2.0-preview.3 | 226 | 7/3/2026 |
| 0.2.0-preview.2 | 229 | 7/2/2026 |
| 0.1.8-preview.5 | 271 | 6/24/2026 |
| 0.1.8-preview.4 | 237 | 6/23/2026 |
| 0.1.8-preview.2 | 464 | 6/12/2026 |
| 0.1.8-preview.1 | 68 | 6/11/2026 |