mirror of
https://github.com/Mesabloo/diagnose.git
synced 2024-09-17 14:17:11 +03:00
117 lines
2.7 KiB
YAML
117 lines
2.7 KiB
YAML
name: diagnose
|
|
version: 1.5.0
|
|
github: "mesabloo/diagnose"
|
|
license: BSD3
|
|
author: "Mesabloo"
|
|
copyright: "2020 Mesabloo"
|
|
|
|
dependencies:
|
|
- base >= 4.7 && < 5
|
|
- prettyprinter == 1.7.0
|
|
- prettyprinter-ansi-terminal == 1.1.2
|
|
- unordered-containers == 0.2.14.0
|
|
- hashable == 1.3.0.0
|
|
- data-default == 0.7.1.1
|
|
- bytestring == 0.10.12.0
|
|
- text == 1.2.4.1
|
|
|
|
default-extensions:
|
|
- OverloadedStrings
|
|
- LambdaCase
|
|
- BlockArguments
|
|
|
|
library:
|
|
source-dirs: src
|
|
exposed-modules:
|
|
- Error.Diagnose
|
|
- Error.Diagnose.Diagnostic
|
|
- Error.Diagnose.Position
|
|
- Error.Diagnose.Pretty
|
|
- Error.Diagnose.Report
|
|
when:
|
|
- condition: flag(megaparsec-compat)
|
|
exposed-modules:
|
|
- Error.Diagnose.Compat.Megaparsec
|
|
- condition: flag(parsec-compat)
|
|
exposed-modules:
|
|
- Error.Diagnose.Compat.Parsec
|
|
|
|
flags:
|
|
json:
|
|
description: "Allows exporting diagnostics as JSON.
|
|
This is disabled by default as this relies on the very heavy dependency Aeson."
|
|
manual: true
|
|
default: false
|
|
megaparsec-compat:
|
|
description: "Includes a small compatibility layer (in the module Error.Diagnose.Compat.Megaparsec) to transform megaparsec errors into reports for this library."
|
|
manual: true
|
|
default: false
|
|
parsec-compat:
|
|
description: "Includes a small compatibility layer (in the module Error.Diagnose.Compat.Parsec) to transform parsec errors into reports for this library."
|
|
manual: true
|
|
default: false
|
|
# do the same for other parsing libraries like parsec or attoparsec
|
|
|
|
when:
|
|
- condition: flag(json)
|
|
dependencies:
|
|
- aeson == 1.5.6.0
|
|
|
|
cpp-options:
|
|
- -DUSE_AESON
|
|
- condition: flag(megaparsec-compat)
|
|
dependencies:
|
|
- megaparsec >= 9.0.0
|
|
- containers == 0.6.2.1
|
|
- condition: flag(parsec-compat)
|
|
dependencies:
|
|
- parsec >= 3.1.14
|
|
|
|
ghc-options:
|
|
- -Wall
|
|
- -Wextra
|
|
# - -Wmissing-local-signatures
|
|
# - -Wmonomorphism-restriction
|
|
|
|
tests:
|
|
diagnose-rendering-tests:
|
|
main: Spec.hs
|
|
source-dirs: test/rendering
|
|
ghc-options:
|
|
- -threaded
|
|
- -rtsopts
|
|
- -with-rtsopts=-N
|
|
- -O0
|
|
- -g
|
|
dependencies:
|
|
- diagnose
|
|
diagnose-megaparsec-tests:
|
|
main: Spec.hs
|
|
source-dirs: test/megaparsec
|
|
ghc-options:
|
|
- -threaded
|
|
- -rtsopts
|
|
- -with-rtsopts=-N
|
|
- -O0
|
|
- -g
|
|
dependencies:
|
|
- diagnose
|
|
when:
|
|
- condition: ! '!(flag(megaparsec-compat))'
|
|
buildable: false
|
|
diagnose-parsec-tests:
|
|
main: Spec.hs
|
|
source-dirs: test/parsec
|
|
ghc-options:
|
|
- -threaded
|
|
- -rtsopts
|
|
- -with-rtsopts=-N
|
|
- -O0
|
|
- -g
|
|
dependencies:
|
|
- diagnose
|
|
when:
|
|
- condition: ! '!(flag(parsec-compat))'
|
|
buildable: false
|
|
|