SourceRpc 5.3.2
dotnet add package SourceRpc --version 5.3.2
NuGet\Install-Package SourceRpc -Version 5.3.2
<PackageReference Include="SourceRpc" Version="5.3.2" />
<PackageVersion Include="SourceRpc" Version="5.3.2" />
<PackageReference Include="SourceRpc" />
paket add SourceRpc --version 5.3.2
#r "nuget: SourceRpc, 5.3.2"
#:package SourceRpc@5.3.2
#addin nuget:?package=SourceRpc&version=5.3.2
#tool nuget:?package=SourceRpc&version=5.3.2
SourceRpc
The protocol, with no transport in it.
A .NET process joins a Source RPC network as an ordinary peer: it serves methods, publishes events and calls other peers, over whichever carrier suits it. This package is everything that decides what a frame means — the frame, the dispatcher, the client, routing, the error model, telemetry, and the command semantics a plant needs: deadlines, owner fences, idempotency and deferred answers.
It takes no web framework and no transport. A SignalR hub needs ASP.NET Core; an MQTT peer on a device does not, and should not carry a web stack to get a protocol. Add the binding that matches how the connection is opened:
| package | for |
|---|---|
SourceRpc.SignalR |
a hub other processes dial into, and a client that dials out |
SourceRpc.Mqtt |
a peer on a broker, speaking a layout a plain MQTT client can read |
SourceRpc.SocketIo |
a client dialling a TypeScript socket.io server |
builder.Services
.AddSourceRpc(options => options.Name = "line-controller")
.AddResponder<AutomationSurface>();
Full documentation, including the wire formats and what each safety semantic guarantees: github.com/source-repo/rpc.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. 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. |
-
net8.0
- MessagePack.Annotations (>= 2.5.302)
- Microsoft.Extensions.Logging.Abstractions (>= 8.0.2)
- System.Diagnostics.DiagnosticSource (>= 8.0.1)
NuGet packages (5)
Showing the top 5 NuGet packages that depend on SourceRpc:
| Package | Downloads |
|---|---|
|
SourceRpc.SignalR
Source RPC over ASP.NET Core SignalR: a hub that makes a .NET process reachable as a peer, and a client transport for one that dials out. Serves methods and publishes events over JSON or MessagePack. |
|
|
SourceRpc.SocketIo
Source RPC over socket.io, for a .NET peer that dials out to a TypeScript socket.io server. Client only - socket.io has no maintained .NET server. |
|
|
SourceRpc.Mqtt
Source RPC over MQTT 5: a peer on a broker, speaking the mr- property layout that lets a plain MQTT client take part with no msgrpc code. |
|
|
SourceRpc.Query
The pull half of a Source RPC network for .NET: what a failure means, whether a call may be sent again, a deadline that is a budget across attempts, and a canonical cache key - over Polly and FusionCache. |
|
|
SourceRpc.Continuity
Read, verify and take over a Source RPC component's state: the snapshot envelope, the revision manifest, the obligations a running activation held, and the rules that decide whether a .NET revision may replace a TypeScript one. |
GitHub repositories
This package is not used by any popular GitHub repositories.