Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@yawkat
Copy link
Owner

@yawkat yawkat commented Dec 5, 2025

It's still not easy to reproduce due to the multi-platform nature of the build, but this should reduce the diff between versions somewhat.

@yawkat yawkat merged commit 37d6ca4 into main Dec 5, 2025
19 checks passed
@yawkat yawkat deleted the reproducible branch December 5, 2025 11:36
@hboutemy
Copy link

hboutemy commented Dec 5, 2025

did you try to rebuild the native part?
did you publish the result somewhere?
I'm trying to rebuild and compare independently from the automation from Reproducible Central, as integrating to automation is the ultimate step that will take time: let's try the first step...
jvm-repo-rebuild/reproducible-central#4573

@hboutemy
Copy link

hboutemy commented Dec 5, 2025

notice that I'm surprised of net/jpountz/util/win32/amd64/liblz4-java.so: isn't it supposed to be a .dll on Windows?

@yawkat
Copy link
Owner Author

yawkat commented Dec 5, 2025

Agreed, but that's how it was in 1.8.0. I don't have any machine to test except for linux amd64, so I don't want to touch this

@yawkat
Copy link
Owner Author

yawkat commented Dec 5, 2025

Oh sorry didn't see your original question.

I ran the github action runner twice, and the produced binary jar was identical. I did not try on another windows or linux machine

@hboutemy
Copy link

hboutemy commented Dec 5, 2025

I now understood how I can do a full rebuild of 1.9.0 and get a real buildcompare and diffoscope jvm-repo-rebuild/reproducible-central#4573
I'll publish for 1.9.0 and do the same for 1.10.0 and 1.10.1: I expect there will be only 1 native binary difference
and on next release, it will be away :)

@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.

3 participants