RecursiveAI.OneArchive
1.1.0
See the version list below for details.
dotnet add package RecursiveAI.OneArchive --version 1.1.0
NuGet\Install-Package RecursiveAI.OneArchive -Version 1.1.0
<PackageReference Include="RecursiveAI.OneArchive" Version="1.1.0" />
<PackageVersion Include="RecursiveAI.OneArchive" Version="1.1.0" />
<PackageReference Include="RecursiveAI.OneArchive" />
paket add RecursiveAI.OneArchive --version 1.1.0
#r "nuget: RecursiveAI.OneArchive, 1.1.0"
#:package RecursiveAI.OneArchive@1.1.0
#addin nuget:?package=RecursiveAI.OneArchive&version=1.1.0
#tool nuget:?package=RecursiveAI.OneArchive&version=1.1.0
RecursiveAI.OneArchive
Archives and containers for .NET in managed code, with safe extraction by default and one Archive API over all of them. It builds on RecursiveAI.OneCompress and has no other dependency than the .NET base class library.
Stable from 1.0: semantic versioning, and compressed bytes per codec and level stay the same within 1.x (see the README).
- Formats: tar (ustar, pax, GNU, sparse files), zip (zip64, data descriptors, WinZip AES, ZipCrypto for reading, recovery of damaged files), 7z (solid blocks, encoded headers, AES-256), cpio, ar, ISO 9660 with Joliet and Rock Ridge, cab (stored, MSZIP, LZX), the RAR 5 container (listing and stored entries), Microsoft compound files, and single compressed files and
.tar.*combinations (gz, zst, lz4, xz, lzip, bz2, br). - Happy path:
Archive.Extract("data.tar.zst", "out"),Archive.Open(path)(entries, random access when the source can seek),Archive.Create("backup.tar.zst").Add("assets/").Save(). The format comes from the magic bytes, then the extension. - Per-format readers and writers (
ZipReader,TarWriter,SevenZipReader, ...) expose every header field. - Safe by default: no write outside the target directory (absolute paths,
.., drive letters, backslashes, symbolic and hard link tricks, devices), and limits on total size, expansion ratio, entry count, path length and nesting. A limit hit is a typed exception, never a truncated result. - Not supported: compressed RAR entries, Quantum folders in cab, BCJ2 in 7z, spanned zip; AES in browser WebAssembly.
Archive.Extract("data.tar.zst", "out"); // nothing is written outside "out"
Archive.Create("backup.tar.zst").Add("assets/").Save(); // format and compression from the extension
using var archive = Archive.Open("data.tar"); // entries; random access when the source can seek
See the README and the docs. Trimmed apps register only the codecs they need through ArchiveCodecs (docs).
Licensed under MIT OR Apache-2.0. Third-party material is listed in THIRD-PARTY-NOTICES.md, included in the package.
| 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
- RecursiveAI.OneCompress (>= 1.1.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on RecursiveAI.OneArchive:
| Package | Downloads |
|---|---|
|
RecursiveAI.OneMail
Reads and writes email formats for .NET: MIME/EML, MBOX, Maildir, TNEF, MSG, PST/OST and more, with a lossless model and typed defects. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.1.1 | 40 | 11/1/2026 |
| 1.1.0 | 144 | 10/31/2026 |
| 1.0.0 | 79 | 10/31/2026 |
| 0.7.0-preview.1 | 221 | 10/30/2026 |
| 0.5.1-preview.1 | 35 | 10/29/2026 |
| 0.5.0-preview.1 | 39 | 10/29/2026 |
| 0.4.0-preview.1 | 42 | 10/29/2026 |
| 0.3.0-preview.1 | 40 | 10/29/2026 |
| 0.2.0-preview.1 | 38 | 10/28/2026 |
| 0.1.0-preview.1 | 44 | 10/28/2026 |
See CHANGELOG.md in the repository.