Skip to content

Commit 52a15cb

Browse files
authored
release: v1.3.0-rc01 with batched apply and adaptive flush (#159)
1 parent a97815b commit 52a15cb

File tree

3 files changed

+19
-3
lines changed

3 files changed

+19
-3
lines changed

CHANGELOG.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,22 @@
22

33
All notable changes to this project will be documented in this file.
44

5+
## [1.3.0-rc01] - 2025-10-17
6+
7+
### Added
8+
- **SafeBoxEngine batching:** Introduces a debounced, batched `.apply()` pipeline that coalesces rapid edits and deletions before writing to disk. Prevents IO flooding under bursty workloads and keeps `.commit()` isolated from `.apply()` paths for predictable sync behavior. ([#55](https://github.com/harrytmthy/safebox/issues/55), [#156](https://github.com/harrytmthy/safebox/issues/156))
9+
- **SafeBoxCrypto ByteArray APIs:** Direct `ByteArray` variants to avoid Base64/UTF-8 overhead in binary workflows. ([#152](https://github.com/harrytmthy/safebox/issues/152))
10+
11+
### Performance
12+
- **Adaptive flush in blob store:** One `force()` per updated page, plus an adaptive strategy that eagerly forces tiny blocking writes while batching page-level flushes for bulk paths. Reduces commit latency for single-entry commits while keeping batched writes fast. ([#150](https://github.com/harrytmthy/safebox/issues/150), [#154](https://github.com/harrytmthy/safebox/issues/154))
13+
14+
### Fixed
15+
- **Corrupted-byte handling:** Blob store now scans and trims trailing corruption, resuming from a clean boundary to restore durability under partial writes or device shutdowns. ([#148](https://github.com/harrytmthy/safebox/issues/148))
16+
- **Recovery flow robustness:** Recovery store supports partial delete and exponential backoff scheduling to replay entries safely. ([#143](https://github.com/harrytmthy/safebox/issues/143))
17+
18+
### Docs
19+
- **Comparison table clarity:** Updated _Why SafeBox?_ section in README. ([#146](https://github.com/harrytmthy/safebox/issues/146))
20+
521
## [1.3.0-alpha02] - 2025-10-04
622

723
### Added

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,10 +55,10 @@ Compared to EncryptedSharedPreferences:
5555

5656
```kotlin
5757
dependencies {
58-
implementation("io.github.harrytmthy:safebox:1.3.0-alpha02")
58+
implementation("io.github.harrytmthy:safebox:1.3.0-rc01")
5959

6060
// Optional: standalone crypto helper
61-
implementation("io.github.harrytmthy:safebox-crypto:1.3.0-alpha02")
61+
implementation("io.github.harrytmthy:safebox-crypto:1.3.0-rc01")
6262
}
6363
```
6464

build-logic/convention/src/main/java/PublishingConventionPlugin.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ class PublishingConventionPlugin : Plugin<Project> {
2525
override fun apply(target: Project) {
2626
with(target) {
2727
group = "io.github.harrytmthy"
28-
version = "1.3.0-alpha02"
28+
version = "1.3.0-rc01"
2929

3030
pluginManager.apply("org.jetbrains.dokka")
3131
pluginManager.apply("com.vanniktech.maven.publish")

0 commit comments

Comments
 (0)