maksit-persistence/CHANGELOG.md
Maksym Sadovnychyy 626cccd34f (feature): init
2026-08-17 12:13:45 +02:00

1.0 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.

[Unreleased]

[1.0.0] - 2026-08-17

Added

  • Package MaksIT.Persistence (repo maksit-persistence): product-agnostic linq2db + PostgreSQL Engine spine.
  • Connection factory: ILinq2DbConnectionFactory / RegisterLinq2Db(connectionString, mappingSchema?) — scoped PostgreSQL DataConnection.
  • Migrations: RegisterPostgresMigrations — wait for Postgres, optional create-DB, retry MigrateUp, product hooks for coordination tables and schema verify.
  • Schema sync: RegisterSchemaSync — add-only ALTER TABLE … ADD COLUMN from a product desired-schema map.
  • Guards: Linq2DbGuard maps Postgres unique violation (23505) to Result.Conflict; rethrows OperationCanceledException.
  • Mapping: NameConverter.ToSnakeCase and fluent MapScalarPropertiesToSnakeCase.