Surge.NET
1.0.0-beta.53
See the version list below for details.
dotnet add package Surge.NET --version 1.0.0-beta.53
NuGet\Install-Package Surge.NET -Version 1.0.0-beta.53
<PackageReference Include="Surge.NET" Version="1.0.0-beta.53" />
<PackageVersion Include="Surge.NET" Version="1.0.0-beta.53" />
<PackageReference Include="Surge.NET" />
paket add Surge.NET --version 1.0.0-beta.53
#r "nuget: Surge.NET, 1.0.0-beta.53"
#:package Surge.NET@1.0.0-beta.53
#addin nuget:?package=Surge.NET&version=1.0.0-beta.53&prerelease
#tool nuget:?package=Surge.NET&version=1.0.0-beta.53&prerelease
Surge
Automatic updates for any application. Surge.NET is the .NET wrapper for the Surge native update framework.
Target Frameworks
| Target | Binding | Compatibility |
|---|---|---|
netstandard2.0 |
[DllImport] |
.NET Framework 4.6.1+, .NET Core, Mono, Xamarin |
net10.0 |
[LibraryImport] |
AOT/trim-compatible; CI publishes a Native AOT smoke app |
Quick Start
using var mgr = new SurgeUpdateManager();
await mgr.UpdateToLatestReleaseAsync(
onUpdatesAvailable: releases =>
Console.WriteLine($"{releases.Count} update(s), latest: {releases.Latest?.Version}"),
onAfterApplyUpdate: release =>
Console.WriteLine($"Updated to {release.Version}")
);
One call that checks for updates, downloads the smallest available patch, verifies integrity, extracts, and applies — with progress callbacks and cancellation support.
Key Features
- Zero managed dependencies — no external NuGet packages are required
- Delta patches — binary diffs (bsdiff + zstd) mean users download only what changed, typically 5–20% of the full package
- Release channels — ship to
betafirst, then promote the exact same build tostable - Persistent assets — config files, databases, and user content survive across updates
- Cross-platform — Linux, Windows, and macOS with native shortcuts and platform-correct install directories
- Progress & cancellation — per-phase progress callbacks and
CancellationTokensupport
Surge.NET is a managed wrapper around the native Surge shared library. The
matching libsurge.so, surge.dll, or libsurge.dylib from the same Surge
version and runtime identifier must be shipped with the application. Official
release archives provide those native binaries; the NuGet package does not
embed them.
Storage Backends
Releases are stored directly in cloud storage — no update server required.
- Amazon S3 (and compatible: MinIO, Cloudflare R2, DigitalOcean Spaces)
- Azure Blob Storage
- Google Cloud Storage
- GitHub Releases
- Local filesystem
Links
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. 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 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. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- No dependencies.
-
net10.0
- No dependencies.
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 |
|---|---|---|
| 1.0.0-beta.60 | 20 | 9/1/2026 |
| 1.0.0-beta.59 | 27 | 9/1/2026 |
| 1.0.0-beta.58 | 23 | 9/1/2026 |
| 1.0.0-beta.57 | 24 | 9/1/2026 |
| 1.0.0-beta.56 | 30 | 9/1/2026 |
| 1.0.0-beta.55 | 43 | 8/26/2026 |
| 1.0.0-beta.54 | 50 | 8/20/2026 |
| 1.0.0-beta.53 | 56 | 8/14/2026 |
| 1.0.0-beta.46 | 1,089 | 6/19/2026 |
| 1.0.0-beta.45 | 160 | 6/18/2026 |
| 1.0.0-beta.44 | 147 | 6/17/2026 |
| 1.0.0-beta.43 | 348 | 6/11/2026 |
| 1.0.0-beta.42 | 187 | 6/11/2026 |
| 1.0.0-beta.41 | 663 | 5/27/2026 |
| 1.0.0-beta.40 | 82 | 5/27/2026 |
| 1.0.0-beta.39 | 865 | 5/22/2026 |
| 1.0.0-beta.38 | 136 | 5/21/2026 |
| 1.0.0-beta.37 | 91 | 5/21/2026 |
| 1.0.0-beta.36 | 83 | 5/21/2026 |
| 0.4.0 | 126 | 3/24/2026 |