From 777e617b7407645fa6a1b98f012deef34eea301f Mon Sep 17 00:00:00 2001 From: Ulas Kalayci Date: Sun, 26 Apr 2026 09:00:15 +0200 Subject: [PATCH] chore: release v0.25.0 --- CHANGELOG.md | 11 +++++++++++ package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 024a8a0..08ebefc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,17 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [0.25.0] - 2026-04-25 + +### Added +- API token authentication: admins can create named Bearer / X-API-Key tokens for external integrations; tokens are SHA-256-hashed at rest, support optional expiry and revocation, and track last-used timestamp +- Settings: new "API Tokens" section for admins to create and revoke tokens; the full token value is shown only once immediately after creation +- OpenAPI 3.0 specification served at `/api/v1/openapi.json` and `/openapi.json` (download via `?download=1`) +- Budget: new endpoints `GET /api/v1/budget/categories` and `GET /api/v1/budget/categories/:key/subcategories` with optional `?lang=` localisation + +### Changed +- `server/logger.js` now serialises `Error` objects into structured JSON fields (name, message, stack) instead of logging `{}` + ## [0.24.4] - 2026-04-26 ### Added diff --git a/package-lock.json b/package-lock.json index 0daf68e..364d291 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "oikos", - "version": "0.24.4", + "version": "0.25.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "oikos", - "version": "0.24.4", + "version": "0.25.0", "license": "MIT", "dependencies": { "bcrypt": "^6.0.0", diff --git a/package.json b/package.json index 0913f12..bb88d1a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "oikos", - "version": "0.24.4", + "version": "0.25.0", "description": "Self-hosted family planner - calendar, tasks, shopping, meal planning, budget and more. Private, open-source, no subscription.", "main": "server/index.js", "type": "module",