keiro-test-support 0.21.0.0 → 0.22.0.0
raw patch · 3 files changed
+27/−4 lines, 3 filesdep ~keiro-migrationsdep ~kiroku-storedep ~kiroku-store-migrationsPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: keiro-migrations, kiroku-store, kiroku-store-migrations
API changes (from Hackage documentation)
+ Keiro.Test.Postgres: checkpointBenchmarkStore :: KirokuStore -> IO ()
Files
- CHANGELOG.md +15/−0
- keiro-test-support.cabal +4/−4
- src/Keiro/Test/Postgres.hs +8/−0
CHANGELOG.md view
@@ -6,6 +6,21 @@ ## [Unreleased] +## 0.22.0.0 — 2026-10-27++### Breaking Changes++- Require the Kiroku Store 0.12 cohort from+ mori://shinzui/kiroku/packages/kiroku-store; apply migration 0016 from+ mori://shinzui/kiroku/packages/kiroku-store-migrations with affected workers+ stopped, then restart new binaries before using namespace targets. Update+ exhaustive subscription target/event matches and low-level record constructors.++### New Features++- Add `checkpointBenchmarkStore` for disposable serial benchmark preparation,+ so a selected scenario can finish prior cluster checkpoint work before warm-up.+ ## 0.21.0.0 — 2026-10-14 ### Other Changes
keiro-test-support.cabal view
@@ -1,6 +1,6 @@ cabal-version: 3.0 name: keiro-test-support-version: 0.21.0.0+version: 0.22.0.0 synopsis: Shared PostgreSQL test fixtures for Keiro test suites description: Suite-level ephemeral-PostgreSQL fixtures shared by the Keiro test@@ -58,9 +58,9 @@ ephemeral-pg >=0.3.1 && <0.4, hasql >=1.10 && <1.11, hasql-pool >=1.2 && <1.5,- keiro-migrations ^>=0.21.0.0,- kiroku-store ^>=0.11.0.0,- kiroku-store-migrations ^>=0.7.1.0,+ keiro-migrations ^>=0.22.0.0,+ kiroku-store ^>=0.12.0.0,+ kiroku-store-migrations ^>=0.7.2.0, pg-migrate ^>=1.2.0.0, stm >=2.5 && <2.6, text >=2.1 && <2.2,
src/Keiro/Test/Postgres.hs view
@@ -26,6 +26,7 @@ withMigratedSuite, withMigratedSuiteWith, withMigratedBenchmarkSuite,+ checkpointBenchmarkStore, withFreshDatabase, withFreshStore, withFreshStoreWith,@@ -148,6 +149,13 @@ ) (\_ -> runSqlOn connection ("DROP DATABASE " <> quoteIdentifier template <> " WITH (FORCE)")) action++-- | Finish prior cluster checkpoint work before warming a selected benchmark.+-- This is a privileged, cluster-wide operation for disposable serial fixtures;+-- it is not part of a measured command and changes no business rows.+checkpointBenchmarkStore :: Store.KirokuStore -> IO ()+checkpointBenchmarkStore store =+ store `seq` (Pool.use store.pool (Session.script "CHECKPOINT") >>= either (fail . show) pure) withConfiguredSuite :: Pg.Config -> [MigrationComponent] -> (Fixture -> IO a) -> IO a withConfiguredSuite config extraComponents action = do