Shuttle.Core.Compression 20.0.0

Prefix Reserved
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package Shuttle.Core.Compression --version 20.0.0
                    
NuGet\Install-Package Shuttle.Core.Compression -Version 20.0.0
                    
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="Shuttle.Core.Compression" Version="20.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Shuttle.Core.Compression" Version="20.0.0" />
                    
Directory.Packages.props
<PackageReference Include="Shuttle.Core.Compression" />
                    
Project file
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 Shuttle.Core.Compression --version 20.0.0
                    
#r "nuget: Shuttle.Core.Compression, 20.0.0"
                    
#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 Shuttle.Core.Compression@20.0.0
                    
#: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=Shuttle.Core.Compression&version=20.0.0
                    
Install as a Cake Addin
#tool nuget:?package=Shuttle.Core.Compression&version=20.0.0
                    
Install as a Cake Tool

Shuttle.Core.Compression

PM> Install-Package Shuttle.Core.Compression

Provides a compression adapter through the ICompressionAlgorithm interface.

Implementations available in this package:

  • DeflateCompressionAlgorithm
  • GZipCompressionAlgorithm
  • NullCompressionAlgorithm

There is also an ICompressionService that acts as a central container for all registered ICompressionAlgorithm implementations.

Configuration

In order to add compression:

services.AddCompression();

This will try to add the CompressionService singleton.

In order to add specific compression algorithms use the relevant builder calls:

services.AddCompression(builder => {
	builder.AddGzip();
	builder.AddDeflate();
	builder.AddNull();
});

Usage

The ICompressionService can be injected into any class that requires compression services:

var algorithm = compressionService.Get("algorithm-name");
var compressed = await algorithm.CompressAsync(Encoding.UTF8.GetBytes("some data"));
var decompressed = await algorithm.DecompressAsync(compressed);
Product 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on Shuttle.Core.Compression:

Package Downloads
Shuttle.Esb

Contains the core Shuttle.Esb assembly that should always be referenced when building Shuttle.Esb solutions.

Shuttle.Recall

Event sourcing mechanism.

Shuttle.Hopper

Hopper is a flexible enterprise service bus which works with Azure Storage Queues, Amazon SQS, RabbitMQ, Kafka, and Event Hubs through a provider plugin API.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
21.0.0-alpha 36 1/18/2026
20.0.0 4,230 2/2/2025
12.0.1 5,264 5/3/2024
12.0.0 1,503 4/30/2024
11.0.1 16,624 12/1/2022
11.0.0 28,080 9/4/2022
10.0.4 48,746 11/26/2020
10.0.3 689 11/23/2020
10.0.2 100,974 7/3/2018
10.0.0 22,935 1/2/2018