mirror of
https://github.com/MAKS-IT-COM/maksit-hamode.git
synced 2026-06-30 22:36:42 +02:00
2.6 KiB
2.6 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[1.0.2] - 2026-06-20
Changed
- PostgreSQL lease service now uses configurable
SchemaandTablefromIRuntimeLeaseConnectionStringProviderinstead of hardcodedpublic.app_runtime_leases. - Added explicit missing-table error handling for PostgreSQL lease acquire/release operations.
- Added provider-configuration validation for Redis and etcd services (required connection settings and key prefix).
- Added DI overloads to reuse host-managed clients (
NpgsqlDataSource,IConnectionMultiplexer,EtcdClient) for lease services.
[1.0.1] - 2026-06-20
Added
- DI registration extensions in
MaksIT.HAMode.Extensions.ServiceCollectionExtensionsfor runtime instance id and backend-specific lease service wiring (PostgreSql,Redis,Etcd). - DI extension overloads that accept concrete configuration instances implementing HAMode configuration interfaces.
- Root connector configuration interface
IRuntimeLeaseConnectionProvider, with connector-specific interfaces inheriting it.
Changed
- Updated package/release setup to publish
MaksIT.HAModeas the primary distributable library for version1.0.1. - Updated several dependency versions across HAMode projects.
- Updated README backend examples to use host-defined configuration interfaces and concrete classes, instead of direct
IConfiguration["..."]access.
[1.0.0] - 2026-06-20
Added
- Initial NuGet package structure for
MaksIT.HAMode.AbstractionsandMaksIT.HAMode.PostgreSql. - Shared runtime coordination contracts:
IRuntimeInstanceIdIRuntimeLeaseServiceIRuntimeLeaseConnectionStringProvider
- Default runtime instance id provider (
RuntimeInstanceIdProvider) suitable for Kubernetes and local processes. - PostgreSQL lease service (
RuntimeLeaseServiceNpgsql) implementing optimistic lease acquire and safe holder-based release. - Package metadata, symbols, embedded docs, and release assets for NuGet publishing.
- Additional runtime lease backend packages:
MaksIT.HAMode.Rediswith atomic Lua acquire/release semantics and TTL renewal for the same holder.MaksIT.HAMode.Etcdwith transaction-based compare-and-swap acquire/release and lease-backed TTL.
Changed
- Packaging model changed to a single distributable NuGet package:
MaksIT.HAMode. - Internal projects (
Abstractions,PostgreSql,Redis,Etcd) remain as source modules but are no longer individually packed.