Apply more strict flags but only on CI

This commit is contained in:
Mark Karpov 2020-02-12 15:01:11 +01:00
parent 0adf4830b4
commit 711c639259
2 changed files with 28 additions and 4 deletions

View File

@ -13,7 +13,8 @@ let
overrides = distributedClosureOverlay; overrides = distributedClosureOverlay;
}; };
distributedClosureOverlay = self: super: { distributedClosureOverlay = self: super: {
"distributed-closure" = super.callCabal2nix "distributed-closure" source { }; "distributed-closure" = pkgs.haskell.lib.enableCabalFlag
(super.callCabal2nix "distributed-closure" source { }) "dev";
}; };
in { in {
distributed-closure = haskellPackages.distributed-closure; distributed-closure = haskellPackages.distributed-closure;

View File

@ -17,6 +17,11 @@ source-repository head
type: git type: git
location: https://github.com/tweag/distributed-closure location: https://github.com/tweag/distributed-closure
flag dev
description: Turn on development settings.
manual: True
default: False
library library
exposed-modules: exposed-modules:
Control.Applicative.Static Control.Applicative.Static
@ -38,29 +43,47 @@ library
template-haskell >= 2.10 template-haskell >= 2.10
hs-source-dirs: src hs-source-dirs: src
default-language: Haskell2010 default-language: Haskell2010
ghc-options: -Wall if flag(dev)
ghc-options: -Wall -Werror -Wcompat
-Wincomplete-record-updates
-Wincomplete-uni-patterns
-Wnoncanonical-monad-instances
else
ghc-options: -Wall
test-suite tests test-suite tests
type: exitcode-stdio-1.0 type: exitcode-stdio-1.0
default-language: Haskell2010 default-language: Haskell2010
hs-source-dirs: tests hs-source-dirs: tests
main-is: test.hs main-is: test.hs
ghc-options: -Wall
build-depends: build-depends:
base >= 4.8, base >= 4.8,
binary >= 0.7, binary >= 0.7,
distributed-closure, distributed-closure,
hspec >= 2.1, hspec >= 2.1,
QuickCheck >= 2.8 QuickCheck >= 2.8
if flag(dev)
ghc-options: -Wall -Werror -Wcompat
-Wincomplete-record-updates
-Wincomplete-uni-patterns
-Wnoncanonical-monad-instances
else
ghc-options: -Wall
executable example-client-server executable example-client-server
main-is: ClientServer.hs main-is: ClientServer.hs
hs-source-dirs: examples hs-source-dirs: examples
default-language: Haskell2010 default-language: Haskell2010
ghc-options: -Wall
build-depends: build-depends:
base >= 4.8, base >= 4.8,
async >= 2.1, async >= 2.1,
binary >= 0.7, binary >= 0.7,
bytestring >= 0.10, bytestring >= 0.10,
distributed-closure distributed-closure
if flag(dev)
ghc-options: -Wall -Werror -Wcompat
-Wincomplete-record-updates
-Wincomplete-uni-patterns
-Wnoncanonical-monad-instances
else
ghc-options: -Wall