mirror of
https://github.com/adamhathcock/sharpcompress.git
synced 2026-02-08 13:34:57 +00:00
[PR #1053] Rationalize SourceStream vs Volumes with IByteSource abstraction #1477
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/adamhathcock/sharpcompress/pull/1053
Author: @Copilot
Created: 11/29/2025
Status: 🔄 Open
Base:
master← Head:copilot/rationalize-sourcestream-volumes📝 Commits (6)
cef6d46Initial plan75db75aAdd IByteSource abstraction and documentation for Volume/SourceStream architecture3470f71Remove unused _leaveOpen field from StreamByteSourcef2cde3aRefactor SourceStream to use IByteSource internallyb2b9e4eAdd documentation to SharpCompressStream clarifying its role in the architecturefb3d326Document IStreamStack interface and its role in the architecture📊 Changes
9 files changed (+609 additions, -85 deletions)
View changed files
📝
FORMATS.md(+32 -0)📝
src/SharpCompress/Common/IVolume.cs(+52 -0)📝
src/SharpCompress/Common/Volume.cs(+31 -0)➕
src/SharpCompress/IO/FileByteSource.cs(+39 -0)➕
src/SharpCompress/IO/IByteSource.cs(+100 -0)📝
src/SharpCompress/IO/IStreamStack.cs(+64 -0)📝
src/SharpCompress/IO/SharpCompressStream.cs(+49 -0)📝
src/SharpCompress/IO/SourceStream.cs(+178 -85)➕
src/SharpCompress/IO/StreamByteSource.cs(+64 -0)📄 Description
IByteSource: Core interface for byte sourcesFileByteSource: File-based implementationStreamByteSource: Stream-based implementationIVolumewith comprehensive documentationVolumewith documentation explaining the layered architectureSourceStreamwith documentation for split vs volume modesSharpCompressStreamwith documentation explaining its role as a buffering/position-tracking wrapperIStreamStackwith comprehensive documentation explaining its role in enabling stream stackingList<IByteSource>instead of separate file/stream listsIByteSourcedirectlyOriginal prompt
💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.