Use gcc included in Windows image for release build#22
Conversation
|
lz4 CLI is nice to have. some of the unit tests compare output when it's present. please add it back |
|
Ah, you mean I was wondering now why this was not needed for Ubuntu, but it seems the GitHub runner image has it preinstalled. Would it be ok if I changed the Windows workflow to just get the LZ4 CLI from https://github.com/lz4/lz4/releases and put it on the PATH? That will probably be faster than the MSYS2 setup. |
|
Sure |
|
Ok, have changed it to download the LZ4 CLI from the LZ4 GitHub release. |
Bumps [at.yawk.lz4:lz4-java](https://github.com/yawkat/lz4-java) from 1.10.1 to 1.10.2. Release notes *Sourced from [at.yawk.lz4:lz4-java's releases](https://github.com/yawkat/lz4-java/releases).* > lz4-java v1.10.2 > ---------------- > > What's Changed > -------------- > > * Reproducible build by [`@yawkat`](https://github.com/yawkat) in [yawkat/lz4-java#15](https://redirect.github.com/yawkat/lz4-java/pull/15) > * Run tests for pull requests again by [`@Marcono1234`](https://github.com/Marcono1234) in [yawkat/lz4-java#17](https://redirect.github.com/yawkat/lz4-java/pull/17) > * Add `.git-versioned-pom.xml` to .gitignore by [`@Marcono1234`](https://github.com/Marcono1234) in [yawkat/lz4-java#16](https://redirect.github.com/yawkat/lz4-java/pull/16) > * Fix source code formatting by [`@Marcono1234`](https://github.com/Marcono1234) in [yawkat/lz4-java#18](https://redirect.github.com/yawkat/lz4-java/pull/18) > * Improve publish workflow by [`@Marcono1234`](https://github.com/Marcono1234) in [yawkat/lz4-java#19](https://redirect.github.com/yawkat/lz4-java/pull/19) > * Migrate to macOS 15 x86\_64 for release build by [`@Marcono1234`](https://github.com/Marcono1234) in [yawkat/lz4-java#21](https://redirect.github.com/yawkat/lz4-java/pull/21) > * Use gcc included in Windows image for release build by [`@Marcono1234`](https://github.com/Marcono1234) in [yawkat/lz4-java#22](https://redirect.github.com/yawkat/lz4-java/pull/22) > * Improve `LZ4FrameIOStreamTest` test by [`@Marcono1234`](https://github.com/Marcono1234) in [yawkat/lz4-java#23](https://redirect.github.com/yawkat/lz4-java/pull/23) > * Rename windows JNI lib to liblz4-java.dll by [`@HTHou`](https://github.com/HTHou) in [yawkat/lz4-java#25](https://redirect.github.com/yawkat/lz4-java/pull/25) > * Use bnd-maven-plugin to fix osgi manifest headers by [`@aptmac`](https://github.com/aptmac) in [yawkat/lz4-java#28](https://redirect.github.com/yawkat/lz4-java/pull/28) > > New Contributors > ---------------- > > * [`@HTHou`](https://github.com/HTHou) made their first contribution in [yawkat/lz4-java#25](https://redirect.github.com/yawkat/lz4-java/pull/25) > * [`@aptmac`](https://github.com/aptmac) made their first contribution in [yawkat/lz4-java#28](https://redirect.github.com/yawkat/lz4-java/pull/28) > > **Full Changelog**: <yawkat/lz4-java@v1.10.1...v1.10.2> Changelog *Sourced from [at.yawk.lz4:lz4-java's changelog](https://github.com/yawkat/lz4-java/blob/main/CHANGES.md).* > Change log > ========== > > 1.8.0 > ----- > > * Upgraded LZ4 to 1.9.3. Updated the JNI bindings. Minimum glibc version in GNU/Linux platforms: 2.17 on aarch64, 2.2.5 on amd64, 2.17 on ppc64le, 2.2 on s390x. > * Supported the JNI binding for Darwin aarch64. > * [#174](https://redirect.github.com/lz4/lz4-java/issues/174) > Fixed NullPointerException when reading a malformed input by LZ4FrameInputStream. > (Marco Berlot, Rei Odaira) > * [#169](https://redirect.github.com/lz4/lz4-java/issues/169) > Added information about requiring ant 1.10.2 or newer. > (guru prasad HB, Rei Odaira) > * [#167](https://redirect.github.com/lz4/lz4-java/issues/167) > Supported using LZ4SafeDecompressor in LZ4DecompressorWithLength. > (sahilpaudel-pe, Rei Odaira) > * [#163](https://redirect.github.com/lz4/lz4-java/issues/163) > Supported JNI binding in old CentOS 6 on amd64. > (dcapwell, Rei Odaira) > * [#162](https://redirect.github.com/lz4/lz4-java/issues/162) > Added copyright notices, required by Apache License, Version 2.0. > (Egor Nepomnyaschih, Rei Odaira) > * [#160](https://redirect.github.com/lz4/lz4-java/issues/160) > Added minimum glibc version to each release. > (patelh, Rei Odaira) > * [#146](https://redirect.github.com/lz4/lz4-java/issues/146) > Improved LZ4FrameInputStream to read InputStream lazily. > Instance creation of LZ4FrameInputStream became faster. > (Björn Michael, Rei Odaira) > * Improved the speed of the write methods of LZ4FrameOutputStream by > delaying calculating content checksum. > (Rei Odaira) > * Added a debug functionality to not delete a temporary JNI library > when either LZ4JAVA\_KEEP\_TEMP\_JNI\_LIB or lz4java.jnilib.temp.keep is > set to true (will be deleted in the next run). > (Rei Odaira) > * Enabled build with Java 13. The distribution is still > built with Java 7. (Rei Odaira) > * Revised the documentation. (Rei Odaira) ... (truncated) Commits * [`e3aa42c`](yawkat/lz4-java@e3aa42c) Use bnd-maven-plugin to fix osgi manifest headers ([#28](https://redirect.github.com/yawkat/lz4-java/issues/28)) * [`ef125a1`](yawkat/lz4-java@ef125a1) Rename net/jpountz/util/win32/amd64/liblz4-java.so to net/jpountz/util/window... * [`1dfbefd`](yawkat/lz4-java@1dfbefd) Improve `LZ4FrameIOStreamTest` test ([#23](https://redirect.github.com/yawkat/lz4-java/issues/23)) * [`de1e43e`](yawkat/lz4-java@de1e43e) Use gcc included in Windows image for release build ([#22](https://redirect.github.com/yawkat/lz4-java/issues/22)) * [`9ece12a`](yawkat/lz4-java@9ece12a) Migrate to macOS 15 x86\_64 for release build ([#21](https://redirect.github.com/yawkat/lz4-java/issues/21)) * [`37d698a`](yawkat/lz4-java@37d698a) Improve publish workflow ([#19](https://redirect.github.com/yawkat/lz4-java/issues/19)) * [`c491079`](yawkat/lz4-java@c491079) Fix source code formatting ([#18](https://redirect.github.com/yawkat/lz4-java/issues/18)) * [`eed5aa0`](yawkat/lz4-java@eed5aa0) Add `.git-versioned-pom.xml` to .gitignore ([#16](https://redirect.github.com/yawkat/lz4-java/issues/16)) * [`17f0e7a`](yawkat/lz4-java@17f0e7a) Run tests for pull requests again ([#17](https://redirect.github.com/yawkat/lz4-java/issues/17)) * [`37d6ca4`](yawkat/lz4-java@37d6ca4) Reproducible build ([#15](https://redirect.github.com/yawkat/lz4-java/issues/15)) * See full diff in [compare view](yawkat/lz4-java@v1.10.1...v1.10.2) [](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) --- Dependabot commands and options 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 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)
See https://github.com/actions/runner-images/blob/win25/20251125.122/images/windows/Windows2025-Readme.md#tools
This simplifies the build config a bit and probably also speeds it up.
Reproducibility-wise I am not sure if it makes a difference (or is actually an improvement) since the previous setup used
update: truefor the MSYS2 action, so could have broken reproducibility if a new gcc package was released in the meantime.Using
gccfrom the GitHub runner image now at least preserves reproducibility until GitHub changes their runner image I guess.Side note: The previous MSYS2 setup also installed themingw-w64-x86_64-lz4package. I think that was redundant since this build is supposed to create the LZ4 binary from source, not use a prebuilt one in any way (?).