git.iko.soy/typeable/cabal2nix
on master help sign in
Drop support / testing for compilers before GHC 8.2.x.
c1b61fcPeter Simons
.travis.yml+15−17
@@ -26,27 +26,13 @@ before_cache:
26
26
27matrix:
27matrix:
28 include:
28 include:
29− - compiler: "ghc-7.10.1"
30− # env: TEST=--disable-tests BENCH=--disable-benchmarks
31− addons: {apt: {packages: [ghc-ppa-tools,cabal-install-head,ghc-7.10.1], sources: [hvr-ghc]}}
32− - compiler: "ghc-7.10.2"
33− # env: TEST=--disable-tests BENCH=--disable-benchmarks
34− addons: {apt: {packages: [ghc-ppa-tools,cabal-install-head,ghc-7.10.2], sources: [hvr-ghc]}}
35− - compiler: "ghc-7.10.3"
36− # env: TEST=--disable-tests BENCH=--disable-benchmarks
37− addons: {apt: {packages: [ghc-ppa-tools,cabal-install-head,ghc-7.10.3], sources: [hvr-ghc]}}
38− - compiler: "ghc-8.0.1"
39− # env: TEST=--disable-tests BENCH=--disable-benchmarks
40− addons: {apt: {packages: [ghc-ppa-tools,cabal-install-head,ghc-8.0.1], sources: [hvr-ghc]}}
41− - compiler: "ghc-8.0.2"
42− # env: TEST=--disable-tests BENCH=--disable-benchmarks
43− addons: {apt: {packages: [ghc-ppa-tools,cabal-install-head,ghc-8.0.2], sources: [hvr-ghc]}}
44 - compiler: "ghc-8.2.1"
29 - compiler: "ghc-8.2.1"
45 # env: TEST=--disable-tests BENCH=--disable-benchmarks
30 # env: TEST=--disable-tests BENCH=--disable-benchmarks
46 addons: {apt: {packages: [ghc-ppa-tools,cabal-install-head,ghc-8.2.1], sources: [hvr-ghc]}}
31 addons: {apt: {packages: [ghc-ppa-tools,cabal-install-head,ghc-8.2.1], sources: [hvr-ghc]}}
47
32
48before_install:
33before_install:
49 - HC=${CC}
34 - HC=${CC}
35+ - HCPKG=${HC/ghc/ghc-pkg}
50 - unset CC
36 - unset CC
51 - PATH=/opt/ghc/bin:/opt/ghc-ppa-tools/bin:$PATH
37 - PATH=/opt/ghc/bin:/opt/ghc-ppa-tools/bin:$PATH
52 - PKGNAME='cabal2nix'
38 - PKGNAME='cabal2nix'
@@ -56,8 +42,10 @@ install:
56 - echo "$(${HC} --version) [$(${HC} --print-project-git-commit-id 2> /dev/null || echo '?')]"
42 - echo "$(${HC} --version) [$(${HC} --print-project-git-commit-id 2> /dev/null || echo '?')]"
57 - BENCH=${BENCH---enable-benchmarks}
43 - BENCH=${BENCH---enable-benchmarks}
58 - TEST=${TEST---enable-tests}
44 - TEST=${TEST---enable-tests}
45+ - HADDOCK=${HADDOCK-true}
46+ - INSTALLED=${INSTALLED-true}
59 - travis_retry cabal update -v
47 - travis_retry cabal update -v
60− - sed -i 's/^jobs:/-- jobs:/' ${HOME}/.cabal/config
48+ - sed -i.bak 's/^jobs:/-- jobs:/' ${HOME}/.cabal/config
61 - rm -fv cabal.project.local
49 - rm -fv cabal.project.local
62 - "echo 'packages: .' > cabal.project"
50 - "echo 'packages: .' > cabal.project"
63 - rm -f cabal.project.freeze
51 - rm -f cabal.project.freeze
@@ -84,8 +72,18 @@ script:
84 # this builds all libraries and executables (including tests/benchmarks)
72 # this builds all libraries and executables (including tests/benchmarks)
85 # - rm -rf ./dist-newstyle
73 # - rm -rf ./dist-newstyle
86
74
75+ # Build with installed constraints for packages in global-db
76+ - if $INSTALLED; then
77+ echo cabal new-build -w ${HC} --disable-tests --disable-benchmarks $(${HCPKG} list --global --simple-output --names-only | sed 's/\([a-zA-Z0-9-]\{1,\}\) */--constraint="\1 installed" /g') all | sh;
78+ else echo "Not building with installed constraints"; fi
79+
87− # build & run tests
80+ # build & run tests, build benchmarks
88 - cabal new-build -w ${HC} ${TEST} ${BENCH} all
81 - cabal new-build -w ${HC} ${TEST} ${BENCH} all
89 - if [ "x$TEST" = "x--enable-tests" ]; then cabal new-test -w ${HC} ${TEST} all; fi
82 - if [ "x$TEST" = "x--enable-tests" ]; then cabal new-test -w ${HC} ${TEST} all; fi
90
83
84+ # haddock
85+ - rm -rf ./dist-newstyle
86+ - if $HADDOCK; then cabal new-haddock -w ${HC} --disable-tests --disable-benchmarks all; else echo "Skipping haddock generation";fi
87+
88+# REGENDATA ["cabal2nix.cabal"]
91# EOF
89# EOF
cabal2nix.cabal+2−2
@@ -2,7 +2,7 @@
2--
2--
3-- see: https://github.com/sol/hpack
3-- see: https://github.com/sol/hpack
4--
4--
5−-- hash: d8202a64b33d8fbb627b568af818cd121aecd00f917af6b899cf9b07c48fa55a
5+-- hash: 2360cd846729c1f3286c1d6482a68739be820cd444469dfb88242c08f31ca628
6
6
7name: cabal2nix
7name: cabal2nix
8version: 2.7.1
8version: 2.7.1
@@ -81,7 +81,7 @@ author: Peter Simons,
81maintainer: Peter Simons <simons@cryp.to>
81maintainer: Peter Simons <simons@cryp.to>
82license: BSD3
82license: BSD3
83license-file: LICENSE
83license-file: LICENSE
84−tested-with: GHC > 7.10 && < 8.3
84+tested-with: GHC > 8.2 && < 8.3
85build-type: Custom
85build-type: Custom
86cabal-version: >= 1.24
86cabal-version: >= 1.24
87
87
package.yaml+1−1
@@ -72,7 +72,7 @@ license-file: LICENSE
72github: nixos/cabal2nix
72github: nixos/cabal2nix
73category: Distribution, Nix
73category: Distribution, Nix
74stability: stable
74stability: stable
75−tested-with: GHC > 7.10 && < 8.3
75+tested-with: GHC > 8.2 && < 8.3
76description: >
76description: >
77 Convert Cabal files into Nix build instructions. Users of Nix can install the
77 Convert Cabal files into Nix build instructions. Users of Nix can install the
78 latest version by running:
78 latest version by running: