Releases: bluetape4k/bluetape4k-image
Release list
0.3.0
Highlights
bluetape4k-image 0.3.0 adds OCR and large-file image I/O capabilities, then aligns the image stack with the bluetape4k-dependencies 1.3.x train. The release focuses on practical adoption paths: basic OCR, Spring Boot OCR, Ktor OCR, and memory-conscious streaming image workloads.
Related: #170 #174 #181 #182 #168 #167
OCR support
- Added OCR module support with runnable quickstart examples for basic OCR usage.
- Added a Spring Boot OCR example for users who want auto-configuration-style adoption.
- Added a native-free Ktor OCR quickstart and kept the Ktor example away from snapshot-only core wiring.
- Made OCR runtime gating portable across native ABI drift so CI can validate the path without depending on one host-native layout.
Related: #170 #174 #176 #180 #181 #182
Large image I/O and benchmarks
- Added memory-conscious large-file image I/O APIs backed by Okio.
- Expanded large-image and streaming benchmark coverage so performance discussions are tied to measured workloads.
- Kept benchmark harness code under the benchmark workspace instead of leaking benchmark concerns into production modules.
Related: #168 #167 #209
Runtime and release alignment
- Refreshed image golden-chain Nightly coverage and stabilized scheduled snapshot dependency resolution.
- Aligned the release line with
bluetape4k-bom 1.11.0,bluetape4k-aws-bom 0.4.0, and the stable dependencies catalog. - Reduced
compileTestKotlinwarning noise and refreshed shared catalog references for common/OpenTelemetry aliases.
Related: #145 #147 #149 #151 #153 #156 #159 #161 #178 #179 #210 #211
Documentation and diagrams
- Rebuilt README and example diagrams for root overview, class responsibilities, OCR architecture, example routing, and native-host boundaries.
- Enriched the root README overview and made diagrams readable at rendered size rather than only in source form.
Related: #154 #157 #162 #163 #164 #187 #221
Contributors
Thanks to everyone who contributed to this release.
- Sunghyouk Bae sunghyouk.bae@gmail.com
- debop sunghyouk.bae@gmail.com
- dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Full Changelog: 0.2.0...0.3.0
0.2.0
Added
images-captchamodule for CAPTCHA image challenge generation, refreshable challenge services, and verification service contracts (PR #88, PR #119, PR #127, closes #4, #101).images-ktorroute helpers for CAPTCHA issue/verification and multipart thumbnail APIs, aligned with sharedbluetape4k-ktor-*helpers (PR #119, PR #127, PR #136, closes #118, #135).- Runnable examples for pure JVM processing, Spring Boot local storage, and Ktor image APIs (PR #128, PR #130, PR #131, closes #124, #125, #126).
- Research-backed image AI dependency strategy for OCR, face/object detection, and classification follow-up work (PR #129, closes #83, #84, #85).
Changed
- Prepared the release line to consume
io.github.bluetape4k:bluetape4k-bom:1.10.0and the public stableio.github.bluetape4k.aws:bluetape4k-aws-bom:0.3.0(PR #92, PR #94, PR #134). - Refreshed vips/java21/java25 benchmark evidence, natural-photo fixtures, charts, and benchmark report regeneration guidance (PR #89, PR #117, PR #121, PR #122, closes #86, #103, #104, #105).
- Documented AVIF/HEIC native codec boundaries, libvips runtime setup, CAPTCHA lifecycle ownership, and completed 0.2.0 roadmap state (PR #87, PR #120, PR #95, closes #111, #112, #113, #114).
Removed
- Removed the
ImmutableImage.useGraphics(...)andhammingDistance(...)compatibility shims that were deprecated for removal in0.2.0; useImmutableImage.withGraphics { }andHashDistance.hamming(a, b)instead (#61).
Fixed
- Hardened optional S3/CDN auto-configuration fallback behavior and release workflow catalog selection (PR #97, PR #119, closes #109).
- Guarded native vips lifecycle and FFM arena cleanup contracts, including AVIF/HEIC capability-gated read/write support, double-close, use-after-close, codec capability, and failed creation paths (PR #115, PR #116, closes #100, #107, #108).
- Restricted workflow token permissions for repository automation (PR #132).
Contributors
Thanks to everyone who contributed to this release.
- Sunghyouk Bae sunghyouk.bae@gmail.com
- debop sunghyouk.bae@gmail.com
Full Changelog: 0.1.2...0.2.0
0.1.2
Release 0.1.2
See CHANGELOG.md for details.
Contributors
Thanks to everyone who contributed to this release.
- debop sunghyouk.bae@gmail.com
Full Changelog: 0.1.1...0.1.2
0.1.1
Added
images-spring-bootmodule: Spring Boot 4 auto-configuration for image storage, CDN signing, reactive health, and Micrometer metrics. IncludesLocalImageStorage,S3ImageStorage,S3PreSignedUrlSigner,CloudFrontUrlSigner, and five auto-configuration phases (PR #42, closes #5).- Root README hero image plus refreshed project-purpose and feature entrypoint documentation (PR #27).
bluetape4k-image-bomBOM module for image library consumers (PR #12).- English and Korean README files for the image BOM module (PR #13).
- GitHub Actions workflows for CI, nightly, snapshot, release, and code-quality checks (PR #7).
Changed
- Extended test coverage for
imagesmodule: batch processing, animated writers, filter DSL, and utility functions (PR #41). - Added unit tests for VipsImage writer classes in
images-vips-java21andimages-vips-java25(PR #40). - Added
FfmVipsRuntimeconcurrency test forimages-vips-java25(PR #39). - Prepared the 0.1.1 release line to consume
io.github.bluetape4k:bluetape4k-bom:1.9.0andio.github.bluetape4k.aws:bluetape4k-aws-bom:0.2.0. - Split Nightly into smoke/full lanes and normalized lessons, Kover, Dependabot, NMCP, and compatibility-guard maintenance (PR #15, PR #16, PR #17, PR #18, PR #22, PR #24, PR #25, PR #26).
- Updated image dependency catalog and related dependency bumps, including JVips and annotations (PR #14, PR #20, PR #21, PR #23).
- CI uses path filtering and retry configuration (PR #10).
- Test code migrated from Kluent to
bluetape4k-assertions(PR #11).
Removed
- Pre-stabilization typo compatibility APIs from
images:usingSuspend(...),SuspendPngWriter.NoComppression, and the misspelledImageOuptputStreamSupportKtJava facade.ImmutableImage.useGraphics(...)andhammingDistance(...)remain deprecated until removal in0.2.0(#61).
Fixed
- Aligned POM license metadata from Apache 2.0 to MIT across all published modules (PR #38).
- Aligned repository license text as MIT across all modules (PR #28).
Contributors
Thanks to everyone who contributed to this release.
- debop sunghyouk.bae@gmail.com
- dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Full Changelog: 0.1.0...0.1.1
0.1.0
Release 0.1.0
See CHANGELOG.md for details.
Full Changelog: https://github.com/bluetape4k/bluetape4k-image/commits/0.1.0