packages feed

mueval-0.9.4: mueval.cabal

cabal-version:      1.12
name:               mueval
version:            0.9.4
license:            BSD3
license-file:       LICENSE
maintainer:         Terence Ng <stoicism03@gmail.com>
author:             Gwern <gwern@gwern.net>
tested-with:        ghc ==6.10.1
homepage:           https://github.com/TerenceNg03/mueval#readme
bug-reports:        https://github.com/TerenceNg03/mueval/issues
synopsis:           Safely evaluate pure Haskell expressions
description:
    Mueval is a Haskell interpreter. It uses the GHC API to evaluate arbitrary Haskell expressions. Importantly, mueval takes many precautions to defang and avoid \"evil\" code.  It uses resource limits, whitelisted modules and Safe Haskell, special Show instances for IO, threads, processes, and changes of directory to sandbox the Haskell code. . It is, in short, intended to be a standalone version of Lambdabot's famous evaluation functionality. For examples and explanations, please see the README file. . Mueval is POSIX-only.

category:           Development, Language
build-type:         Simple
extra-source-files:
    README.md
    HCAR.tex

source-repository head
    type:     git
    location: https://github.com/TerenceNg03/mueval

library
    exposed-modules:
        Mueval.ArgsParse
        Mueval.Context
        Mueval.Interpreter
        Mueval.Parallel
        Mueval.Resources

    hs-source-dirs:   src
    other-modules:    Paths_mueval
    default-language: Haskell2010
    ghc-options:
        -Wall -Wcompat -Widentities -Wincomplete-record-updates
        -Wincomplete-uni-patterns -Wmissing-export-lists
        -Wmissing-home-modules -Wpartial-fields -Wredundant-constraints
        -static

    build-depends:
        Cabal >=3.8.1.0 && <3.9,
        QuickCheck >=2.14.3 && <2.15,
        base >=4.5 && <5,
        containers >=0.6.7 && <0.7,
        directory >=1.3.7.1 && <1.4,
        extensible-exceptions >=0.1.1.4 && <0.2,
        filepath >=1.4.2.2 && <1.5,
        hint >=0.9.0.7 && <0.10,
        mtl >=2.2.2 && <2.3,
        process >=1.6.16.0 && <1.7,
        show >=0.6 && <0.7,
        simple-reflect >=0.3.3 && <0.4,
        unix >=2.7.3 && <2.8

executable mueval
    main-is:          Main.hs
    hs-source-dirs:   app
    other-modules:    Paths_mueval
    default-language: Haskell2010
    ghc-options:
        -Wall -Wcompat -Widentities -Wincomplete-record-updates
        -Wincomplete-uni-patterns -Wmissing-export-lists
        -Wmissing-home-modules -Wpartial-fields -Wredundant-constraints
        -static -threaded -rtsopts -with-rtsopts=-N

    build-depends:
        Cabal >=3.8.1.0 && <3.9,
        QuickCheck >=2.14.3 && <2.15,
        base >=4.5 && <5,
        containers >=0.6.7 && <0.7,
        directory >=1.3.7.1 && <1.4,
        extensible-exceptions >=0.1.1.4 && <0.2,
        filepath >=1.4.2.2 && <1.5,
        hint >=0.9.0.7 && <0.10,
        mtl >=2.2.2 && <2.3,
        mueval,
        process >=1.6.16.0 && <1.7,
        show >=0.6 && <0.7,
        simple-reflect >=0.3.3 && <0.4,
        unix >=2.7.3 && <2.8

test-suite mueval-test
    type:             exitcode-stdio-1.0
    main-is:          Spec.hs
    hs-source-dirs:   test
    other-modules:    Paths_mueval
    default-language: Haskell2010
    ghc-options:
        -Wall -Wcompat -Widentities -Wincomplete-record-updates
        -Wincomplete-uni-patterns -Wmissing-export-lists
        -Wmissing-home-modules -Wpartial-fields -Wredundant-constraints
        -static -threaded -rtsopts -with-rtsopts=-N

    build-depends:
        Cabal >=3.8.1.0 && <3.9,
        QuickCheck >=2.14.3 && <2.15,
        base >=4.5 && <5,
        containers >=0.6.7 && <0.7,
        directory >=1.3.7.1 && <1.4,
        extensible-exceptions >=0.1.1.4 && <0.2,
        filepath >=1.4.2.2 && <1.5,
        hint >=0.9.0.7 && <0.10,
        mtl >=2.2.2 && <2.3,
        mueval,
        process >=1.6.16.0 && <1.7,
        show >=0.6 && <0.7,
        simple-reflect >=0.3.3 && <0.4,
        unix >=2.7.3 && <2.8