Adam Hathcock
227fec66ad
more pooling
2026-01-15 15:16:11 +00:00
Adam Hathcock
38eec23e07
rar byte[] better
2026-01-15 15:16:04 +00:00
Adam Hathcock
437271c6a2
change byte[] to memory using pool
2026-01-15 15:15:57 +00:00
Adam Hathcock
81a2060c75
reduce memory usage on headers
2026-01-15 15:15:50 +00:00
Adam Hathcock
5e90cfd6c5
Merge pull request #1128 from adamhathcock/adam/async-interface
...
Change interfaces to be consistent for new Async paths (definitely breaks things)
2026-01-15 15:13:33 +00:00
Adam Hathcock
2d597e6e43
be more lazy with loading of sync stuff
2026-01-15 15:09:23 +00:00
Adam Hathcock
a410f73bf3
archive asyncs are more right
2026-01-15 14:52:10 +00:00
Adam Hathcock
b41296194f
more updates to docs
2026-01-15 13:29:57 +00:00
Adam Hathcock
bf7416753a
update docs
2026-01-15 13:04:09 +00:00
Adam Hathcock
7fbd751d27
change tests to work
2026-01-15 13:00:05 +00:00
Adam Hathcock
85b28dfe68
more refactoring
2026-01-15 12:20:35 +00:00
Adam Hathcock
779fba5deb
finish the open refactor?
2026-01-15 12:06:54 +00:00
Adam Hathcock
2756b1f6f8
more refactor
2026-01-15 11:55:56 +00:00
Adam Hathcock
7b76858ae1
refactoring naming again
2026-01-15 11:41:30 +00:00
Adam Hathcock
84b5b5a717
add more tests
2026-01-14 14:33:20 +00:00
Adam Hathcock
ebfa16f09f
more test fixes
2026-01-14 14:12:53 +00:00
Adam Hathcock
c1d240b516
Fix more tests
2026-01-14 14:06:39 +00:00
Adam Hathcock
5c4719f4a9
missing extensions
2026-01-14 13:39:11 +00:00
Adam Hathcock
95d2278d8b
fmt
2026-01-14 12:13:29 +00:00
Adam Hathcock
e63ee57ef0
same for writers
2026-01-14 09:29:44 +00:00
Adam Hathcock
775efa1b26
Reader open factories
2026-01-14 09:23:18 +00:00
Adam Hathcock
3677b4b193
add default interfaces to enforce consistency
2026-01-14 08:57:12 +00:00
Adam Hathcock
c32f4b4f2a
fix test reference
2026-01-14 08:33:49 +00:00
Adam Hathcock
8d34f88ca6
fix up gitignore
2026-01-13 16:42:54 +00:00
Adam Hathcock
ca4cf25a1f
clean up lazy readonly collections and add tests
2026-01-13 16:39:55 +00:00
Adam Hathcock
4fa976b478
remove unused ref
2026-01-13 15:29:02 +00:00
Adam Hathcock
767f3a4985
fix up extensions to more like polyfills
2026-01-13 15:26:45 +00:00
Adam Hathcock
ddc08e068e
fix async error
2026-01-13 15:16:38 +00:00
Adam Hathcock
a1a86cdde8
fmt
2026-01-13 14:29:10 +00:00
Adam Hathcock
fc85f1fa2c
more tar async fixes
2026-01-13 14:28:45 +00:00
Adam Hathcock
0b8081f320
gzip fixes
2026-01-13 14:24:36 +00:00
Adam Hathcock
0b5371d986
more async fixing
2026-01-13 14:06:14 +00:00
Adam Hathcock
cdca909d84
fmt
2026-01-13 13:58:31 +00:00
Adam Hathcock
ec7d2e357d
fix lock?
2026-01-13 13:58:03 +00:00
Adam Hathcock
1c0183ef11
force async tests
2026-01-13 13:56:56 +00:00
Adam Hathcock
9cf2b3129c
fixed up async writer
2026-01-13 13:54:15 +00:00
Adam Hathcock
9a4e864f5e
fix usage of ArchiveFactory
2026-01-13 13:49:35 +00:00
Adam Hathcock
4df952db1b
split out factories for archive
2026-01-12 16:32:26 +00:00
Adam Hathcock
1b4cedfa13
misc fixes
2026-01-12 16:21:20 +00:00
Adam Hathcock
6d6103afd6
update docs
2026-01-12 16:08:16 +00:00
Adam Hathcock
d727d76299
Merge remote-tracking branch 'origin/master' into adam/async-interface
2026-01-12 15:02:19 +00:00
Adam Hathcock
0502ff545e
test fixes and fmt
2026-01-12 15:01:29 +00:00
Adam Hathcock
fce4a96718
make Writable interfaces for archive
2026-01-12 14:57:13 +00:00
Adam Hathcock
38203fb950
Fix async reader variable types - Remove double await on ReaderFactory.OpenAsync and use IAsyncReader
...
- Removed 'await' keyword before ReaderFactory.OpenAsync() calls since the method returns IAsyncReader directly (not Task)
- Changed ZipReader.Open() to ReaderFactory.OpenAsync() in Zip64AsyncTests.ReadForwardOnlyAsync()
- Changed TarReader.Open() to ReaderFactory.OpenAsync() in TarReaderAsyncTests.Tar_BZip2_Entry_Stream_Async()
- Fixed EntryStream disposal from 'await using' to 'using' since EntryStream doesn't implement IAsyncDisposable
- These changes fix compilation errors where async methods were being called on IReader (synchronous) instead of IAsyncReader (asynchronous)
2026-01-12 14:14:46 +00:00
Adam Hathcock
65dba509e0
Merge pull request #1121 from adamhathcock/adam/async
...
More async for ZipReader and ZipWriter
2026-01-12 14:07:37 +00:00
Adam Hathcock
0615d17b8b
fix async interfacing for open
2026-01-12 13:45:21 +00:00
Adam Hathcock
c1f8580d89
Remove unnecessary ValueTask wrappers from async factory methods
...
Change return types from ValueTask<T> to direct interface types (IAsyncArchive, IAsyncReader, IWriter) for wrapper methods that don't perform async work. This eliminates unnecessary async state machine allocations while maintaining the same public API behavior.
Changes:
- Interface definitions: Updated IArchiveFactory, IMultiArchiveFactory, IReaderFactory, IWriterFactory
- Concrete factories: Updated archive factories (Zip, Tar, Rar, GZip, SevenZip) and reader-only factories (Ace, Arc, Arj)
- Static factory methods: Updated ReaderFactory, ArchiveFactory, WriterFactory to use new signatures
- Archive classes: Updated static OpenAsync methods in ZipArchive, TarArchive, RarArchive, SevenZipArchive, GZipArchive
- Supporting changes: Updated Factory.cs and async polyfills
Performance benefit: Reduced GC pressure by eliminating unnecessary state machine overhead for non-async wrapper methods.
2026-01-12 13:16:44 +00:00
Adam Hathcock
c5a6f900df
Merge branch 'adam/async' into adam/async-interface
2026-01-12 13:02:51 +00:00
Adam Hathcock
3807c3ce2a
Merge pull request #1127 from adamhathcock/copilot/sub-pr-1121-yet-again
...
Fix async test method naming in ZipArchiveAsyncTests
2026-01-12 12:10:51 +00:00
Adam Hathcock
d2f328af01
Merge pull request #1126 from adamhathcock/copilot/sub-pr-1121-another-one
...
Fix typo in TestBase.cs comment
2026-01-12 12:10:11 +00:00