Add support for gzip extra subfields.#604
Conversation
8a491d6 to
f44f643
Compare
|
Hello @ddeschenes-1 Thank you for your PR The build breaks due to not having followed our guidelines here: https://github.com/apache/commons-compress#:~:text=Before%20you%20pushing%20a%20PR%2C%20run%20mvn%20(by%20itself)%2C%20this%20runs%20the%20default%20goal%2C%20which%20contains%20all%20build%20checks. |
|
Thanks for the heads up. I'll retry next week, likely with less friction this time. I did use the java convention formatter built in eclipse. I guess it needs tuning. I expect issues with the missing jira too (or '(doc)' commit comment. I'll arrange what I can. |
|
Hello @ddeschenes-1 As documented, running mvn by itself runs the default goal (as defined in the POM) which includes verify and other goals. If you think our read me file could be better, feel free to create a PR in the commons-build-plugin repository. I'll be happy to review. 😊 |
99bc8a5 to
cc6584c
Compare
cc6584c to
5e9bcc2
Compare
|
Hello @ddeschenes-1 Thank you for your updates. While I merged the PR, I had to strip out code that was untested. If you need the APIs, please create a PR that contains the new APIs with unit tests. I also added missing Javadoc comments. In the future, please make sure you provide Javadoc for all new code. TY! |
GzipParameters.setExtra(HeaderExtraField) #604
|
Definitely need the extra apis for a caller to read the extra! |
|
Sure, see my previous comment 😀 |
… to 1.28.0 (#1470) Bumps [org.apache.commons:commons-compress](https://github.com/apache/commons-compress) from 1.27.1 to 1.28.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/apache/commons-compress/blob/master/RELEASE-NOTES.txt">org.apache.commons:commons-compress's changelog</a>.</em></p> <blockquote> <h2>Apache Commons Compress 1.28.0 Release Notes</h2> <p>The Apache Commons Compress team is pleased to announce the release of Apache Commons Compress 1.28.0.</p> <p>Apache Commons Compress defines an API for working with compression and archive formats. These include bzip2, gzip, pack200, LZMA, XZ, Snappy, traditional Unix Compress, DEFLATE, DEFLATE64, LZ4, Brotli, Zstandard and ar, cpio, jar, tar, zip, dump, 7z, arj.</p> <p>This is a feature and maintenance release. Java 8 or later is required.</p> <h2>Changes in this version</h2> <p>Changes in this version include the following.</p> <h2>New Features</h2> <ul> <li> <pre><code> Add GzipParameters.getModificationInstant(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipParameters.setModificationInstant(Instant). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipParameters.OS, setOS(OS), getOS(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipParameters.toString(). Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-638: Add GzipParameters.setFileNameCharset(Charset) and getFileNameCharset() to override the default ISO-8859-1 Charset <a href="https://redirect.github.com/apache/commons-compress/issues/602">#602</a>. Thanks to vincexjl, Gary Gregory, Piotr P. Karwasz.</li> <li> <pre><code> Add support for gzip extra subfields, see GzipParameters.setExtra(HeaderExtraField) [#604](apache/commons-compress#604). Thanks to ddeschenes-1, Gary Gregory. </code></pre> </li> <li> <pre><code> Add CompressFilterOutputStream and refactor to use. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add ZipFile.stream(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> GzipCompressorInputStream reads the modification time (MTIME) and stores its value incorrectly multiplied by 1,000. Thanks to Danny Deschenes, Gary Gregory. </code></pre> </li> <li> <pre><code> GzipCompressorInputStream writes the modification time (MTIME) the value incorrectly divided by 1,000. Thanks to Danny Deschenes, Gary Gregory. </code></pre> </li> <li> <pre><code> Add optional FHCRC to GZIP header [#627](apache/commons-compress#627). Thanks to Danny Deschenes, Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipCompressorInputStream.Builder allowing to customize the file name and comment Charsets. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipCompressorInputStream.Builder.setOnMemberStart(IOConsumer) to monitor member parsing. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipCompressorInputStream.Builder.setOnMemberEnd(IOConsumer) to monitor member parsing. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add PMD check to default Maven goal. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add SevenZFile.Builder.setMaxMemoryLimitKiB(int). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add MemoryLimitException.MemoryLimitException(long, int, Throwable) and deprecate MemoryLimitException.MemoryLimitException(long, int, Exception). Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-692: Add support for zstd compression in zip archives. Thanks to Mehmet Karaman, Andrey Loskutov, Gary Gregory.</li> <li> <pre><code> Add support for XZ compression in ZIP archives. Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-695: Add ZipArchiveInputStream.createZstdInputStream(InputStream) to provide a different InputStream implementation for Zstandard (Zstd) <a href="https://redirect.github.com/apache/commons-compress/issues/649">#649</a>. Thanks to Gary Gregory.</li> <li> <pre><code> Add org.apache.commons.compress.harmony.pack200.Pack200Exception.Pack200Exception(String, Throwable). Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-697: Move BitStream.nextBit() method to BitInputStream <a href="https://redirect.github.com/apache/commons-compress/issues/663">#663</a>. Thanks to Fredrik Kjellberg, Gary Gregory.</li> <li> <pre><code> Add org.apache.commons.compress.compressors.lzma.LZMACompressorInputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.lzma.LZMACompressorOutputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.XZCompressorInputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.XZCompressorOutputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.ZstdCompressorOutputStream.builder/Builder() [#666](apache/commons-compress#666). Thanks to Gary Gregory, David Walluck, Piotr P. Karwasz. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.ZstdConstants [#666](apache/commons-compress#666). Thanks to Gary Gregory, David Walluck, Piotr P. Karwasz. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.archivers.ArchiveException.requireNonNull(T, Supplier<String>). Thanks to Gary Gregory, Zaki. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.CompressorException as the root for all custom exceptions ArchiveException and CompressorException. Thanks to Gary Gregory. </code></pre> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/apache/commons-compress/commit/852d9c23b94127feafc1649d9c7f13d4df338845"><code>852d9c2</code></a> Prepare for the release candidate 1.28.0 RC1</li> <li><a href="https://github.com/apache/commons-compress/commit/f5eb9e28edf8a661ac5efc43b7853ee49bb73b3a"><code>f5eb9e2</code></a> Prepare for the next release candidate</li> <li><a href="https://github.com/apache/commons-compress/commit/36f204caa6f7bb2c92a9ad04ba246ad47a2465d2"><code>36f204c</code></a> Camel case parameter name</li> <li><a href="https://github.com/apache/commons-compress/commit/4c04e4a803831c00663a6dafd0f0837fba60633b"><code>4c04e4a</code></a> Use final</li> <li><a href="https://github.com/apache/commons-compress/commit/6cb7da194a9369edfbd65629576203b8af61ba44"><code>6cb7da1</code></a> Javadoc</li> <li><a href="https://github.com/apache/commons-compress/commit/563c9d2fa4d2340902284fc044a7398fc15da5fb"><code>563c9d2</code></a> Javadoc</li> <li><a href="https://github.com/apache/commons-compress/commit/ce73bd890e50fcb88d362fc8298f31fa90d802aa"><code>ce73bd8</code></a> Javadoc</li> <li><a href="https://github.com/apache/commons-compress/commit/a464ae94e0f9c59e9bc30be6086d876f9907d0a4"><code>a464ae9</code></a> Better parameter names</li> <li><a href="https://github.com/apache/commons-compress/commit/c0b2b84144d923a2bf7caada35e1d9bb5d562e78"><code>c0b2b84</code></a> Add TODO for next major version</li> <li><a href="https://github.com/apache/commons-compress/commit/c76bc976703dc0cebfb6d4653061b8ac3524421d"><code>c76bc97</code></a> Use OpenVEX to document that we are not affected by CVE-2025-48924 in</li> <li>Additional commits viewable in <a href="https://github.com/apache/commons-compress/compare/rel/commons-compress-1.27.1...rel/commons-compress-1.28.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details>
…1.28.0 in /backend in the minor group (#4787) Bumps the minor group in /backend with 1 update: [org.apache.commons:commons-compress](https://github.com/apache/commons-compress). Updates `org.apache.commons:commons-compress` from 1.27.1 to 1.28.0 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/apache/commons-compress/blob/master/RELEASE-NOTES.txt">org.apache.commons:commons-compress's changelog</a>.</em></p> <blockquote> <h2>Apache Commons Compress 1.28.0 Release Notes</h2> <p>The Apache Commons Compress team is pleased to announce the release of Apache Commons Compress 1.28.0.</p> <p>Apache Commons Compress defines an API for working with compression and archive formats. These include bzip2, gzip, pack200, LZMA, XZ, Snappy, traditional Unix Compress, DEFLATE, DEFLATE64, LZ4, Brotli, Zstandard and ar, cpio, jar, tar, zip, dump, 7z, arj.</p> <p>This is a feature and maintenance release. Java 8 or later is required.</p> <h2>Changes in this version</h2> <p>Changes in this version include the following.</p> <h2>New Features</h2> <ul> <li> <pre><code> Add GzipParameters.getModificationInstant(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipParameters.setModificationInstant(Instant). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipParameters.OS, setOS(OS), getOS(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipParameters.toString(). Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-638: Add GzipParameters.setFileNameCharset(Charset) and getFileNameCharset() to override the default ISO-8859-1 Charset <a href="https://redirect.github.com/apache/commons-compress/issues/602">#602</a>. Thanks to vincexjl, Gary Gregory, Piotr P. Karwasz.</li> <li> <pre><code> Add support for gzip extra subfields, see GzipParameters.setExtra(HeaderExtraField) [#604](apache/commons-compress#604). Thanks to ddeschenes-1, Gary Gregory. </code></pre> </li> <li> <pre><code> Add CompressFilterOutputStream and refactor to use. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add ZipFile.stream(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> GzipCompressorInputStream reads the modification time (MTIME) and stores its value incorrectly multiplied by 1,000. Thanks to Danny Deschenes, Gary Gregory. </code></pre> </li> <li> <pre><code> GzipCompressorInputStream writes the modification time (MTIME) the value incorrectly divided by 1,000. Thanks to Danny Deschenes, Gary Gregory. </code></pre> </li> <li> <pre><code> Add optional FHCRC to GZIP header [#627](apache/commons-compress#627). Thanks to Danny Deschenes, Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipCompressorInputStream.Builder allowing to customize the file name and comment Charsets. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipCompressorInputStream.Builder.setOnMemberStart(IOConsumer) to monitor member parsing. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipCompressorInputStream.Builder.setOnMemberEnd(IOConsumer) to monitor member parsing. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add PMD check to default Maven goal. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add SevenZFile.Builder.setMaxMemoryLimitKiB(int). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add MemoryLimitException.MemoryLimitException(long, int, Throwable) and deprecate MemoryLimitException.MemoryLimitException(long, int, Exception). Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-692: Add support for zstd compression in zip archives. Thanks to Mehmet Karaman, Andrey Loskutov, Gary Gregory.</li> <li> <pre><code> Add support for XZ compression in ZIP archives. Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-695: Add ZipArchiveInputStream.createZstdInputStream(InputStream) to provide a different InputStream implementation for Zstandard (Zstd) <a href="https://redirect.github.com/apache/commons-compress/issues/649">#649</a>. Thanks to Gary Gregory.</li> <li> <pre><code> Add org.apache.commons.compress.harmony.pack200.Pack200Exception.Pack200Exception(String, Throwable). Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-697: Move BitStream.nextBit() method to BitInputStream <a href="https://redirect.github.com/apache/commons-compress/issues/663">#663</a>. Thanks to Fredrik Kjellberg, Gary Gregory.</li> <li> <pre><code> Add org.apache.commons.compress.compressors.lzma.LZMACompressorInputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.lzma.LZMACompressorOutputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.XZCompressorInputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.XZCompressorOutputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.ZstdCompressorOutputStream.builder/Builder() [#666](apache/commons-compress#666). Thanks to Gary Gregory, David Walluck, Piotr P. Karwasz. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.ZstdConstants [#666](apache/commons-compress#666). Thanks to Gary Gregory, David Walluck, Piotr P. Karwasz. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.archivers.ArchiveException.requireNonNull(T, Supplier<String>). Thanks to Gary Gregory, Zaki. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.CompressorException as the root for all custom exceptions ArchiveException and CompressorException. Thanks to Gary Gregory. </code></pre> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/apache/commons-compress/commit/852d9c23b94127feafc1649d9c7f13d4df338845"><code>852d9c2</code></a> Prepare for the release candidate 1.28.0 RC1</li> <li><a href="https://github.com/apache/commons-compress/commit/f5eb9e28edf8a661ac5efc43b7853ee49bb73b3a"><code>f5eb9e2</code></a> Prepare for the next release candidate</li> <li><a href="https://github.com/apache/commons-compress/commit/36f204caa6f7bb2c92a9ad04ba246ad47a2465d2"><code>36f204c</code></a> Camel case parameter name</li> <li><a href="https://github.com/apache/commons-compress/commit/4c04e4a803831c00663a6dafd0f0837fba60633b"><code>4c04e4a</code></a> Use final</li> <li><a href="https://github.com/apache/commons-compress/commit/6cb7da194a9369edfbd65629576203b8af61ba44"><code>6cb7da1</code></a> Javadoc</li> <li><a href="https://github.com/apache/commons-compress/commit/563c9d2fa4d2340902284fc044a7398fc15da5fb"><code>563c9d2</code></a> Javadoc</li> <li><a href="https://github.com/apache/commons-compress/commit/ce73bd890e50fcb88d362fc8298f31fa90d802aa"><code>ce73bd8</code></a> Javadoc</li> <li><a href="https://github.com/apache/commons-compress/commit/a464ae94e0f9c59e9bc30be6086d876f9907d0a4"><code>a464ae9</code></a> Better parameter names</li> <li><a href="https://github.com/apache/commons-compress/commit/c0b2b84144d923a2bf7caada35e1d9bb5d562e78"><code>c0b2b84</code></a> Add TODO for next major version</li> <li><a href="https://github.com/apache/commons-compress/commit/c76bc976703dc0cebfb6d4653061b8ac3524421d"><code>c76bc97</code></a> Use OpenVEX to document that we are not affected by CVE-2025-48924 in</li> <li>Additional commits viewable in <a href="https://github.com/apache/commons-compress/compare/rel/commons-compress-1.27.1...rel/commons-compress-1.28.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> 🚀 Preview: Add `preview` label to enable Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [org.apache.commons:commons-compress](https://github.com/apache/commons-compress) from 1.27.1 to 1.28.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/apache/commons-compress/blob/master/RELEASE-NOTES.txt">org.apache.commons:commons-compress's changelog</a>.</em></p> <blockquote> <h2>Apache Commons Compress 1.28.0 Release Notes</h2> <p>The Apache Commons Compress team is pleased to announce the release of Apache Commons Compress 1.28.0.</p> <p>Apache Commons Compress defines an API for working with compression and archive formats. These include bzip2, gzip, pack200, LZMA, XZ, Snappy, traditional Unix Compress, DEFLATE, DEFLATE64, LZ4, Brotli, Zstandard and ar, cpio, jar, tar, zip, dump, 7z, arj.</p> <p>This is a feature and maintenance release. Java 8 or later is required.</p> <p>This release updates Apache Commons Lang to 3.18.0 to pick up the fix for CVE-2025-48924 (<a href="https://nvd.nist.gov/vuln/detail/CVE-2025-48924">https://nvd.nist.gov/vuln/detail/CVE-2025-48924</a>), but is not affected by it.</p> <h2>Changes in this version</h2> <p>Changes in this version include the following.</p> <h2>New Features</h2> <ul> <li> <pre><code> Add GzipParameters.getModificationInstant(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipParameters.setModificationInstant(Instant). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipParameters.OS, setOS(OS), getOS(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipParameters.toString(). Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-638: Add GzipParameters.setFileNameCharset(Charset) and getFileNameCharset() to override the default ISO-8859-1 Charset <a href="https://redirect.github.com/apache/commons-compress/issues/602">#602</a>. Thanks to vincexjl, Gary Gregory, Piotr P. Karwasz.</li> <li> <pre><code> Add support for gzip extra subfields, see GzipParameters.setExtra(HeaderExtraField) [#604](apache/commons-compress#604). Thanks to ddeschenes-1, Gary Gregory. </code></pre> </li> <li> <pre><code> Add CompressFilterOutputStream and refactor to use. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add ZipFile.stream(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> GzipCompressorInputStream reads the modification time (MTIME) and stores its value incorrectly multiplied by 1,000. Thanks to Danny Deschenes, Gary Gregory. </code></pre> </li> <li> <pre><code> GzipCompressorInputStream writes the modification time (MTIME) the value incorrectly divided by 1,000. Thanks to Danny Deschenes, Gary Gregory. </code></pre> </li> <li> <pre><code> Add optional FHCRC to GZIP header [#627](apache/commons-compress#627). Thanks to Danny Deschenes, Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipCompressorInputStream.Builder allowing to customize the file name and comment Charsets. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipCompressorInputStream.Builder.setOnMemberStart(IOConsumer) to monitor member parsing. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipCompressorInputStream.Builder.setOnMemberEnd(IOConsumer) to monitor member parsing. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add PMD check to default Maven goal. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add SevenZFile.Builder.setMaxMemoryLimitKiB(int). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add MemoryLimitException.MemoryLimitException(long, int, Throwable) and deprecate MemoryLimitException.MemoryLimitException(long, int, Exception). Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-692: Add support for zstd compression in zip archives. Thanks to Mehmet Karaman, Andrey Loskutov, Gary Gregory.</li> <li> <pre><code> Add support for XZ compression in ZIP archives. Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-695: Add ZipArchiveInputStream.createZstdInputStream(InputStream) to provide a different InputStream implementation for Zstandard (Zstd) <a href="https://redirect.github.com/apache/commons-compress/issues/649">#649</a>. Thanks to Gary Gregory.</li> <li> <pre><code> Add org.apache.commons.compress.harmony.pack200.Pack200Exception.Pack200Exception(String, Throwable). Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-697: Move BitStream.nextBit() method to BitInputStream <a href="https://redirect.github.com/apache/commons-compress/issues/663">#663</a>. Thanks to Fredrik Kjellberg, Gary Gregory.</li> <li> <pre><code> Add org.apache.commons.compress.compressors.lzma.LZMACompressorInputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.lzma.LZMACompressorOutputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.XZCompressorInputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.XZCompressorOutputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.ZstdCompressorOutputStream.builder/Builder() [#666](apache/commons-compress#666). Thanks to Gary Gregory, David Walluck, Piotr P. Karwasz. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.ZstdConstants [#666](apache/commons-compress#666). Thanks to Gary Gregory, David Walluck, Piotr P. Karwasz. </code></pre> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/apache/commons-compress/commit/852d9c23b94127feafc1649d9c7f13d4df338845"><code>852d9c2</code></a> Prepare for the release candidate 1.28.0 RC1</li> <li><a href="https://github.com/apache/commons-compress/commit/f5eb9e28edf8a661ac5efc43b7853ee49bb73b3a"><code>f5eb9e2</code></a> Prepare for the next release candidate</li> <li><a href="https://github.com/apache/commons-compress/commit/36f204caa6f7bb2c92a9ad04ba246ad47a2465d2"><code>36f204c</code></a> Camel case parameter name</li> <li><a href="https://github.com/apache/commons-compress/commit/4c04e4a803831c00663a6dafd0f0837fba60633b"><code>4c04e4a</code></a> Use final</li> <li><a href="https://github.com/apache/commons-compress/commit/6cb7da194a9369edfbd65629576203b8af61ba44"><code>6cb7da1</code></a> Javadoc</li> <li><a href="https://github.com/apache/commons-compress/commit/563c9d2fa4d2340902284fc044a7398fc15da5fb"><code>563c9d2</code></a> Javadoc</li> <li><a href="https://github.com/apache/commons-compress/commit/ce73bd890e50fcb88d362fc8298f31fa90d802aa"><code>ce73bd8</code></a> Javadoc</li> <li><a href="https://github.com/apache/commons-compress/commit/a464ae94e0f9c59e9bc30be6086d876f9907d0a4"><code>a464ae9</code></a> Better parameter names</li> <li><a href="https://github.com/apache/commons-compress/commit/c0b2b84144d923a2bf7caada35e1d9bb5d562e78"><code>c0b2b84</code></a> Add TODO for next major version</li> <li><a href="https://github.com/apache/commons-compress/commit/c76bc976703dc0cebfb6d4653061b8ac3524421d"><code>c76bc97</code></a> Use OpenVEX to document that we are not affected by CVE-2025-48924 in</li> <li>Additional commits viewable in <a href="https://github.com/apache/commons-compress/compare/rel/commons-compress-1.27.1...rel/commons-compress-1.28.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…1.27.1 to 1.28.0 (#97) Bumps [org.apache.commons:commons-compress](https://github.com/apache/commons-compress) from 1.27.1 to 1.28.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/apache/commons-compress/blob/master/RELEASE-NOTES.txt">org.apache.commons:commons-compress's changelog</a>.</em></p> <blockquote> <h2>Apache Commons Compress 1.28.0 Release Notes</h2> <p>The Apache Commons Compress team is pleased to announce the release of Apache Commons Compress 1.28.0.</p> <p>Apache Commons Compress defines an API for working with compression and archive formats. These include bzip2, gzip, pack200, LZMA, XZ, Snappy, traditional Unix Compress, DEFLATE, DEFLATE64, LZ4, Brotli, Zstandard and ar, cpio, jar, tar, zip, dump, 7z, arj.</p> <p>This is a feature and maintenance release. Java 8 or later is required.</p> <p>This release updates Apache Commons Lang to 3.18.0 to pick up the fix for CVE-2025-48924 (<a href="https://nvd.nist.gov/vuln/detail/CVE-2025-48924">https://nvd.nist.gov/vuln/detail/CVE-2025-48924</a>), but is not affected by it.</p> <h2>Changes in this version</h2> <p>Changes in this version include the following.</p> <h2>New Features</h2> <ul> <li> <pre><code> Add GzipParameters.getModificationInstant(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipParameters.setModificationInstant(Instant). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipParameters.OS, setOS(OS), getOS(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipParameters.toString(). Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-638: Add GzipParameters.setFileNameCharset(Charset) and getFileNameCharset() to override the default ISO-8859-1 Charset <a href="https://redirect.github.com/apache/commons-compress/issues/602">#602</a>. Thanks to vincexjl, Gary Gregory, Piotr P. Karwasz.</li> <li> <pre><code> Add support for gzip extra subfields, see GzipParameters.setExtra(HeaderExtraField) [#604](apache/commons-compress#604). Thanks to ddeschenes-1, Gary Gregory. </code></pre> </li> <li> <pre><code> Add CompressFilterOutputStream and refactor to use. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add ZipFile.stream(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> GzipCompressorInputStream reads the modification time (MTIME) and stores its value incorrectly multiplied by 1,000. Thanks to Danny Deschenes, Gary Gregory. </code></pre> </li> <li> <pre><code> GzipCompressorInputStream writes the modification time (MTIME) the value incorrectly divided by 1,000. Thanks to Danny Deschenes, Gary Gregory. </code></pre> </li> <li> <pre><code> Add optional FHCRC to GZIP header [#627](apache/commons-compress#627). Thanks to Danny Deschenes, Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipCompressorInputStream.Builder allowing to customize the file name and comment Charsets. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipCompressorInputStream.Builder.setOnMemberStart(IOConsumer) to monitor member parsing. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipCompressorInputStream.Builder.setOnMemberEnd(IOConsumer) to monitor member parsing. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add PMD check to default Maven goal. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add SevenZFile.Builder.setMaxMemoryLimitKiB(int). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add MemoryLimitException.MemoryLimitException(long, int, Throwable) and deprecate MemoryLimitException.MemoryLimitException(long, int, Exception). Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-692: Add support for zstd compression in zip archives. Thanks to Mehmet Karaman, Andrey Loskutov, Gary Gregory.</li> <li> <pre><code> Add support for XZ compression in ZIP archives. Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-695: Add ZipArchiveInputStream.createZstdInputStream(InputStream) to provide a different InputStream implementation for Zstandard (Zstd) <a href="https://redirect.github.com/apache/commons-compress/issues/649">#649</a>. Thanks to Gary Gregory.</li> <li> <pre><code> Add org.apache.commons.compress.harmony.pack200.Pack200Exception.Pack200Exception(String, Throwable). Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-697: Move BitStream.nextBit() method to BitInputStream <a href="https://redirect.github.com/apache/commons-compress/issues/663">#663</a>. Thanks to Fredrik Kjellberg, Gary Gregory.</li> <li> <pre><code> Add org.apache.commons.compress.compressors.lzma.LZMACompressorInputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.lzma.LZMACompressorOutputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.XZCompressorInputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.XZCompressorOutputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.ZstdCompressorOutputStream.builder/Builder() [#666](apache/commons-compress#666). Thanks to Gary Gregory, David Walluck, Piotr P. Karwasz. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.ZstdConstants [#666](apache/commons-compress#666). Thanks to Gary Gregory, David Walluck, Piotr P. Karwasz. </code></pre> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/apache/commons-compress/commit/852d9c23b94127feafc1649d9c7f13d4df338845"><code>852d9c2</code></a> Prepare for the release candidate 1.28.0 RC1</li> <li><a href="https://github.com/apache/commons-compress/commit/f5eb9e28edf8a661ac5efc43b7853ee49bb73b3a"><code>f5eb9e2</code></a> Prepare for the next release candidate</li> <li><a href="https://github.com/apache/commons-compress/commit/36f204caa6f7bb2c92a9ad04ba246ad47a2465d2"><code>36f204c</code></a> Camel case parameter name</li> <li><a href="https://github.com/apache/commons-compress/commit/4c04e4a803831c00663a6dafd0f0837fba60633b"><code>4c04e4a</code></a> Use final</li> <li><a href="https://github.com/apache/commons-compress/commit/6cb7da194a9369edfbd65629576203b8af61ba44"><code>6cb7da1</code></a> Javadoc</li> <li><a href="https://github.com/apache/commons-compress/commit/563c9d2fa4d2340902284fc044a7398fc15da5fb"><code>563c9d2</code></a> Javadoc</li> <li><a href="https://github.com/apache/commons-compress/commit/ce73bd890e50fcb88d362fc8298f31fa90d802aa"><code>ce73bd8</code></a> Javadoc</li> <li><a href="https://github.com/apache/commons-compress/commit/a464ae94e0f9c59e9bc30be6086d876f9907d0a4"><code>a464ae9</code></a> Better parameter names</li> <li><a href="https://github.com/apache/commons-compress/commit/c0b2b84144d923a2bf7caada35e1d9bb5d562e78"><code>c0b2b84</code></a> Add TODO for next major version</li> <li><a href="https://github.com/apache/commons-compress/commit/c76bc976703dc0cebfb6d4653061b8ac3524421d"><code>c76bc97</code></a> Use OpenVEX to document that we are not affected by CVE-2025-48924 in</li> <li>Additional commits viewable in <a href="https://github.com/apache/commons-compress/compare/rel/commons-compress-1.27.1...rel/commons-compress-1.28.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [org.apache.commons:commons-compress](https://github.com/apache/commons-compress) from 1.27.1 to 1.28.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/apache/commons-compress/blob/master/RELEASE-NOTES.txt">org.apache.commons:commons-compress's changelog</a>.</em></p> <blockquote> <h2>Apache Commons Compress 1.28.0 Release Notes</h2> <p>The Apache Commons Compress team is pleased to announce the release of Apache Commons Compress 1.28.0.</p> <p>Apache Commons Compress defines an API for working with compression and archive formats. These include bzip2, gzip, pack200, LZMA, XZ, Snappy, traditional Unix Compress, DEFLATE, DEFLATE64, LZ4, Brotli, Zstandard and ar, cpio, jar, tar, zip, dump, 7z, arj.</p> <p>This is a feature and maintenance release. Java 8 or later is required.</p> <p>This release updates Apache Commons Lang to 3.18.0 to pick up the fix for CVE-2025-48924 (<a href="https://nvd.nist.gov/vuln/detail/CVE-2025-48924">https://nvd.nist.gov/vuln/detail/CVE-2025-48924</a>), but is not affected by it.</p> <h2>Changes in this version</h2> <p>Changes in this version include the following.</p> <h2>New Features</h2> <ul> <li> <pre><code> Add GzipParameters.getModificationInstant(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipParameters.setModificationInstant(Instant). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipParameters.OS, setOS(OS), getOS(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipParameters.toString(). Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-638: Add GzipParameters.setFileNameCharset(Charset) and getFileNameCharset() to override the default ISO-8859-1 Charset <a href="https://redirect.github.com/apache/commons-compress/issues/602">#602</a>. Thanks to vincexjl, Gary Gregory, Piotr P. Karwasz.</li> <li> <pre><code> Add support for gzip extra subfields, see GzipParameters.setExtra(HeaderExtraField) [#604](apache/commons-compress#604). Thanks to ddeschenes-1, Gary Gregory. </code></pre> </li> <li> <pre><code> Add CompressFilterOutputStream and refactor to use. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add ZipFile.stream(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> GzipCompressorInputStream reads the modification time (MTIME) and stores its value incorrectly multiplied by 1,000. Thanks to Danny Deschenes, Gary Gregory. </code></pre> </li> <li> <pre><code> GzipCompressorInputStream writes the modification time (MTIME) the value incorrectly divided by 1,000. Thanks to Danny Deschenes, Gary Gregory. </code></pre> </li> <li> <pre><code> Add optional FHCRC to GZIP header [#627](apache/commons-compress#627). Thanks to Danny Deschenes, Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipCompressorInputStream.Builder allowing to customize the file name and comment Charsets. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipCompressorInputStream.Builder.setOnMemberStart(IOConsumer) to monitor member parsing. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipCompressorInputStream.Builder.setOnMemberEnd(IOConsumer) to monitor member parsing. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add PMD check to default Maven goal. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add SevenZFile.Builder.setMaxMemoryLimitKiB(int). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add MemoryLimitException.MemoryLimitException(long, int, Throwable) and deprecate MemoryLimitException.MemoryLimitException(long, int, Exception). Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-692: Add support for zstd compression in zip archives. Thanks to Mehmet Karaman, Andrey Loskutov, Gary Gregory.</li> <li> <pre><code> Add support for XZ compression in ZIP archives. Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-695: Add ZipArchiveInputStream.createZstdInputStream(InputStream) to provide a different InputStream implementation for Zstandard (Zstd) <a href="https://redirect.github.com/apache/commons-compress/issues/649">#649</a>. Thanks to Gary Gregory.</li> <li> <pre><code> Add org.apache.commons.compress.harmony.pack200.Pack200Exception.Pack200Exception(String, Throwable). Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-697: Move BitStream.nextBit() method to BitInputStream <a href="https://redirect.github.com/apache/commons-compress/issues/663">#663</a>. Thanks to Fredrik Kjellberg, Gary Gregory.</li> <li> <pre><code> Add org.apache.commons.compress.compressors.lzma.LZMACompressorInputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.lzma.LZMACompressorOutputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.XZCompressorInputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.XZCompressorOutputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.ZstdCompressorOutputStream.builder/Builder() [#666](apache/commons-compress#666). Thanks to Gary Gregory, David Walluck, Piotr P. Karwasz. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.ZstdConstants [#666](apache/commons-compress#666). Thanks to Gary Gregory, David Walluck, Piotr P. Karwasz. </code></pre> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/apache/commons-compress/commit/852d9c23b94127feafc1649d9c7f13d4df338845"><code>852d9c2</code></a> Prepare for the release candidate 1.28.0 RC1</li> <li><a href="https://github.com/apache/commons-compress/commit/f5eb9e28edf8a661ac5efc43b7853ee49bb73b3a"><code>f5eb9e2</code></a> Prepare for the next release candidate</li> <li><a href="https://github.com/apache/commons-compress/commit/36f204caa6f7bb2c92a9ad04ba246ad47a2465d2"><code>36f204c</code></a> Camel case parameter name</li> <li><a href="https://github.com/apache/commons-compress/commit/4c04e4a803831c00663a6dafd0f0837fba60633b"><code>4c04e4a</code></a> Use final</li> <li><a href="https://github.com/apache/commons-compress/commit/6cb7da194a9369edfbd65629576203b8af61ba44"><code>6cb7da1</code></a> Javadoc</li> <li><a href="https://github.com/apache/commons-compress/commit/563c9d2fa4d2340902284fc044a7398fc15da5fb"><code>563c9d2</code></a> Javadoc</li> <li><a href="https://github.com/apache/commons-compress/commit/ce73bd890e50fcb88d362fc8298f31fa90d802aa"><code>ce73bd8</code></a> Javadoc</li> <li><a href="https://github.com/apache/commons-compress/commit/a464ae94e0f9c59e9bc30be6086d876f9907d0a4"><code>a464ae9</code></a> Better parameter names</li> <li><a href="https://github.com/apache/commons-compress/commit/c0b2b84144d923a2bf7caada35e1d9bb5d562e78"><code>c0b2b84</code></a> Add TODO for next major version</li> <li><a href="https://github.com/apache/commons-compress/commit/c76bc976703dc0cebfb6d4653061b8ac3524421d"><code>c76bc97</code></a> Use OpenVEX to document that we are not affected by CVE-2025-48924 in</li> <li>Additional commits viewable in <a href="https://github.com/apache/commons-compress/compare/rel/commons-compress-1.27.1...rel/commons-compress-1.28.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…1.28.0 (#476) Bumps [org.apache.commons:commons-compress](https://github.com/apache/commons-compress) from 1.27.1 to 1.28.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/apache/commons-compress/blob/master/RELEASE-NOTES.txt">org.apache.commons:commons-compress's changelog</a>.</em></p> <blockquote> <h2>Apache Commons Compress 1.28.0 Release Notes</h2> <p>The Apache Commons Compress team is pleased to announce the release of Apache Commons Compress 1.28.0.</p> <p>Apache Commons Compress defines an API for working with compression and archive formats. These include bzip2, gzip, pack200, LZMA, XZ, Snappy, traditional Unix Compress, DEFLATE, DEFLATE64, LZ4, Brotli, Zstandard and ar, cpio, jar, tar, zip, dump, 7z, arj.</p> <p>This is a feature and maintenance release. Java 8 or later is required.</p> <p>This release updates Apache Commons Lang to 3.18.0 to pick up the fix for CVE-2025-48924 (<a href="https://nvd.nist.gov/vuln/detail/CVE-2025-48924">https://nvd.nist.gov/vuln/detail/CVE-2025-48924</a>), but is not affected by it.</p> <h2>Changes in this version</h2> <p>Changes in this version include the following.</p> <h2>New Features</h2> <ul> <li> <pre><code> Add GzipParameters.getModificationInstant(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipParameters.setModificationInstant(Instant). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipParameters.OS, setOS(OS), getOS(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipParameters.toString(). Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-638: Add GzipParameters.setFileNameCharset(Charset) and getFileNameCharset() to override the default ISO-8859-1 Charset <a href="https://redirect.github.com/apache/commons-compress/issues/602">#602</a>. Thanks to vincexjl, Gary Gregory, Piotr P. Karwasz.</li> <li> <pre><code> Add support for gzip extra subfields, see GzipParameters.setExtra(HeaderExtraField) [#604](apache/commons-compress#604). Thanks to ddeschenes-1, Gary Gregory. </code></pre> </li> <li> <pre><code> Add CompressFilterOutputStream and refactor to use. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add ZipFile.stream(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> GzipCompressorInputStream reads the modification time (MTIME) and stores its value incorrectly multiplied by 1,000. Thanks to Danny Deschenes, Gary Gregory. </code></pre> </li> <li> <pre><code> GzipCompressorInputStream writes the modification time (MTIME) the value incorrectly divided by 1,000. Thanks to Danny Deschenes, Gary Gregory. </code></pre> </li> <li> <pre><code> Add optional FHCRC to GZIP header [#627](apache/commons-compress#627). Thanks to Danny Deschenes, Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipCompressorInputStream.Builder allowing to customize the file name and comment Charsets. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipCompressorInputStream.Builder.setOnMemberStart(IOConsumer) to monitor member parsing. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipCompressorInputStream.Builder.setOnMemberEnd(IOConsumer) to monitor member parsing. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add PMD check to default Maven goal. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add SevenZFile.Builder.setMaxMemoryLimitKiB(int). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add MemoryLimitException.MemoryLimitException(long, int, Throwable) and deprecate MemoryLimitException.MemoryLimitException(long, int, Exception). Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-692: Add support for zstd compression in zip archives. Thanks to Mehmet Karaman, Andrey Loskutov, Gary Gregory.</li> <li> <pre><code> Add support for XZ compression in ZIP archives. Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-695: Add ZipArchiveInputStream.createZstdInputStream(InputStream) to provide a different InputStream implementation for Zstandard (Zstd) <a href="https://redirect.github.com/apache/commons-compress/issues/649">#649</a>. Thanks to Gary Gregory.</li> <li> <pre><code> Add org.apache.commons.compress.harmony.pack200.Pack200Exception.Pack200Exception(String, Throwable). Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-697: Move BitStream.nextBit() method to BitInputStream <a href="https://redirect.github.com/apache/commons-compress/issues/663">#663</a>. Thanks to Fredrik Kjellberg, Gary Gregory.</li> <li> <pre><code> Add org.apache.commons.compress.compressors.lzma.LZMACompressorInputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.lzma.LZMACompressorOutputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.XZCompressorInputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.XZCompressorOutputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.ZstdCompressorOutputStream.builder/Builder() [#666](apache/commons-compress#666). Thanks to Gary Gregory, David Walluck, Piotr P. Karwasz. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.ZstdConstants [#666](apache/commons-compress#666). Thanks to Gary Gregory, David Walluck, Piotr P. Karwasz. </code></pre> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/apache/commons-compress/commit/852d9c23b94127feafc1649d9c7f13d4df338845"><code>852d9c2</code></a> Prepare for the release candidate 1.28.0 RC1</li> <li><a href="https://github.com/apache/commons-compress/commit/f5eb9e28edf8a661ac5efc43b7853ee49bb73b3a"><code>f5eb9e2</code></a> Prepare for the next release candidate</li> <li><a href="https://github.com/apache/commons-compress/commit/36f204caa6f7bb2c92a9ad04ba246ad47a2465d2"><code>36f204c</code></a> Camel case parameter name</li> <li><a href="https://github.com/apache/commons-compress/commit/4c04e4a803831c00663a6dafd0f0837fba60633b"><code>4c04e4a</code></a> Use final</li> <li><a href="https://github.com/apache/commons-compress/commit/6cb7da194a9369edfbd65629576203b8af61ba44"><code>6cb7da1</code></a> Javadoc</li> <li><a href="https://github.com/apache/commons-compress/commit/563c9d2fa4d2340902284fc044a7398fc15da5fb"><code>563c9d2</code></a> Javadoc</li> <li><a href="https://github.com/apache/commons-compress/commit/ce73bd890e50fcb88d362fc8298f31fa90d802aa"><code>ce73bd8</code></a> Javadoc</li> <li><a href="https://github.com/apache/commons-compress/commit/a464ae94e0f9c59e9bc30be6086d876f9907d0a4"><code>a464ae9</code></a> Better parameter names</li> <li><a href="https://github.com/apache/commons-compress/commit/c0b2b84144d923a2bf7caada35e1d9bb5d562e78"><code>c0b2b84</code></a> Add TODO for next major version</li> <li><a href="https://github.com/apache/commons-compress/commit/c76bc976703dc0cebfb6d4653061b8ac3524421d"><code>c76bc97</code></a> Use OpenVEX to document that we are not affected by CVE-2025-48924 in</li> <li>Additional commits viewable in <a href="https://github.com/apache/commons-compress/compare/rel/commons-compress-1.27.1...rel/commons-compress-1.28.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Bjørn Faaberg <bjorn.faaberg@nav.no>
…#985) Bumps [org.apache.commons:commons-compress](https://github.com/apache/commons-compress) from 1.27.1 to 1.28.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/apache/commons-compress/blob/master/RELEASE-NOTES.txt">org.apache.commons:commons-compress's changelog</a>.</em></p> <blockquote> <h2>Apache Commons Compress 1.28.0 Release Notes</h2> <p>The Apache Commons Compress team is pleased to announce the release of Apache Commons Compress 1.28.0.</p> <p>Apache Commons Compress defines an API for working with compression and archive formats. These include bzip2, gzip, pack200, LZMA, XZ, Snappy, traditional Unix Compress, DEFLATE, DEFLATE64, LZ4, Brotli, Zstandard and ar, cpio, jar, tar, zip, dump, 7z, arj.</p> <p>This is a feature and maintenance release. Java 8 or later is required.</p> <p>This release updates Apache Commons Lang to 3.18.0 to pick up the fix for CVE-2025-48924 (<a href="https://nvd.nist.gov/vuln/detail/CVE-2025-48924">https://nvd.nist.gov/vuln/detail/CVE-2025-48924</a>), but is not affected by it.</p> <h2>Changes in this version</h2> <p>Changes in this version include the following.</p> <h2>New Features</h2> <ul> <li> <pre><code> Add GzipParameters.getModificationInstant(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipParameters.setModificationInstant(Instant). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipParameters.OS, setOS(OS), getOS(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipParameters.toString(). Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-638: Add GzipParameters.setFileNameCharset(Charset) and getFileNameCharset() to override the default ISO-8859-1 Charset <a href="https://redirect.github.com/apache/commons-compress/issues/602">#602</a>. Thanks to vincexjl, Gary Gregory, Piotr P. Karwasz.</li> <li> <pre><code> Add support for gzip extra subfields, see GzipParameters.setExtra(HeaderExtraField) [#604](apache/commons-compress#604). Thanks to ddeschenes-1, Gary Gregory. </code></pre> </li> <li> <pre><code> Add CompressFilterOutputStream and refactor to use. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add ZipFile.stream(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> GzipCompressorInputStream reads the modification time (MTIME) and stores its value incorrectly multiplied by 1,000. Thanks to Danny Deschenes, Gary Gregory. </code></pre> </li> <li> <pre><code> GzipCompressorInputStream writes the modification time (MTIME) the value incorrectly divided by 1,000. Thanks to Danny Deschenes, Gary Gregory. </code></pre> </li> <li> <pre><code> Add optional FHCRC to GZIP header [#627](apache/commons-compress#627). Thanks to Danny Deschenes, Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipCompressorInputStream.Builder allowing to customize the file name and comment Charsets. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipCompressorInputStream.Builder.setOnMemberStart(IOConsumer) to monitor member parsing. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add GzipCompressorInputStream.Builder.setOnMemberEnd(IOConsumer) to monitor member parsing. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add PMD check to default Maven goal. Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add SevenZFile.Builder.setMaxMemoryLimitKiB(int). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add MemoryLimitException.MemoryLimitException(long, int, Throwable) and deprecate MemoryLimitException.MemoryLimitException(long, int, Exception). Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-692: Add support for zstd compression in zip archives. Thanks to Mehmet Karaman, Andrey Loskutov, Gary Gregory.</li> <li> <pre><code> Add support for XZ compression in ZIP archives. Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-695: Add ZipArchiveInputStream.createZstdInputStream(InputStream) to provide a different InputStream implementation for Zstandard (Zstd) <a href="https://redirect.github.com/apache/commons-compress/issues/649">#649</a>. Thanks to Gary Gregory.</li> <li> <pre><code> Add org.apache.commons.compress.harmony.pack200.Pack200Exception.Pack200Exception(String, Throwable). Thanks to Gary Gregory. </code></pre> </li> <li>COMPRESS-697: Move BitStream.nextBit() method to BitInputStream <a href="https://redirect.github.com/apache/commons-compress/issues/663">#663</a>. Thanks to Fredrik Kjellberg, Gary Gregory.</li> <li> <pre><code> Add org.apache.commons.compress.compressors.lzma.LZMACompressorInputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.lzma.LZMACompressorOutputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.XZCompressorInputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.XZCompressorOutputStream.builder/Builder(). Thanks to Gary Gregory. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.ZstdCompressorOutputStream.builder/Builder() [#666](apache/commons-compress#666). Thanks to Gary Gregory, David Walluck, Piotr P. Karwasz. </code></pre> </li> <li> <pre><code> Add org.apache.commons.compress.compressors.xz.ZstdConstants [#666](apache/commons-compress#666). Thanks to Gary Gregory, David Walluck, Piotr P. Karwasz. </code></pre> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/apache/commons-compress/commit/852d9c23b94127feafc1649d9c7f13d4df338845"><code>852d9c2</code></a> Prepare for the release candidate 1.28.0 RC1</li> <li><a href="https://github.com/apache/commons-compress/commit/f5eb9e28edf8a661ac5efc43b7853ee49bb73b3a"><code>f5eb9e2</code></a> Prepare for the next release candidate</li> <li><a href="https://github.com/apache/commons-compress/commit/36f204caa6f7bb2c92a9ad04ba246ad47a2465d2"><code>36f204c</code></a> Camel case parameter name</li> <li><a href="https://github.com/apache/commons-compress/commit/4c04e4a803831c00663a6dafd0f0837fba60633b"><code>4c04e4a</code></a> Use final</li> <li><a href="https://github.com/apache/commons-compress/commit/6cb7da194a9369edfbd65629576203b8af61ba44"><code>6cb7da1</code></a> Javadoc</li> <li><a href="https://github.com/apache/commons-compress/commit/563c9d2fa4d2340902284fc044a7398fc15da5fb"><code>563c9d2</code></a> Javadoc</li> <li><a href="https://github.com/apache/commons-compress/commit/ce73bd890e50fcb88d362fc8298f31fa90d802aa"><code>ce73bd8</code></a> Javadoc</li> <li><a href="https://github.com/apache/commons-compress/commit/a464ae94e0f9c59e9bc30be6086d876f9907d0a4"><code>a464ae9</code></a> Better parameter names</li> <li><a href="https://github.com/apache/commons-compress/commit/c0b2b84144d923a2bf7caada35e1d9bb5d562e78"><code>c0b2b84</code></a> Add TODO for next major version</li> <li><a href="https://github.com/apache/commons-compress/commit/c76bc976703dc0cebfb6d4653061b8ac3524421d"><code>c76bc97</code></a> Use OpenVEX to document that we are not affected by CVE-2025-48924 in</li> <li>Additional commits viewable in <a href="https://github.com/apache/commons-compress/compare/rel/commons-compress-1.27.1...rel/commons-compress-1.28.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
In order to put metadata in a gzip extra fields, this library needed to write and read them.
The extras being tagged with 2 bytes, I choose to make it conveninent by using a 2-chars iso-8859-1 (latin1) string
or if you prefer, using only bytes from 0-255 in ascii (single byte charset). It seems more in line with the spirit of the gzip rfc which uses letters.
A bit of convenience was added to the Extra class to list/add/find subfields.