Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update README to explain that bsdiff is used without compression #16

Open
andrewhayden opened this issue Mar 5, 2018 · 0 comments
Open
Assignees
Labels
documentation Update required to documentation

Comments

@andrewhayden
Copy link
Contributor

The README talks about the delta descriptor mentioning bsdiff, but omits the important fact that compression is not used in this version of bsdiff. That's really important, and we should update the docs to make this clear for anyone trying to write a compatible patch applier. By default bsdiff uses bzip2 compression, using ANY compression inside the patch itself will yield an incompatible patch.

For completeness, to help this item stand alone in search results: each delta within the patch is deliberately left uncompressed. This is so that an arbitrary compression algorithm can be applied to the entire patch, decoupling the compression technology from the patch generation and patch application technology. This allows file-by-file patch generators/consumers to take advantage of better compression technology as it comes along without any code changes inside the patch generator or patch applier. For example, you can trivially use bzip2, zstd, brotli, zopfli, lzma, etc as alternatives to deflate when storing and/or transmitting the patches to patch consumers.

@andrewhayden andrewhayden self-assigned this Mar 5, 2018
@andrewhayden andrewhayden added the documentation Update required to documentation label Mar 5, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Update required to documentation
Projects
None yet
Development

No branches or pull requests

1 participant