Varve.Protocol.Client
0.1.0-preview.20
This is a prerelease version of Varve.Protocol.Client.
dotnet add package Varve.Protocol.Client --version 0.1.0-preview.20
NuGet\Install-Package Varve.Protocol.Client -Version 0.1.0-preview.20
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Varve.Protocol.Client" Version="0.1.0-preview.20" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Varve.Protocol.Client" Version="0.1.0-preview.20" />
<PackageReference Include="Varve.Protocol.Client" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Varve.Protocol.Client --version 0.1.0-preview.20
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Varve.Protocol.Client, 0.1.0-preview.20"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Varve.Protocol.Client@0.1.0-preview.20
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Varve.Protocol.Client&version=0.1.0-preview.20&prerelease
#tool nuget:?package=Varve.Protocol.Client&version=0.1.0-preview.20&prerelease
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Varve.Protocol.Client
The HTTP client for a Varve server, and what a server needs to reach other
servers: SERVICE over HTTP for the evaluator, and the document fetch that
LOAD needs, both under an endpoint policy the operator sets.
SparqlHttpClienttalks to one dataset's endpoints: queries and updates (SPARQL 1.1 Protocol), the Graph Store Protocol, the change feed and the diff, and the dataset's management resources under/manage/(with a token for the management audience), withIf-Match,Varve-As-OfandAcceptas the caller says. Its bearer token comes from aBearerTokenProvidercalled for every request, so one client serves many users; a token past its expiry is never sent (ADR 0127).FollowAsyncfollows the commits: history in pages, then the live tail, each commit to a handler and then its position to anIFollowCheckpoint: at least once, resumable from any position (ADR 0129). The records areVarve.Delta's, so a consumer of the feed ships no store (ADR 0128).ApplyAsyncmakes a dataset's data what aDatasetSetupdeclares: its baseline by the Graph Store Protocol and its migrations, on a dataset the management plane declares (ADR 0163), each recorded invarve:setupin its own commit; applying it again commits nothing (ADR 0130).DatasetSetupFilereads one from the setup file's YAML subset.AddVarve(Varve.Protocol.Client.Hosting) registers the client in an application's services and applies its setup as the host starts, failing the start when it cannot (ADR 0131).HttpServiceHandlerimplements the evaluator'sIServiceHandler: theSERVICEpattern is sent asSELECT … WHERE { … }, the answer read back withVarve.Sparql.Results. A failure is returned, andSILENTis the evaluator's decision (ADR 0055).RdfDocumentClientfetches an RDF document by IRI with content negotiation over the four syntaxes. A host bindsILoadSourceto it.EndpointPolicydecides every outbound address before a connection is opened: an allow-list of IRI prefixes, empty by default;httpandhttpsonly; loopback, link-local and private addresses refused unless allowed; no redirects, no credentials in the authority.ClientLimitsbound every request: a timeout and a cap on response bytes.
EndpointPolicy policy = new(["https://query.wikidata.org/"], allowPrivateAddresses: false);
HttpClient http = OutboundHttp.CreateClient();
EvaluationOptions options = new() { ServiceHandler = new HttpServiceHandler(http, policy, ClientLimits.Default) };
ADRs 0103, 0104 and 0127–0131.
| 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. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net10.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.14)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.14)
- Varve.Delta (>= 0.1.0-preview.20)
- Varve.Iri (>= 0.1.0-preview.20)
- Varve.JsonLd (>= 0.1.0-preview.20)
- Varve.Rdf (>= 0.1.0-preview.20)
- Varve.RdfXml (>= 0.1.0-preview.20)
- Varve.Sparql (>= 0.1.0-preview.20)
- Varve.Sparql.Evaluation (>= 0.1.0-preview.20)
- Varve.Sparql.Results (>= 0.1.0-preview.20)
- Varve.Turtle (>= 0.1.0-preview.20)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.1.0-preview.20 | 45 | 11/10/2026 |
| 0.1.0-preview.19 | 55 | 11/6/2026 |
| 0.1.0-preview.18 | 49 | 11/6/2026 |
| 0.1.0-preview.17 | 52 | 11/6/2026 |
| 0.1.0-preview.16 | 55 | 11/3/2026 |
| 0.1.0-preview.15 | 90 | 10/26/2026 |
| 0.1.0-preview.14 | 56 | 10/26/2026 |
| 0.1.0-preview.13 | 62 | 10/26/2026 |
| 0.1.0-preview.12 | 78 | 10/23/2026 |
| 0.1.0-preview.11 | 60 | 10/21/2026 |
| 0.1.0-preview.10 | 65 | 10/20/2026 |
| 0.1.0-preview.9 | 67 | 10/19/2026 |
| 0.1.0-preview.8 | 66 | 10/17/2026 |
| 0.1.0-preview.7 | 68 | 10/17/2026 |
| 0.1.0-preview.6 | 61 | 10/15/2026 |
| 0.1.0-preview.5 | 57 | 10/15/2026 |
| 0.1.0-preview.4 | 59 | 10/13/2026 |
| 0.1.0-preview.3 | 56 | 10/12/2026 |
| 0.1.0-preview.2 | 63 | 10/9/2026 |