packages feed

jsonschema-0.2.0.0: jsonschema.cabal

cabal-version:      2.2
name:               jsonschema
version:            0.2.0.0
license:            MPL-2.0
license-file:       LICENSE
author:             DPella AB
maintainer:         matti@dpella.io,
                    lobo@dpella.io
synopsis:           JSON Schema derivation and validation
description:
  Provides the `ToJSONSchema` type class and validation helpers for generating JSON
  Schema 2020-12 documents from Haskell types and validating JSON values at runtime.
  The library includes a generic deriving strategy that handles recursive data types,
  sum-tag encoding, and refined handling of arrays and enumerations. Validation implements
  the core and applicator vocabularies, including `$defs` and local `$ref` resolution,
  pragmatic support for `unevaluated*` keywords, and detailed error traces.
extra-doc-files:    CHANGELOG.md, README.md
homepage:          https://github.com/DPella/jsonschema
bug-reports:       https://github.com/DPella/jsonschema/issues
category:          Data, JSON

library
  default-language:
    Haskell2010
  default-extensions:
      DataKinds
    , FlexibleInstances
    , GADTs
    , GeneralizedNewtypeDeriving
    , ImportQualifiedPost
    , LambdaCase
    , OverloadedStrings
    , PolyKinds
    , RankNTypes
    , TypeApplications
  hs-source-dirs:
    src
  exposed-modules:
    Data.JSON.JSONSchema
  other-modules:
    Data.JSON.ToJSONSchema
    JSONSchema.Validation
  build-depends:
      base >=4.18 && <4.19
    , text >= 2.0 && <2.1
    , aeson >= 2.2 && <2.3
    , containers >= 0.6.7 && <0.6.8
    , vector >=0.13 && < 0.14
    , scientific >= 0.3.8 && <0.3.9
    , regex-tdfa >= 1.3.2 && <1.3.3


test-suite test-jsonschema
  type: exitcode-stdio-1.0
  default-language:
    Haskell2010
  hs-source-dirs:
    test
  main-is:
    Main.hs
  other-modules:
    JSONSchema.Spec
  build-depends:
      base >=4.18 && <4.19
    , jsonschema
    , aeson
    , text
    , vector
    , tasty
    , tasty-hunit