From 181c31297aeaf324086d891a33e657f873039363 Mon Sep 17 00:00:00 2001 From: turinglambdaai Date: Fri, 23 Oct 2026 05:52:24 +0800 Subject: [PATCH] release: 0.2.4 --- CHANGELOG.md | 6 +++++- VERSION | 2 +- linux/GeneratedBackend.hpp | 2 +- macos-host/Sources/RivetHost/GeneratedBackend.swift | 2 +- racket/info.rkt | 2 +- racket/taskly/version.rkt | 2 +- rivet.rktd | 2 +- windows/GeneratedBackend.hpp | 2 +- 8 files changed, 12 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 24f52aec..684286e4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,7 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [Unreleased] +## [0.2.4] - 2026-10-22 ### Added - Windows: native Ctrl/Shift task multi-selection, batch completion/move/date @@ -42,6 +42,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Linux: preserve full 64-bit SQLite IDs in GTK task/list selection, editing, completion and navigation; exercise large IDs in the native acceptance suite (#49). +- Linux: keep the staged-delete undo card attached to its persistent GTK + container, avoiding a use-after-free during Undo/timeout; use the native + GtkSearchEntry placeholder API and harden AT-SPI scans during row rebuilds + (#54). - Preserve quick-add drafts until asynchronous saves succeed on Windows, macOS and Linux (#32, #37, #38). - Windows: honor the selected task list on creation, allow correction of diff --git a/VERSION b/VERSION index 71790396..abd41058 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.2.3 +0.2.4 diff --git a/linux/GeneratedBackend.hpp b/linux/GeneratedBackend.hpp index 8f9cf93a..de7ac9c3 100644 --- a/linux/GeneratedBackend.hpp +++ b/linux/GeneratedBackend.hpp @@ -19,7 +19,7 @@ namespace rivet_app { inline constexpr char kModuleName[] = "backend"; inline constexpr char kEntryName[] = "start"; inline constexpr char kDisplayName[] = "Taskly"; -inline constexpr char kVersion[] = "0.2.3"; +inline constexpr char kVersion[] = "0.2.4"; inline constexpr std::int64_t kBuild = 1; inline constexpr char kIdentifier[] = "app.taskly.Taskly"; inline constexpr char kReleaseChannel[] = "stable"; diff --git a/macos-host/Sources/RivetHost/GeneratedBackend.swift b/macos-host/Sources/RivetHost/GeneratedBackend.swift index f7a80672..be5adb1b 100644 --- a/macos-host/Sources/RivetHost/GeneratedBackend.swift +++ b/macos-host/Sources/RivetHost/GeneratedBackend.swift @@ -7,7 +7,7 @@ public enum RivetGeneratedConfig { public static let moduleName = "backend" public static let entryName = "start" public static let displayName = "Taskly" - public static let version = "0.2.3" + public static let version = "0.2.4" public static let build: Int64 = 1 public static let identifier = "app.taskly.Taskly" public static let releaseChannel = "stable" diff --git a/racket/info.rkt b/racket/info.rkt index ce0dc00c..539005b9 100644 --- a/racket/info.rkt +++ b/racket/info.rkt @@ -11,5 +11,5 @@ "rivet")) (define build-deps '("rackunit-lib")) (define pkg-desc "Taskly shared Racket application core") -(define version "0.2.3") +(define version "0.2.4") (define pkg-authors '("turinglambdaai")) diff --git a/racket/taskly/version.rkt b/racket/taskly/version.rkt index 9aed7773..1ff33bd5 100644 --- a/racket/taskly/version.rkt +++ b/racket/taskly/version.rkt @@ -16,7 +16,7 @@ platform-symbol architecture-symbol) -(define app-version "0.2.3") +(define app-version "0.2.4") (define app-build 1) (define app-identifier "app.taskly.Taskly") (define app-channel 'stable) diff --git a/rivet.rktd b/rivet.rktd index cbdc1a2b..c28bae47 100644 --- a/rivet.rktd +++ b/rivet.rktd @@ -1 +1 @@ -#hasheq((name . "taskly") (display-name . "Taskly") (version . "0.2.3") (build . 1) (identifier . "app.taskly.Taskly") (macos-min-version . "14.0") (windows-min-version . "10.0.19041.0") (backend . "racket/taskly/backend.rkt") (module . "backend") (entry . "start") (protocol . 1) (windows-icon . "assets/taskly.ico") (macos-icon . "assets/taskly.icns") (dmg-background . "assets/dmg-background.png") (windows-installer-bitmaps . #hasheq((banner . "assets/wizard-banner.bmp") (dialog . "assets/wizard-dialog.bmp"))) (linux-icon . "assets/icon_512.png") (linux-formats . ("deb" "rpm" "appimage")) (resources . ("shared/i18n" "shared/emoji.json"))) +#hasheq((name . "taskly") (display-name . "Taskly") (version . "0.2.4") (build . 1) (identifier . "app.taskly.Taskly") (macos-min-version . "14.0") (windows-min-version . "10.0.19041.0") (backend . "racket/taskly/backend.rkt") (module . "backend") (entry . "start") (protocol . 1) (windows-icon . "assets/taskly.ico") (macos-icon . "assets/taskly.icns") (dmg-background . "assets/dmg-background.png") (windows-installer-bitmaps . #hasheq((banner . "assets/wizard-banner.bmp") (dialog . "assets/wizard-dialog.bmp"))) (linux-icon . "assets/icon_512.png") (linux-formats . ("deb" "rpm" "appimage")) (resources . ("shared/i18n" "shared/emoji.json"))) diff --git a/windows/GeneratedBackend.hpp b/windows/GeneratedBackend.hpp index 1204d660..0e946fad 100644 --- a/windows/GeneratedBackend.hpp +++ b/windows/GeneratedBackend.hpp @@ -19,7 +19,7 @@ namespace rivet_app { inline constexpr char kModuleName[] = "backend"; inline constexpr char kEntryName[] = "start"; inline constexpr char kDisplayName[] = "Taskly"; -inline constexpr char kVersion[] = "0.2.3"; +inline constexpr char kVersion[] = "0.2.4"; inline constexpr std::int64_t kBuild = 1; inline constexpr char kIdentifier[] = "app.taskly.Taskly"; inline constexpr char kReleaseChannel[] = "stable";