Skip to content

Commit b0ea1a5

Browse files
dfa1claude
andcommitted
release: 0.9
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
1 parent 2d9569c commit b0ea1a5

13 files changed

Lines changed: 27 additions & 13 deletions

File tree

CHANGELOG.md

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ All notable changes to this project are documented here. Format loosely follows
44
[Keep a Changelog](https://keepachangelog.com/); versions are released as `v*`
55
git tags, which trigger publication to Maven Central.
66

7-
## [Unreleased]
7+
## [0.9] - 2026-07-18
88

99
### Added
1010
- Native builds now decode legacy zstd frame formats v0.4-v0.7
@@ -30,6 +30,13 @@ git tags, which trigger publication to Maven Central.
3030
immediate binding (`-Wl,-z,relro,-z,now`), closing off the classic
3131
GOT-overwrite exploit primitive. Verified with `llvm-readelf`.
3232
([#71](https://github.com/dfa1/zstd-java/pull/71))
33+
- `windows-x86_64`/`windows-aarch64` native builds now export only zstd's
34+
public API (`ZSTD_*`/`ZDICT_*`) from the DLL, via `-DZSTD_DLL_EXPORT=1`
35+
(the PE analogue of the `-fvisibility=hidden` surface already used on
36+
ELF/Mach-O), instead of dumping every internal symbol
37+
(`FSE_*`/`HUF_*`/`COVER_*`/...) into the export table via
38+
`--export-all-symbols`. Cut the windows-x86_64 export table from 576 to
39+
185 symbols. ([#79](https://github.com/dfa1/zstd-java/pull/79))
3340

3441
### Fixed
3542
- Building the native library from source on Windows was silently broken:
@@ -38,6 +45,13 @@ git tags, which trigger publication to Maven Central.
3845
`bash` explicitly. A second latent bug this surfaced — unrecognized/Windows
3946
host OS detection crashed the build script under `set -u` — is fixed
4047
alongside it. ([#75](https://github.com/dfa1/zstd-java/pull/75))
48+
- Native library compilation now runs every translation unit through a real
49+
parallel work queue (`xargs -P`) instead of a fixed-size batch-then-wait
50+
loop, and aborts immediately if any `zig cc` invocation fails. Previously a
51+
failed compile under `&`/`wait` was invisible to `set -e` — it could
52+
silently produce no `.o` and only surface later as a cryptic link error, or
53+
worse, a link that "succeeded" against a stale `.o` left over from a
54+
previous run. ([#78](https://github.com/dfa1/zstd-java/pull/78))
4155

4256
Investigated and **rejected** as part of the same effort (see
4357
[#70](https://github.com/dfa1/zstd-java/issues/70) for full benchmark data):

benchmark/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>io.github.dfa1.zstd</groupId>
77
<artifactId>zstd-java</artifactId>
8-
<version>0.8</version>
8+
<version>0.9</version>
99
<relativePath>../pom.xml</relativePath>
1010
</parent>
1111

bom/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>io.github.dfa1.zstd</groupId>
77
<artifactId>zstd-java</artifactId>
8-
<version>0.8</version>
8+
<version>0.9</version>
99
<relativePath>../pom.xml</relativePath>
1010
</parent>
1111

integration-tests/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>io.github.dfa1.zstd</groupId>
77
<artifactId>zstd-java</artifactId>
8-
<version>0.8</version>
8+
<version>0.9</version>
99
<relativePath>../pom.xml</relativePath>
1010
</parent>
1111

native/linux-aarch64/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>io.github.dfa1.zstd</groupId>
77
<artifactId>zstd-java</artifactId>
8-
<version>0.8</version>
8+
<version>0.9</version>
99
<relativePath>../../pom.xml</relativePath>
1010
</parent>
1111

native/linux-x86_64/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>io.github.dfa1.zstd</groupId>
77
<artifactId>zstd-java</artifactId>
8-
<version>0.8</version>
8+
<version>0.9</version>
99
<relativePath>../../pom.xml</relativePath>
1010
</parent>
1111

native/osx-aarch64/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>io.github.dfa1.zstd</groupId>
77
<artifactId>zstd-java</artifactId>
8-
<version>0.8</version>
8+
<version>0.9</version>
99
<relativePath>../../pom.xml</relativePath>
1010
</parent>
1111

native/osx-x86_64/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>io.github.dfa1.zstd</groupId>
77
<artifactId>zstd-java</artifactId>
8-
<version>0.8</version>
8+
<version>0.9</version>
99
<relativePath>../../pom.xml</relativePath>
1010
</parent>
1111

native/windows-aarch64/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>io.github.dfa1.zstd</groupId>
77
<artifactId>zstd-java</artifactId>
8-
<version>0.8</version>
8+
<version>0.9</version>
99
<relativePath>../../pom.xml</relativePath>
1010
</parent>
1111

native/windows-x86_64/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>io.github.dfa1.zstd</groupId>
77
<artifactId>zstd-java</artifactId>
8-
<version>0.8</version>
8+
<version>0.9</version>
99
<relativePath>../../pom.xml</relativePath>
1010
</parent>
1111

0 commit comments

Comments
 (0)