XZ in SharpCompress #67

Closed
opened 2026-01-29 22:06:05 +00:00 by claunia · 12 comments
Owner

Originally created by @adamhathcock on GitHub (Sep 21, 2015).

Looks like there's a XZ implementation that might be primed to be included:

https://github.com/sambott/XZ.NET/issues/1

Originally created by @adamhathcock on GitHub (Sep 21, 2015). Looks like there's a XZ implementation that might be primed to be included: https://github.com/sambott/XZ.NET/issues/1
claunia added the enhancement label 2026-01-29 22:06:05 +00:00
Author
Owner

@adamhathcock commented on GitHub (Sep 21, 2015):

Don't know if @weltkante is interested

@adamhathcock commented on GitHub (Sep 21, 2015): Don't know if @weltkante is interested
Author
Owner

@weltkante commented on GitHub (Sep 21, 2015):

Might be interesting if we can clarify the quality of the LZMA encoders (or replace them), though I'm probably not going to spend any time on XZ before I have finished lzma/7z and issue #91. So if someone else wants to look into XZ before that, feel free to do so.

@weltkante commented on GitHub (Sep 21, 2015): Might be interesting if we can clarify the quality of the LZMA encoders (or replace them), though I'm probably not going to spend any time on XZ before I have finished lzma/7z and issue #91. So if someone else wants to look into XZ before that, feel free to do so.
Author
Owner

@adamhathcock commented on GitHub (Sep 22, 2015):

Definitely finish updating LZMA encoders. Just thought integrating XZ might be easy after that as when I looked at it last it was very ZIP like as a container format.

@adamhathcock commented on GitHub (Sep 22, 2015): Definitely finish updating LZMA encoders. Just thought integrating XZ might be easy after that as when I looked at it last it was very ZIP like as a container format.
Author
Owner

@claunia commented on GitHub (Sep 5, 2016):

It would be a good idea when it is implemented to make use of the block index XZ files can contain to allow for XZStream to be seekable.

@claunia commented on GitHub (Sep 5, 2016): It would be a good idea when it is implemented to make use of the block index XZ files can contain to allow for XZStream to be seekable.
Author
Owner

@adamhathcock commented on GitHub (Sep 5, 2016):

@claunia sounds good. Any chance of a contribution? :)

@adamhathcock commented on GitHub (Sep 5, 2016): @claunia sounds good. Any chance of a contribution? :)
Author
Owner

@adamhathcock commented on GitHub (May 29, 2017):

Still want this. Need licensing changed though https://github.com/sambott/XZ.NET/issues/3

@adamhathcock commented on GitHub (May 29, 2017): Still want this. Need licensing changed though https://github.com/sambott/XZ.NET/issues/3
Author
Owner

@adamhathcock commented on GitHub (May 30, 2017):

Started a branch here from @sambott 's code: https://github.com/adamhathcock/sharpcompress/pull/247

Going to do read-only as I'm doing LZip writing for LZMA

@adamhathcock commented on GitHub (May 30, 2017): Started a branch here from @sambott 's code: https://github.com/adamhathcock/sharpcompress/pull/247 Going to do read-only as I'm doing LZip writing for LZMA
Author
Owner

@claunia commented on GitHub (Jun 2, 2017):

@adamhathcock you can add .lzma support. It can be done in a few lines:
https://github.com/claunia/osrepodbmgr/blob/eto/osrepodbmgr.Core/Workers/Compression.cs#L218 for writing
https://github.com/claunia/osrepodbmgr/blob/eto/osrepodbmgr.Core/Workers/Compression.cs#L743 for reading

Sorry cannot send you a patch right now :(

@claunia commented on GitHub (Jun 2, 2017): @adamhathcock you can add .lzma support. It can be done in a few lines: https://github.com/claunia/osrepodbmgr/blob/eto/osrepodbmgr.Core/Workers/Compression.cs#L218 for writing https://github.com/claunia/osrepodbmgr/blob/eto/osrepodbmgr.Core/Workers/Compression.cs#L743 for reading Sorry cannot send you a patch right now :(
Author
Owner

@adamhathcock commented on GitHub (Jun 2, 2017):

I'm not sure what you mean. If .lzma has a spec then sure. It looks like it's just a byte stream that's compressed with LZMA which isn't really a format.

@adamhathcock commented on GitHub (Jun 2, 2017): I'm not sure what you mean. If `.lzma` has a spec then sure. It looks like it's just a byte stream that's compressed with LZMA which isn't really a format.
Author
Owner

@claunia commented on GitHub (Jun 3, 2017):

@adamhathcock yes, looks like that, because it's the most simple specification ever done: https://svn.python.org/projects/external/xz-5.0.3/doc/lzma-file-format.txt

the tools to create them were deprecated by xz that can (and don't recommend) create them and extract them.

@claunia commented on GitHub (Jun 3, 2017): @adamhathcock yes, looks like that, because it's the most simple specification ever done: https://svn.python.org/projects/external/xz-5.0.3/doc/lzma-file-format.txt the tools to create them were deprecated by xz that can (and don't recommend) create them and extract them.
Author
Owner

@adamhathcock commented on GitHub (Jun 3, 2017):

I can add a stream to read it. Not sure I want to go further if it's not highly used.

@adamhathcock commented on GitHub (Jun 3, 2017): I can add a stream to read it. Not sure I want to go further if it's not highly used.
Author
Owner

@claunia commented on GitHub (Jun 3, 2017):

It was used quite extensively in Linux from its inception until XZ deprecated it. From 2004 it was the default LZMA compressor for *NIX, til XZ was launched in 2008. LZIP was created to replace .lzma, but I've never seen it used in a single place, while .lzma was used for the Linux kernel source distribution and even the package managers in some Linux distributions before being replaced by XZ altogether.

So, in a nutshell, .lzma is more common than .lzip.

@claunia commented on GitHub (Jun 3, 2017): It was used quite extensively in Linux from its inception until XZ deprecated it. From 2004 it was the default LZMA compressor for *NIX, til XZ was launched in 2008. LZIP was created to replace .lzma, but I've never seen it used in a single place, while .lzma was used for the Linux kernel source distribution and even the package managers in some Linux distributions before being replaced by XZ altogether. So, in a nutshell, .lzma is more common than .lzip.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/sharpcompress#67