packages feed

kioku-migrations-0.7.0.0: kioku-migrations.cabal

cabal-version: 3.0
name: kioku-migrations
version: 0.7.0.0
synopsis: Schema migrations for kioku
description:
  Owns kioku schema evolution as a native pg-migrate component and composes
  it with the kiroku and keiro migration components.

license: BSD-3-Clause
license-file: LICENSE
author: Nadeem Bitar
maintainer: nadeem@gmail.com
copyright: 2026 Nadeem Bitar
category: Database
build-type: Simple
tested-with: ghc >=9.12 && <9.13
homepage: https://github.com/shinzui/kioku
bug-reports: https://github.com/shinzui/kioku/issues
extra-doc-files:
  CHANGELOG.md
  codd-upgrade/README.md

extra-source-files:
  codd-upgrade/*.sql
  ledger-fixups/*.sql
  migrations.lock
  migrations/*.sql
  migrations/manifest
  test/fixtures/*.sql

source-repository head
  type: git
  location: https://github.com/shinzui/kioku.git
  subdir: kioku-migrations

common warnings
  ghc-options:
    -Wall
    -Wcompat
    -Widentities
    -Wincomplete-record-updates
    -Wincomplete-uni-patterns
    -Wpartial-fields
    -Wredundant-constraints
    -Werror=incomplete-patterns

common shared
  default-language: GHC2024
  default-extensions:
    BlockArguments
    DeriveAnyClass
    DuplicateRecordFields
    OverloadedLabels
    OverloadedStrings

library
  import: warnings, shared
  hs-source-dirs: src
  exposed-modules:
    Kioku.Migrations
    Kioku.Migrations.History.Codd

  other-modules:
    Kioku.Migrations.Internal.Definition
    Kioku.Migrations.Internal.EmbedFile

  build-depends:
    aeson >=2.1 && <2.3,
    base >=4.18 && <5,
    bytestring >=0.11 && <0.13,
    containers >=0.6 && <0.8,
    hasql >=1.10 && <1.11,
    hasql-transaction >=1.2 && <1.3,
    keiro-migrations ^>=0.17.0.0,
    kiroku-store-migrations ^>=0.4.0.0,
    pg-migrate ^>=1.1.0.0,
    pg-migrate-embed ^>=1.1.0.0,
    pg-migrate-import-codd ^>=1.1.0.0,
    template-haskell >=2.20 && <2.24,
    text >=2.0 && <2.2,

library test-support
  import: warnings, shared
  visibility: public
  hs-source-dirs: test-support
  exposed-modules: Kioku.Migrations.TestSupport
  build-depends:
    base >=4.18 && <5,
    ephemeral-pg ^>=0.2.2.0,
    keiro-test-support ^>=0.17.0.0,
    kioku-migrations ^>=0.7.0.0,
    text >=2.0 && <2.2,

test-suite kioku-migrations-test
  import: warnings, shared
  type: exitcode-stdio-1.0
  main-is: Main.hs
  hs-source-dirs: test
  -- testCoddCohortImport rehearses the deprecated codd import bridge on purpose;
  -- the bridge must keep working until the last codd-era database crosses over.
  ghc-options:
    -threaded
    -rtsopts
    -with-rtsopts=-N
    -Wno-deprecations

  build-depends:
    base >=4.18 && <5,
    bytestring >=0.11 && <0.13,
    containers >=0.6 && <0.8,
    hasql >=1.6,
    keiro-migrations ^>=0.17.0.0,
    kioku-migrations ^>=0.7.0.0,
    kioku-migrations:test-support,
    kiroku-store-migrations ^>=0.4.0.0,
    pg-migrate ^>=1.1.0.0,
    pg-migrate-embed ^>=1.1.0.0,
    pg-migrate-import-codd ^>=1.1.0.0,
    tasty >=1.5,
    tasty-hunit >=0.10,
    text >=2.0 && <2.2,