release: v1.5.0 - External API providers and central settings
Build and Push / build (release) Successful in 1m10s
Build and Push / build (release) Successful in 1m10s
🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -5,6 +5,40 @@ All notable changes to Library Desk will be documented in this file.
|
||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [1.5.0] - 2025-12-26
|
||||
|
||||
### Added
|
||||
|
||||
- **Central Settings Database** - Tatlock-wide configuration via PostgreSQL
|
||||
- `SettingsClient` for async access to `system_settings` database
|
||||
- User-scoped settings with global fallback
|
||||
- API config storage with `enabled` toggle and per-source category filters
|
||||
- JSON Schema support for future UI rendering
|
||||
|
||||
- **External API Providers** - Modular `src/apis/` package with swappable implementations
|
||||
- `OpenMeteoProvider` - Weather with geocoding (free, no API key)
|
||||
- `NOSProvider` - Dutch news RSS (16 categories including sports)
|
||||
- `BBCProvider` - English news RSS (21 categories including sports)
|
||||
- `AggregatedNewsProvider` - Merges sources chronologically with category filtering
|
||||
- `AlphaVantageProvider` - Stock/crypto quotes (API key from settings DB)
|
||||
- Abstract base classes for provider interoperability
|
||||
|
||||
- **Provider Dependency Injection**
|
||||
- `WeatherProviderDep`, `NewsProviderDep`, `AlphaVantageProviderDep` type aliases
|
||||
- Async initialization with settings database integration
|
||||
- Lifecycle management in `shutdown_clients()`
|
||||
|
||||
- **Development Dependencies** - `requirements-dev.txt`
|
||||
- `pip-audit` for security vulnerability scanning
|
||||
- `ruff` for code quality
|
||||
- Testing packages moved from main requirements
|
||||
|
||||
### Changed
|
||||
|
||||
- News sources configurable via `news.sources` setting
|
||||
- Per-source category filtering via `api.{source}.categories`
|
||||
- Categories default to all if not specified
|
||||
|
||||
## [1.4.8] - 2025-12-25
|
||||
|
||||
### Added
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
[project]
|
||||
name = "library-desk"
|
||||
version = "1.4.9"
|
||||
version = "1.5.0"
|
||||
description = "Coordination service for The Library system - HybridRAG queries, document ingestion, entity extraction, and knowledge consolidation"
|
||||
readme = "README.md"
|
||||
requires-python = ">=3.12"
|
||||
|
||||
Reference in New Issue
Block a user