packages feed

seihou-core-0.4.0.0: seihou-core.cabal

cabal-version: 3.0
name: seihou-core
version: 0.4.0.0
synopsis: Core library for Seihou project scaffolding
description:
  Core library for Seihou, a composable project scaffolding system.
  It provides the types, Dhall loading, template rendering, execution
  engine, manifest handling, and validation logic used by the Seihou CLI.

homepage: https://github.com/shinzui/seihou
bug-reports: https://github.com/shinzui/seihou/issues
license: BSD-3-Clause
license-file: LICENSE
author: Nadeem Bitar
maintainer: nadeem@gmail.com
copyright: (c) 2026 Nadeem Bitar
category: Development
build-type: Simple

source-repository head
  type: git
  location: https://github.com/shinzui/seihou.git

library
  default-language: GHC2024
  default-extensions:
    DuplicateRecordFields
    NoFieldSelectors
    OverloadedLabels
    OverloadedRecordDot
    OverloadedStrings
    TypeFamilies

  hs-source-dirs: src
  exposed-modules:
    Seihou.Composition.Graph
    Seihou.Composition.Instance
    Seihou.Composition.Plan
    Seihou.Composition.Recipe
    Seihou.Composition.Resolve
    Seihou.Core.AgentPrompt
    Seihou.Core.Blueprint
    Seihou.Core.CommandVar
    Seihou.Core.Context
    Seihou.Core.Expr
    Seihou.Core.Install
    Seihou.Core.Migration
    Seihou.Core.Module
    Seihou.Core.Path
    Seihou.Core.Recipe
    Seihou.Core.Registry
    Seihou.Core.Scaffold
    Seihou.Core.SchemaUpgrade
    Seihou.Core.Status
    Seihou.Core.Types
    Seihou.Core.Variable
    Seihou.Core.Version
    Seihou.Dhall.Config
    Seihou.Dhall.Eval
    Seihou.Effect.ConfigReader
    Seihou.Effect.ConfigReaderInterp
    Seihou.Effect.ConfigReaderPure
    Seihou.Effect.ConfigWriter
    Seihou.Effect.ConfigWriterInterp
    Seihou.Effect.ConfigWriterPure
    Seihou.Effect.Console
    Seihou.Effect.ConsoleInterp
    Seihou.Effect.ConsolePure
    Seihou.Effect.DhallEval
    Seihou.Effect.DhallEvalInterp
    Seihou.Effect.Filesystem
    Seihou.Effect.FilesystemInterp
    Seihou.Effect.FilesystemPure
    Seihou.Effect.Logger
    Seihou.Effect.LoggerInterp
    Seihou.Effect.LoggerPure
    Seihou.Effect.ManifestStore
    Seihou.Effect.ManifestStoreInterp
    Seihou.Effect.ManifestStorePure
    Seihou.Effect.Process
    Seihou.Effect.ProcessInterp
    Seihou.Effect.ProcessPure
    Seihou.Engine.Conflict
    Seihou.Engine.DhallJSON
    Seihou.Engine.Diff
    Seihou.Engine.Execute
    Seihou.Engine.Migrate
    Seihou.Engine.Plan
    Seihou.Engine.Preview
    Seihou.Engine.Remove
    Seihou.Engine.Section
    Seihou.Engine.Template
    Seihou.Engine.TypedDhallText
    Seihou.Engine.Validate
    Seihou.Interaction.Confirm
    Seihou.Interaction.Prompt
    Seihou.Manifest.Hash
    Seihou.Manifest.Types
    Seihou.Prelude

  build-depends:
    aeson >=2.1 && <3,
    aeson-pretty >=0.8 && <1,
    base >=4.18 && <5,
    base16-bytestring >=1.0 && <2,
    bytestring >=0.11 && <1,
    containers >=0.6 && <1,
    cryptohash-sha256 >=0.11 && <1,
    dhall >=1.42 && <2,
    directory >=1.3 && <2,
    effectful-core >=2.4 && <3,
    either >=5 && <6,
    filepath >=1.4 && <2,
    generic-lens >=2.2 && <3,
    lens >=5.2 && <6,
    process >=1.6 && <2,
    text >=2.0 && <3,
    time >=1.12 && <2,
    transformers >=0.6 && <1,
    yaml >=0.11 && <1,

test-suite seihou-core-test
  type: exitcode-stdio-1.0
  default-language: GHC2024
  default-extensions:
    DuplicateRecordFields
    NoFieldSelectors
    OverloadedLabels
    OverloadedRecordDot
    OverloadedStrings

  hs-source-dirs: test
  main-is: Main.hs
  other-modules:
    Seihou.Composition.GraphSpec
    Seihou.Composition.InstanceSpec
    Seihou.Composition.PlanSpec
    Seihou.Composition.RecipeSpec
    Seihou.Composition.ResolveSpec
    Seihou.Core.AgentPromptSpec
    Seihou.Core.BlueprintSpec
    Seihou.Core.CommandVarSpec
    Seihou.Core.ContextSpec
    Seihou.Core.ExprSpec
    Seihou.Core.InstallSpec
    Seihou.Core.ListSpec
    Seihou.Core.MigrationSpec
    Seihou.Core.ModuleSpec
    Seihou.Core.RecipeSpec
    Seihou.Core.RegistryEmitSpec
    Seihou.Core.RegistrySpec
    Seihou.Core.RegistrySyncSpec
    Seihou.Core.ScaffoldSpec
    Seihou.Core.SchemaUpgradeSpec
    Seihou.Core.StatusSpec
    Seihou.Core.TypesSpec
    Seihou.Core.VariableSpec
    Seihou.Core.VersionSpec
    Seihou.Dhall.ConfigSpec
    Seihou.Dhall.EvalSpec
    Seihou.Dhall.MigrationDecoderSpec
    Seihou.Effect.ConfigReaderSpec
    Seihou.Effect.ConfigWriterSpec
    Seihou.Effect.FilesystemSpec
    Seihou.Effect.LoggerSpec
    Seihou.Effect.ManifestStoreSpec
    Seihou.Engine.ConflictSpec
    Seihou.Engine.DiffSpec
    Seihou.Engine.ExecuteSpec
    Seihou.Engine.MigrateSpec
    Seihou.Engine.PlanSpec
    Seihou.Engine.PreviewSpec
    Seihou.Engine.RemoveSpec
    Seihou.Engine.SectionSpec
    Seihou.Engine.TemplateSpec
    Seihou.Engine.ValidateSpec
    Seihou.Evaluation.ConditionalTemplateSpec
    Seihou.Evaluation.DhallTextFlakeSpec
    Seihou.Evaluation.SplitFlakeSpec
    Seihou.Evaluation.TypedDhallTextSpec
    Seihou.Integration.CompositionSpec
    Seihou.Integration.ExecutionSpec
    Seihou.Integration.GenerationSpec
    Seihou.Integration.ModuleLoadSpec
    Seihou.Interaction.ConfirmSpec
    Seihou.Interaction.PromptSpec
    Seihou.Manifest.TypesSpec

  build-depends:
    aeson >=2.1 && <3,
    base >=4.18 && <5,
    bytestring >=0.11 && <1,
    containers >=0.6 && <1,
    dhall >=1.42 && <2,
    directory >=1.3 && <2,
    effectful-core >=2.4 && <3,
    filepath >=1.4 && <2,
    hspec >=2.11 && <3,
    seihou-core,
    tasty >=1.4 && <2,
    tasty-hspec >=1.2 && <2,
    temporary >=1.3 && <2,
    text >=2.0 && <3,
    time >=1.12 && <2,
    yaml >=0.11 && <1,