Commit Graph

2646 Commits

Author SHA1 Message Date
Adam Hathcock
1ba1966e1c Merge remote-tracking branch 'origin/master' into adam/tar-pax
# Conflicts:
#	src/SharpCompress/Archives/Tar/TarArchive.Async.cs
#	src/SharpCompress/Archives/Tar/TarArchive.cs
#	src/SharpCompress/packages.lock.json
2026-04-19 15:19:19 +01:00
Adam Hathcock
6105373d7f First pass of pax implementation 2026-04-19 15:17:35 +01:00
Adam Hathcock
8bd386cde2 Merge pull request #1275 from adamhathcock/adam/pooledmemorystream
Add a PooledMemoryStream to avoid allocating
2026-04-19 15:02:27 +01:00
copilot-swe-agent[bot]
f8485b0e8c Compute CRC without GetBuffer() in SevenZipWriter to avoid allocation
Agent-Logs-Url: https://github.com/adamhathcock/sharpcompress/sessions/77f37cc4-3538-4df1-a816-aa7391065878

Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com>
2026-04-19 11:33:40 +00:00
Adam Hathcock
a286d104e9 Merge pull request #1288 from adamhathcock/adam/tar-pax
update docs for tar gap analysis and XZ usage
2026-04-19 12:23:42 +01:00
copilot-swe-agent[bot]
49a7e15a8b Add EnsureNotClosed() to Flush and FlushAsync in PooledMemoryStream
Agent-Logs-Url: https://github.com/adamhathcock/sharpcompress/sessions/0ce9533f-f529-4c07-b641-6bf0883a0643

Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com>
2026-04-19 11:20:34 +00:00
Adam Hathcock
e0ccbbb7c7 Update src/SharpCompress/IO/PooledMemoryStream.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-04-19 12:19:06 +01:00
Adam Hathcock
891d1268fb Update src/SharpCompress/IO/PooledMemoryStream.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-04-19 12:18:47 +01:00
Adam Hathcock
a59f4f330d update docs for tar gap analysis 2026-04-19 12:17:39 +01:00
Adam Hathcock
ad3c5dafd7 update tests 2026-04-19 12:11:50 +01:00
Adam Hathcock
b36689af20 format 2026-04-19 11:48:54 +01:00
Adam Hathcock
e29670e55f Merge branch 'master' into adam/pooledmemorystream 2026-04-19 11:43:24 +01:00
Adam Hathcock
14b0fd012c Merge pull request #1274 from adamhathcock/adam/master-release
Release to Master
2026-04-19 11:32:16 +01:00
Adam Hathcock
51acd43b16 Merge branch 'release' into adam/master-release 2026-04-19 11:25:39 +01:00
Adam Hathcock
bf075d291b Merge pull request #1286 from puk06/docs/appnote-reference-link
Replace APPNOTE.TXT contents with reference link note
2026-04-15 15:59:29 +01:00
Puk06
f77f372d9f Add specification link label to APPNOTE reference 2026-04-15 07:48:26 +09:00
Puk06
23e72452e3 Replace APPNOTE.TXT contents with reference link note 2026-04-15 07:45:36 +09:00
Copilot
20932b81b5 Fix SevenZipArchive.IsSolidAsync() always returning false (#1284)
* Initial plan

* Fix IsSolidAsync() returning false for 7z solid archives

SevenZipArchive was missing an override for IsSolidAsync(), so the
base class default (always returning false) was used. Added an override
that uses the same logic as the sync IsSolid property: load entries
asynchronously and check if any folder has more than one file.

Also updated existing async tests to use IsSolidAsync() instead of
casting to SevenZipArchive to call the sync IsSolid, and added a new
SevenZipArchive_TestSolidDetectionAsync test that mirrors the existing
sync SevenZipArchive_TestSolidDetection test.

Agent-Logs-Url: https://github.com/adamhathcock/sharpcompress/sessions/60f8daec-e784-4845-a65c-5a493fbb53ef

Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com>
2026-04-13 16:59:23 +01:00
Copilot
da30b5c805 Fix incorrect code examples in docs for sync/async usage (#1280) 2026-04-10 17:47:33 +01:00
Adam Hathcock
b2b036a2be Merge pull request #1279 from aromaa/fix/access-time-exception 2026-04-10 17:38:48 +01:00
Dirk Lemstra
ef67c0c3bd Corrected async examples. (#1277) 2026-04-10 17:34:51 +01:00
aromaa
4d774c6a7a Fix setting invalid access time fails extraction 2026-04-10 15:56:48 +03:00
Adam Hathcock
2487d8995c Merge remote-tracking branch 'origin/adam/pooledmemorystream' into adam/pooledmemorystream
# Conflicts:
#	src/SharpCompress/IO/PooledMemoryStream.cs
2026-04-05 15:26:18 +01:00
Adam Hathcock
d1e6173b50 remove contiguous buffer tracking and added overrenting array pool test 2026-04-05 15:25:33 +01:00
Adam Hathcock
e7cacdd7ee don't resize ring buffer 2026-04-05 15:19:44 +01:00
Adam Hathcock
fb78598516 implement GetBuffer with non-pooled array creation 2026-04-05 15:16:00 +01:00
Adam Hathcock
ec46584e54 Update src/SharpCompress/IO/PooledMemoryStream.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-04-05 14:57:36 +01:00
Adam Hathcock
4f09c6dc00 Update tests/SharpCompress.Test/Streams/PooledMemoryStreamTests.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-04-05 14:57:04 +01:00
Adam Hathcock
bfe78249fc remove net5 from target frameworks to avoid issues 2026-04-05 14:47:41 +01:00
Adam Hathcock
c25fec313e fix PooledMemoryStream.cs 2026-04-05 14:39:15 +01:00
copilot-swe-agent[bot]
8c4fed373b Remove try/catch from async overloads and fix CA1725 parameter naming in PooledMemoryStream
Agent-Logs-Url: https://github.com/adamhathcock/sharpcompress/sessions/1f2c3c48-1112-43f1-82ce-efb157fbe0d5

Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com>
2026-04-05 13:21:54 +00:00
Adam Hathcock
c01dd5cd90 Update tests/SharpCompress.Test/Streams/PooledMemoryStreamTests.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-04-05 14:16:47 +01:00
Adam Hathcock
5e7644bd18 Update src/SharpCompress/IO/PooledMemoryStream.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-04-05 14:11:48 +01:00
Adam Hathcock
6b9a3f8b69 Update src/SharpCompress/Compressors/PPMd/PpmdStream.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-04-05 14:10:17 +01:00
Adam Hathcock
db9bdb20bd Update src/SharpCompress/IO/PooledMemoryStream.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-04-05 14:09:58 +01:00
Adam Hathcock
2bf007542a cleaned up PooledMemoryStream.cs 2026-04-04 11:10:43 +01:00
Adam Hathcock
a26198a6b0 use pooled memory streams for better performance 2026-04-04 11:04:51 +01:00
Adam Hathcock
9db27dfc2b fix build 2026-04-04 10:53:12 +01:00
Adam Hathcock
b326b719bc Merge branch 'release' into adam/master-release
# Conflicts:
#	src/SharpCompress/packages.lock.json
2026-04-04 10:50:12 +01:00
Adam Hathcock
817bd2a95e First pass of implementation 2026-04-04 10:44:23 +01:00
Adam Hathcock
5758b08236 Merge pull request #1272 from adamhathcock/copilot/fix-decompression-bomb-and-crash-bugs
Fix fuzzer-found decompression bomb and crash bugs
0.47.4
2026-04-03 13:05:55 +01:00
Adam Hathcock
d532204f6b Merge pull request #1273 from adamhathcock/copilot/dynamic-default-ringbuffer-bzip2
Dynamic ring buffer sizing for BZip2 and ZStandard on non-seekable streams
2026-04-03 12:51:35 +01:00
copilot-swe-agent[bot]
01fee28759 ShrinkStream: add uncompressedSize bounds check, remove unused CreateAsync params
Agent-Logs-Url: https://github.com/adamhathcock/sharpcompress/sessions/9ed10d73-ebf8-45d3-8d25-d5aa1f4989e7

Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com>
2026-04-03 11:49:45 +00:00
Adam Hathcock
bd0d1cfba8 remove more extra stuff 2026-04-03 12:47:04 +01:00
copilot-swe-agent[bot]
9ce6ec8d6f Dynamic ring buffer sizing for BZip2 and ZStandard on non-seekable streams
Agent-Logs-Url: https://github.com/adamhathcock/sharpcompress/sessions/b115976a-5d8a-412e-a462-72b4531f2d0a

Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com>
2026-04-02 11:01:08 +00:00
copilot-swe-agent[bot]
669fbed62b Dynamic ring buffer sizing for BZip2 and ZStandard on non-seekable streams
Agent-Logs-Url: https://github.com/adamhathcock/sharpcompress/sessions/b115976a-5d8a-412e-a462-72b4531f2d0a

Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com>
2026-04-02 10:56:50 +00:00
copilot-swe-agent[bot]
c4c646c4dd Initial plan 2026-04-02 10:48:59 +00:00
Adam Hathcock
16903bdecb clean up shrink stream to ensure correctness 2026-04-02 11:48:01 +01:00
copilot-swe-agent[bot]
58bec11b2c Fix decompression bomb and crash bugs (fuzzer-found)
Agent-Logs-Url: https://github.com/adamhathcock/sharpcompress/sessions/84b02876-db79-41ed-875b-f1c7dbe5d8e2

Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com>
2026-04-02 09:49:27 +00:00
copilot-swe-agent[bot]
24e812ce76 Initial plan 2026-04-02 09:33:07 +00:00