From 7d6cbe2561f69b07f9ef0f03bf5cfef4f1551f96 Mon Sep 17 00:00:00 2001 From: Pratyush Sharma <56130065+pratyush618@users.noreply.github.com> Date: Wed, 27 May 2026 13:28:39 +0530 Subject: [PATCH 1/3] chore(release): bump version to 0.14.2 --- crates/taskito-async/Cargo.toml | 2 +- crates/taskito-core/Cargo.toml | 2 +- crates/taskito-python/Cargo.toml | 2 +- crates/taskito-workflows/Cargo.toml | 2 +- py_src/taskito/__init__.py | 2 +- pyproject.toml | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/crates/taskito-async/Cargo.toml b/crates/taskito-async/Cargo.toml index 21cceab0..2d2cbdf5 100644 --- a/crates/taskito-async/Cargo.toml +++ b/crates/taskito-async/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "taskito-async" -version = "0.14.1" +version = "0.14.2" edition = "2021" [dependencies] diff --git a/crates/taskito-core/Cargo.toml b/crates/taskito-core/Cargo.toml index 513d73bf..f57f6dd1 100644 --- a/crates/taskito-core/Cargo.toml +++ b/crates/taskito-core/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "taskito-core" -version = "0.14.1" +version = "0.14.2" edition = "2021" [features] diff --git a/crates/taskito-python/Cargo.toml b/crates/taskito-python/Cargo.toml index b795e363..a7c4ca82 100644 --- a/crates/taskito-python/Cargo.toml +++ b/crates/taskito-python/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "taskito-python" -version = "0.14.1" +version = "0.14.2" edition = "2021" [features] diff --git a/crates/taskito-workflows/Cargo.toml b/crates/taskito-workflows/Cargo.toml index f97f36bf..ceacd157 100644 --- a/crates/taskito-workflows/Cargo.toml +++ b/crates/taskito-workflows/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "taskito-workflows" -version = "0.14.1" +version = "0.14.2" edition = "2021" [features] diff --git a/py_src/taskito/__init__.py b/py_src/taskito/__init__.py index cd3e1b15..ee63fdfa 100644 --- a/py_src/taskito/__init__.py +++ b/py_src/taskito/__init__.py @@ -116,4 +116,4 @@ __version__ = _get_version("taskito") except PackageNotFoundError: - __version__ = "0.14.1" + __version__ = "0.14.2" diff --git a/pyproject.toml b/pyproject.toml index c12b6beb..7216f826 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "maturin" [project] name = "taskito" -version = "0.14.1" +version = "0.14.2" description = "Rust-powered task queue for Python. No broker required." requires-python = ">=3.10" license = { file = "LICENSE" } From 88c447f02cd517879aa73d69cf520307d5aa93ea Mon Sep 17 00:00:00 2001 From: Pratyush Sharma <56130065+pratyush618@users.noreply.github.com> Date: Wed, 27 May 2026 13:29:09 +0530 Subject: [PATCH 2/3] docs: add 0.14.2 changelog entry --- docs/content/docs/more/changelog.mdx | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/docs/content/docs/more/changelog.mdx b/docs/content/docs/more/changelog.mdx index 8fc1f958..3c5cd9cf 100644 --- a/docs/content/docs/more/changelog.mdx +++ b/docs/content/docs/more/changelog.mdx @@ -5,6 +5,15 @@ description: "Release history for taskito — every notable change, fix, and fea All notable changes to taskito are documented here. +## 0.14.2 + +### Fixed + +- **`wait()` no longer returns transient `FAILED` during saga startup.** `WorkflowRun.wait()`'s poll safety-net could observe the run in `Failed` state before the saga orchestrator transitioned it to `Compensating`. When a tracker event is registered but has not yet fired, `wait()` now defers to the event instead of returning the possibly-transient terminal state. The event is set only after the saga decision is fully resolved, so `wait()` can never prematurely return `Failed` for a run that is about to compensate. +- **`_mark_run_compensating` retries on transient SQLite lock.** The `Failed` → `Compensating` storage write could silently fail under SQLite file contention, leaving the run stuck in `Failed`. The method now retries up to 5 times with backoff, matching the existing retry pattern in compensation job dispatch. + +--- + ## 0.14.1 ### Fixed From 32f3938f7f68085375ee9a1b813401ae329109b9 Mon Sep 17 00:00:00 2001 From: Pratyush Sharma <56130065+pratyush618@users.noreply.github.com> Date: Wed, 27 May 2026 13:31:17 +0530 Subject: [PATCH 3/3] docs: update landing page badge to v0.14 --- docs/src/lib/landing-content.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/src/lib/landing-content.tsx b/docs/src/lib/landing-content.tsx index 4b18c7b8..c529a863 100644 --- a/docs/src/lib/landing-content.tsx +++ b/docs/src/lib/landing-content.tsx @@ -104,7 +104,7 @@ export type LandingCta = { }; export const HERO: LandingHero = { - badge: "v0.12 — Rust core, native async, DAG workflows", + badge: "v0.14 — Rust core, native async, DAG workflows", headline: ["Task queue", "without the broker."], description: "Rust-powered task queue for Python. Replace Celery without Redis or RabbitMQ. Start with SQLite, scale to Postgres.",