Skip to content

Conversation

@Marcono1234
Copy link

@Marcono1234 Marcono1234 commented Dec 6, 2025

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: true for the MSYS2 action, so could have broken reproducibility if a new gcc package was released in the meantime.
Using gcc from 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 the mingw-w64-x86_64-lz4 package. 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 (?).

@yawkat
Copy link
Owner

yawkat commented Dec 6, 2025

lz4 CLI is nice to have. some of the unit tests compare output when it's present. please add it back

@Marcono1234
Copy link
Author

Marcono1234 commented Dec 6, 2025

Ah, you mean LZ4FrameIOStreamTest#hasNativeLz4CLI, right? Sorry I wasn't aware of it; and just noticed your commit ea8a193 which added it.

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.

@yawkat
Copy link
Owner

yawkat commented Dec 7, 2025

Sure

@Marcono1234
Copy link
Author

Ok, have changed it to download the LZ4 CLI from the LZ4 GitHub release.
For a sample run, see https://github.com/Marcono1234/lz4-java/actions/runs/20034686691/job/57452858090

@yawkat yawkat merged commit de1e43e into yawkat:main Dec 8, 2025
1 check passed
@Marcono1234 Marcono1234 deleted the windows-gcc branch December 9, 2025 20:53
@yawkat yawkat added the enhancement New feature or request label Dec 16, 2025
mergify bot added a commit to ArcadeData/arcadedb that referenced this pull request Dec 21, 2025
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)
  
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility\_score?dependency-name=at.yawk.lz4:lz4-java&package-manager=maven&previous-version=1.10.1&new-version=1.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)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants