Integrate `dhall-nix` into CI (#887)
This commit is contained in:
parent
505bd9240d
commit
f4542d5bc5
|
@ -10,6 +10,7 @@ the following packages:
|
|||
* [`dhall`](./dhall) - [![Hackage](https://img.shields.io/hackage/v/dhall.svg)](https://hackage.haskell.org/package/dhall)
|
||||
* [`dhall-bash`](./dhall-bash) - [![Hackage](https://img.shields.io/hackage/v/dhall-bash.svg)](https://hackage.haskell.org/package/dhall-bash)
|
||||
* [`dhall-json`](./dhall-json) - [![Hackage](https://img.shields.io/hackage/v/dhall-json.svg)](https://hackage.haskell.org/package/dhall-json)
|
||||
* [`dhall-nix`](./dhall-nix) - [![Hackage](https://img.shields.io/hackage/v/dhall-nix.svg)](https://hackage.haskell.org/package/dhall-nix)
|
||||
* [`dhall-text`](./dhall-text) - [![Hackage](https://img.shields.io/hackage/v/dhall-text.svg)](https://hackage.haskell.org/package/dhall-text)
|
||||
|
||||
Navigate to each package's directory for their respective `README`s
|
||||
|
@ -38,6 +39,7 @@ visit one of the following links:
|
|||
* [https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall/latest](https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall/latest)
|
||||
* [https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall-bash/latest](https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall-bash/latest)
|
||||
* [https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall-json/latest](https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall-json/latest)
|
||||
* [https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall-nix/latest](https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall-nix/latest)
|
||||
* [https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall-lsp-server/latest](https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall-lsp-server/latest)
|
||||
* [https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall-text/latest](https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall-text/latest)
|
||||
|
||||
|
|
|
@ -12,6 +12,7 @@ in
|
|||
dhall-bash
|
||||
dhall-json
|
||||
dhall-lsp-server
|
||||
dhall-nix
|
||||
dhall-text
|
||||
;
|
||||
|
||||
|
|
|
@ -1,4 +1,14 @@
|
|||
# `dhall-nix 1.1.6`
|
||||
# `dhall-nix`
|
||||
|
||||
For installation or development instructions, see:
|
||||
|
||||
* [`dhall-haskell` - `README`](https://github.com/dhall-lang/dhall-haskell/blob/master/README.md)
|
||||
|
||||
Full documentation here:
|
||||
|
||||
* [`dhall-nix` instructions](https://hackage.haskell.org/package/dhall-nix/docs/Dhall-Nix.html)
|
||||
|
||||
## Introduction
|
||||
|
||||
This `dhall-nix` package provides a Dhall to Nix compiler. You can use this
|
||||
compiler to program Nix using the Dhall language. This package targets people
|
||||
|
@ -9,12 +19,11 @@ who wish Nix had a type system.
|
|||
If you have Nix installed then you can build and run this package using:
|
||||
|
||||
```bash
|
||||
$ nix-build -A dhall-nix release.nix
|
||||
$ result/bin/dhall-to-nix <<< "λ(x : Bool) → x == False"
|
||||
$ dhall-to-nix <<< "λ(x : Bool) → x == False"
|
||||
x: x == false
|
||||
$ result/bin/dhall-to-nix <<< "{ foo = 1, bar = True }"
|
||||
$ dhall-to-nix <<< "{ foo = 1, bar = True }"
|
||||
{ bar = true; foo = 1; }
|
||||
$ result/bin/dhall-to-nix <<< "< Left = 2 | Right : Natural >"
|
||||
$ dhall-to-nix <<< "< Left = 2 | Right : Natural >"
|
||||
{ Left, Right }: Left 2
|
||||
```
|
||||
|
||||
|
@ -40,42 +49,5 @@ dhallToNix = code :
|
|||
import "${drv}";
|
||||
```
|
||||
|
||||
The above `dhallToNix` utility is now in `nixpkgs` so you can use `pkgs.dhallToNix`
|
||||
to transform Dhall expressions to Nix expressions
|
||||
|
||||
## Development status
|
||||
|
||||
[![Build Status](https://travis-ci.org/Gabriel439/Haskell-Dhall-Nix-Library.png)](https://travis-ci.org/Gabriel439/Haskell-Dhall-Nix-Library)
|
||||
|
||||
I don't expect this library to change unless:
|
||||
|
||||
* ... the Dhall language changes, which is possible but not very likely
|
||||
* ... there are bugs, but the test suite in [release.nix](./release.nix) should
|
||||
protect against this
|
||||
|
||||
## License (BSD 3-clause)
|
||||
|
||||
Copyright (c) 2017 Gabriel Gonzalez
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without modification,
|
||||
are permitted provided that the following conditions are met:
|
||||
* Redistributions of source code must retain the above copyright notice,
|
||||
this list of conditions and the following disclaimer.
|
||||
* Redistributions in binary form must reproduce the above copyright notice,
|
||||
this list of conditions and the following disclaimer in the documentation
|
||||
and/or other materials provided with the distribution.
|
||||
* Neither the name of Gabriel Gonzalez nor the names of other contributors
|
||||
may be used to endorse or promote products derived from this software
|
||||
without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
|
||||
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||||
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
The above `dhallToNix` utility is now in `nixpkgs` so you can use
|
||||
`pkgs.dhallToNix` to transform Dhall expressions to Nix expressions
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
(import ../nix/shared.nix {}).possibly-static.dhall-nix
|
|
@ -1,14 +0,0 @@
|
|||
{ mkDerivation, base, ghc-prim, hspec, hspec-discover, QuickCheck
|
||||
, stdenv
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "base-orphans";
|
||||
version = "0.8.1";
|
||||
sha256 = "442bd63aed102e753b2fed15df8ae19f35ee07af26590da63837c523b64a99db";
|
||||
libraryHaskellDepends = [ base ghc-prim ];
|
||||
testHaskellDepends = [ base hspec QuickCheck ];
|
||||
testToolDepends = [ hspec-discover ];
|
||||
homepage = "https://github.com/haskell-compat/base-orphans#readme";
|
||||
description = "Backwards-compatible orphan instances for base";
|
||||
license = stdenv.lib.licenses.mit;
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
{ mkDerivation, aeson, aeson-pretty, base, cborg, scientific
|
||||
, stdenv, text, unordered-containers, vector
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "cborg-json";
|
||||
version = "0.2.1.0";
|
||||
sha256 = "3fb6b54e6ddd322880689fb461f7911aca45b9758482c9f9949619c7d7b52006";
|
||||
libraryHaskellDepends = [
|
||||
aeson aeson-pretty base cborg scientific text unordered-containers
|
||||
vector
|
||||
];
|
||||
homepage = "https://github.com/well-typed/cborg";
|
||||
description = "A library for encoding JSON as CBOR";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
{ mkDerivation, base, StateVar, stdenv, transformers }:
|
||||
mkDerivation {
|
||||
pname = "contravariant";
|
||||
version = "1.5";
|
||||
sha256 = "6ef067b692ad69ffff294b953aa85f3ded459d4ae133c37896222a09280fc3c2";
|
||||
libraryHaskellDepends = [ base StateVar transformers ];
|
||||
homepage = "http://github.com/ekmett/contravariant/";
|
||||
description = "Contravariant functors";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}
|
|
@ -1,18 +0,0 @@
|
|||
{ mkDerivation, base, containers, data-fix, dhall, hnix
|
||||
, neat-interpolation, optparse-generic, stdenv, text
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "dhall-nix";
|
||||
version = "1.1.6";
|
||||
src = ./..;
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
libraryHaskellDepends = [
|
||||
base containers data-fix dhall hnix neat-interpolation text
|
||||
];
|
||||
executableHaskellDepends = [
|
||||
base dhall hnix optparse-generic text
|
||||
];
|
||||
description = "Dhall to Nix compiler";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}
|
|
@ -1,41 +0,0 @@
|
|||
{ mkDerivation, aeson, aeson-pretty, ansi-terminal, base
|
||||
, bytestring, case-insensitive, cborg, cborg-json, containers
|
||||
, contravariant, criterion, cryptonite, deepseq, Diff, directory
|
||||
, doctest, dotgen, exceptions, filepath, haskeline, http-client
|
||||
, http-client-tls, http-types, lens-family-core, megaparsec, memory
|
||||
, mockery, mtl, optparse-applicative, parsers, prettyprinter
|
||||
, prettyprinter-ansi-terminal, QuickCheck, quickcheck-instances
|
||||
, repline, scientific, serialise, stdenv, tasty, tasty-hunit
|
||||
, tasty-quickcheck, template-haskell, text, transformers
|
||||
, unordered-containers, uri-encode, vector
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "dhall";
|
||||
version = "1.21.0";
|
||||
sha256 = "9b22cc6f7694ef2f5d5d6fa66727044622b9905b2a9da0cdf376c75ad3b9df0e";
|
||||
revision = "1";
|
||||
editedCabalFile = "0ap1490jks9hmwf73vlrj7bsfrf4m5yvgqxx3ix57w23ia5gy662";
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
libraryHaskellDepends = [
|
||||
aeson aeson-pretty ansi-terminal base bytestring case-insensitive
|
||||
cborg cborg-json containers contravariant cryptonite Diff directory
|
||||
dotgen exceptions filepath haskeline http-client http-client-tls
|
||||
http-types lens-family-core megaparsec memory mtl
|
||||
optparse-applicative parsers prettyprinter
|
||||
prettyprinter-ansi-terminal repline scientific serialise
|
||||
template-haskell text transformers unordered-containers uri-encode
|
||||
vector
|
||||
];
|
||||
executableHaskellDepends = [ base ];
|
||||
testHaskellDepends = [
|
||||
base bytestring cborg containers deepseq directory doctest filepath
|
||||
mockery prettyprinter QuickCheck quickcheck-instances serialise
|
||||
tasty tasty-hunit tasty-quickcheck text transformers vector
|
||||
];
|
||||
benchmarkHaskellDepends = [
|
||||
base bytestring containers criterion directory serialise text
|
||||
];
|
||||
description = "A configuration language guaranteed to terminate";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}
|
|
@ -1,49 +0,0 @@
|
|||
{ rev # The Git revision of nixpkgs to fetch
|
||||
, sha256 # The SHA256 of the downloaded data
|
||||
, outputSha256 ? null # The SHA256 fixed-output hash
|
||||
, system ? builtins.currentSystem # This is overridable if necessary
|
||||
}:
|
||||
|
||||
if (0 <= builtins.compareVersions builtins.nixVersion "1.12")
|
||||
|
||||
# In Nix 1.12, we can just give a `sha256` to `builtins.fetchTarball`.
|
||||
then (
|
||||
builtins.fetchTarball {
|
||||
url = "https://github.com/NixOS/nixpkgs/archive/${rev}.tar.gz";
|
||||
sha256 = outputSha256;
|
||||
})
|
||||
|
||||
# This hack should at least work for Nix 1.11
|
||||
else (
|
||||
(rec {
|
||||
tarball = import <nix/fetchurl.nix> {
|
||||
url = "https://github.com/NixOS/nixpkgs/archive/${rev}.tar.gz";
|
||||
inherit sha256;
|
||||
};
|
||||
|
||||
builtin-paths = import <nix/config.nix>;
|
||||
|
||||
script = builtins.toFile "nixpkgs-unpacker" ''
|
||||
"$coreutils/mkdir" "$out"
|
||||
cd "$out"
|
||||
"$gzip" --decompress < "$tarball" | "$tar" -x --strip-components=1
|
||||
'';
|
||||
|
||||
nixpkgs = builtins.derivation ({
|
||||
name = "nixpkgs-${builtins.substring 0 6 rev}";
|
||||
|
||||
builder = builtins.storePath builtin-paths.shell;
|
||||
|
||||
args = [ script ];
|
||||
|
||||
inherit tarball system;
|
||||
|
||||
tar = builtins.storePath builtin-paths.tar;
|
||||
gzip = builtins.storePath builtin-paths.gzip;
|
||||
coreutils = builtins.storePath builtin-paths.coreutils;
|
||||
} // (if null == outputSha256 then { } else {
|
||||
outputHashMode = "recursive";
|
||||
outputHashAlgo = "sha256";
|
||||
outputHash = outputSha256;
|
||||
}));
|
||||
}).nixpkgs)
|
|
@ -1,25 +0,0 @@
|
|||
{ mkDerivation, base, bytestring, case-insensitive, containers
|
||||
, criterion, deepseq, hspec, hspec-expectations, mtl
|
||||
, parser-combinators, QuickCheck, scientific, stdenv, text
|
||||
, transformers, weigh
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "megaparsec";
|
||||
version = "7.0.4";
|
||||
sha256 = "325ba5cee8cdef91e351fb2db0b38562f8345b0bcdfed97045671357501de8c1";
|
||||
libraryHaskellDepends = [
|
||||
base bytestring case-insensitive containers deepseq mtl
|
||||
parser-combinators scientific text transformers
|
||||
];
|
||||
testHaskellDepends = [
|
||||
base bytestring case-insensitive containers hspec
|
||||
hspec-expectations mtl parser-combinators QuickCheck scientific
|
||||
text transformers
|
||||
];
|
||||
benchmarkHaskellDepends = [
|
||||
base containers criterion deepseq text weigh
|
||||
];
|
||||
homepage = "https://github.com/mrkkrp/megaparsec";
|
||||
description = "Monadic parser combinators";
|
||||
license = stdenv.lib.licenses.bsd2;
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
{ mkDerivation, base, base-prelude, HTF, megaparsec, stdenv
|
||||
, template-haskell, text
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "neat-interpolation";
|
||||
version = "0.3.2.4";
|
||||
sha256 = "de7370d938ffd8c7b52d732f4f088387ed8216cf9767d818e99b7ec827931752";
|
||||
libraryHaskellDepends = [
|
||||
base base-prelude megaparsec template-haskell text
|
||||
];
|
||||
testHaskellDepends = [ base-prelude HTF ];
|
||||
homepage = "https://github.com/nikita-volkov/neat-interpolation";
|
||||
description = "A quasiquoter for neat and simple multiline text interpolation";
|
||||
license = stdenv.lib.licenses.mit;
|
||||
}
|
|
@ -1,11 +0,0 @@
|
|||
{ mkDerivation, base, containers, haskeline, mtl, process, stdenv
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "repline";
|
||||
version = "0.2.0.0";
|
||||
sha256 = "ecc72092d0340b896ee6bf96bf6645694dbcd33361725a2cd28c5ab5d60c02de";
|
||||
libraryHaskellDepends = [ base containers haskeline mtl process ];
|
||||
homepage = "https://github.com/sdiehl/repline";
|
||||
description = "Haskeline wrapper for GHCi-like REPL interfaces";
|
||||
license = stdenv.lib.licenses.mit;
|
||||
}
|
|
@ -1,20 +0,0 @@
|
|||
{ mkDerivation, base, base-orphans, bifunctors, Cabal
|
||||
, cabal-doctest, comonad, containers, contravariant, distributive
|
||||
, doctest, hashable, stdenv, tagged, template-haskell, transformers
|
||||
, transformers-compat, unordered-containers
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "semigroupoids";
|
||||
version = "5.3.2";
|
||||
sha256 = "61a8213df437ee96a20b1c6dec8b5c573e4e0f338eb2061739a67f471d6b9d05";
|
||||
setupHaskellDepends = [ base Cabal cabal-doctest ];
|
||||
libraryHaskellDepends = [
|
||||
base base-orphans bifunctors comonad containers contravariant
|
||||
distributive hashable tagged template-haskell transformers
|
||||
transformers-compat unordered-containers
|
||||
];
|
||||
testHaskellDepends = [ base doctest ];
|
||||
homepage = "http://github.com/ekmett/semigroupoids";
|
||||
description = "Semigroupoids: Category sans id";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}
|
|
@ -1 +1 @@
|
|||
(import ./release.nix).shell
|
||||
(import ../nix/shared.nix {}).shell-dhall-nix
|
||||
|
|
|
@ -0,0 +1,26 @@
|
|||
{ mkDerivation, ansi-terminal, array, base, call-stack, clock
|
||||
, deepseq, directory, filepath, hspec-expectations, hspec-meta
|
||||
, HUnit, process, QuickCheck, quickcheck-io, random, setenv
|
||||
, silently, stdenv, stm, temporary, tf-random, transformers
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "hspec-core";
|
||||
version = "2.5.6";
|
||||
sha256 = "6f188cf2322d0bafca7a9a11feb80a66631bdf6911d236ed16e4f4a22c1e455e";
|
||||
libraryHaskellDepends = [
|
||||
ansi-terminal array base call-stack clock deepseq directory
|
||||
filepath hspec-expectations HUnit QuickCheck quickcheck-io random
|
||||
setenv stm tf-random transformers
|
||||
];
|
||||
testHaskellDepends = [
|
||||
ansi-terminal array base call-stack clock deepseq directory
|
||||
filepath hspec-expectations hspec-meta HUnit process QuickCheck
|
||||
quickcheck-io random setenv silently stm temporary tf-random
|
||||
transformers
|
||||
];
|
||||
testToolDepends = [ hspec-meta ];
|
||||
testTarget = "--test-option=--skip --test-option='Test.Hspec.Core.Runner.hspecResult runs specs in parallel'";
|
||||
homepage = "http://hspec.github.io/";
|
||||
description = "A Testing Framework for Haskell";
|
||||
license = stdenv.lib.licenses.mit;
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
{ mkDerivation, base, directory, filepath, hspec-meta, QuickCheck
|
||||
, stdenv
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "hspec-discover";
|
||||
version = "2.5.6";
|
||||
sha256 = "8c9689b51aa44b8278a5ff3059e0e8a609dce077df3781aad977c647a8c18a46";
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
libraryHaskellDepends = [ base directory filepath ];
|
||||
executableHaskellDepends = [ base directory filepath ];
|
||||
testHaskellDepends = [
|
||||
base directory filepath hspec-meta QuickCheck
|
||||
];
|
||||
testToolDepends = [ hspec-meta ];
|
||||
homepage = "http://hspec.github.io/";
|
||||
description = "Automatically discover and run Hspec tests";
|
||||
license = stdenv.lib.licenses.mit;
|
||||
}
|
|
@ -0,0 +1,14 @@
|
|||
{ mkDerivation, base, hspec-core, hspec-discover
|
||||
, hspec-expectations, QuickCheck, stdenv
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "hspec";
|
||||
version = "2.5.6";
|
||||
sha256 = "9ea6eb6ac6b49e1593e272707b760e125d3bdca2d8845d76e116c1ea8112da59";
|
||||
libraryHaskellDepends = [
|
||||
base hspec-core hspec-discover hspec-expectations QuickCheck
|
||||
];
|
||||
homepage = "http://hspec.github.io/";
|
||||
description = "A Testing Framework for Haskell";
|
||||
license = stdenv.lib.licenses.mit;
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
{ mkDerivation, base, bytestring, containers, deepseq, doctest
|
||||
, gauge, ghc-prim, Glob, hashable, hedgehog, mtl, QuickCheck
|
||||
, stdenv, stm, tasty, tasty-hedgehog, text, transformers
|
||||
, unordered-containers
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "relude";
|
||||
version = "0.5.0";
|
||||
sha256 = "75411b958121c813f4a0a2297542d4df85f141f52c1c081803fb48b73c691d81";
|
||||
libraryHaskellDepends = [
|
||||
base bytestring containers deepseq ghc-prim hashable mtl stm text
|
||||
transformers unordered-containers
|
||||
];
|
||||
testHaskellDepends = [
|
||||
base bytestring doctest Glob hedgehog QuickCheck tasty
|
||||
tasty-hedgehog text
|
||||
];
|
||||
benchmarkHaskellDepends = [
|
||||
base containers gauge unordered-containers
|
||||
];
|
||||
homepage = "https://github.com/kowainik/relude";
|
||||
description = "Custom prelude from Kowainik";
|
||||
license = stdenv.lib.licenses.mit;
|
||||
}
|
|
@ -136,7 +136,10 @@ let
|
|||
mass pkgsNew.haskell.lib.doCheck
|
||||
( [ "dhall-bash"
|
||||
"dhall-json"
|
||||
"dhall-lsp-server"
|
||||
# The test suite fails due to a relative reference
|
||||
# to ../dhall/dhall-lang/
|
||||
# "dhall-lsp-server"
|
||||
"dhall-nix"
|
||||
"dhall-text"
|
||||
]
|
||||
# Test suite doesn't work on GHCJS or GHC 7.10.3
|
||||
|
@ -185,6 +188,12 @@ let
|
|||
../dhall-lsp-server
|
||||
{ };
|
||||
|
||||
dhall-nix =
|
||||
haskellPackagesNew.callCabal2nix
|
||||
"dhall-nix"
|
||||
../dhall-nix
|
||||
{ };
|
||||
|
||||
dhall-text =
|
||||
haskellPackagesNew.callCabal2nix
|
||||
"dhall-text"
|
||||
|
@ -351,6 +360,16 @@ let
|
|||
pkgsNew.haskell.lib.doJailbreak
|
||||
haskellPackagesOld.neat-interpolation;
|
||||
|
||||
optparse-applicative =
|
||||
pkgsNew.haskell.lib.addBuildDepend
|
||||
haskellPackagesOld.optparse-applicative
|
||||
haskellPackagesNew.fail;
|
||||
|
||||
parser-combinators =
|
||||
pkgsNew.haskell.lib.addBuildDepend
|
||||
haskellPackagesOld.parser-combinators
|
||||
haskellPackagesNew.semigroups;
|
||||
|
||||
prettyprinter =
|
||||
pkgsNew.haskell.lib.addBuildDepend
|
||||
haskellPackagesOld.prettyprinter
|
||||
|
@ -361,6 +380,11 @@ let
|
|||
haskellPackagesOld.transformers-compat
|
||||
haskellPackagesNew.generic-deriving;
|
||||
|
||||
vector =
|
||||
pkgsNew.haskell.lib.addBuildDepend
|
||||
haskellPackagesOld.vector
|
||||
haskellPackagesNew.semigroups;
|
||||
|
||||
# For some reason, `Cabal-1.22.5` does not respect the
|
||||
# `buildable: False` directive for the executable section
|
||||
# even when configured with `-f -cli`. Fixing this requires
|
||||
|
@ -473,6 +497,9 @@ let
|
|||
dhall-lsp-server-static =
|
||||
pkgsNew.haskell.lib.statify haskellPackagesOld.dhall-lsp-server;
|
||||
|
||||
dhall-nix-static =
|
||||
pkgsNew.haskell.lib.statify haskellPackagesOld.dhall-nix;
|
||||
|
||||
dhall-text-static =
|
||||
pkgsNew.haskell.lib.statify haskellPackagesOld.dhall-text;
|
||||
};
|
||||
|
@ -531,32 +558,34 @@ in
|
|||
inherit trivial;
|
||||
|
||||
possibly-static = {
|
||||
dhall = makeStaticIfPossible "dhall" ;
|
||||
dhall-bash = makeStaticIfPossible "dhall-bash";
|
||||
dhall-json = makeStaticIfPossible "dhall-json";
|
||||
dhall = makeStaticIfPossible "dhall" ;
|
||||
dhall-bash = makeStaticIfPossible "dhall-bash" ;
|
||||
dhall-json = makeStaticIfPossible "dhall-json" ;
|
||||
dhall-lsp-server = makeStaticIfPossible "dhall-lsp-server";
|
||||
dhall-text = makeStaticIfPossible "dhall-text";
|
||||
dhall-nix = makeStaticIfPossible "dhall-nix" ;
|
||||
dhall-text = makeStaticIfPossible "dhall-text" ;
|
||||
};
|
||||
|
||||
tarball-dhall = makeTarball "dhall" ;
|
||||
tarball-dhall-bash = makeTarball "dhall-bash";
|
||||
tarball-dhall-json = makeTarball "dhall-json";
|
||||
tarball-dhall = makeTarball "dhall" ;
|
||||
tarball-dhall-bash = makeTarball "dhall-bash" ;
|
||||
tarball-dhall-json = makeTarball "dhall-json" ;
|
||||
tarball-dhall-lsp-server = makeTarball "dhall-lsp-server";
|
||||
tarball-dhall-text = makeTarball "dhall-text";
|
||||
tarball-dhall-nix = makeTarball "dhall-nix" ;
|
||||
tarball-dhall-text = makeTarball "dhall-text" ;
|
||||
|
||||
inherit (pkgs) tarball-website website;
|
||||
|
||||
inherit (pkgs.haskell.packages."${compiler}") dhall dhall-bash dhall-json dhall-lsp-server dhall-text dhall-try;
|
||||
inherit (pkgs.haskell.packages."${compiler}") dhall dhall-bash dhall-json dhall-lsp-server dhall-nix dhall-text dhall-try;
|
||||
|
||||
inherit (pkgs.releaseTools) aggregate;
|
||||
|
||||
shell-dhall = toShell pkgs.haskell.packages."${compiler}".dhall ;
|
||||
shell-dhall-bash = toShell pkgs.haskell.packages."${compiler}".dhall-bash;
|
||||
shell-dhall-json = toShell pkgs.haskell.packages."${compiler}".dhall-json;
|
||||
shell-dhall = toShell pkgs.haskell.packages."${compiler}".dhall ;
|
||||
shell-dhall-bash = toShell pkgs.haskell.packages."${compiler}".dhall-bash ;
|
||||
shell-dhall-json = toShell pkgs.haskell.packages."${compiler}".dhall-json ;
|
||||
shell-dhall-lsp-server = toShell pkgs.haskell.packages."${compiler}".dhall-lsp-server;
|
||||
|
||||
shell-dhall-text = toShell pkgs.haskell.packages."${compiler}".dhall-text;
|
||||
shell-dhall-try = toShell pkgs.haskell.packages."${compiler}".dhall-try ;
|
||||
shell-dhall-nix = toShell pkgs.haskell.packages."${compiler}".dhall-nix ;
|
||||
shell-dhall-text = toShell pkgs.haskell.packages."${compiler}".dhall-text ;
|
||||
shell-dhall-try = toShell pkgs.haskell.packages."${compiler}".dhall-try ;
|
||||
|
||||
test-dhall =
|
||||
pkgs.mkShell
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
{ mkDerivation, base, hspec, hspec-core, QuickCheck, stdenv, tasty
|
||||
, tasty-quickcheck, tasty-smallcheck
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "tasty-hspec";
|
||||
version = "1.1.5";
|
||||
sha256 = "db0cdcf71d534cfa32a1698f1eb6be03192af09a5dd63177b697bc4ca8b81154";
|
||||
revision = "3";
|
||||
editedCabalFile = "14198y7w9y4h36b6agzmsyappkhz4gmmi6nlzj137z5siwic7igm";
|
||||
libraryHaskellDepends = [
|
||||
base hspec hspec-core QuickCheck tasty tasty-quickcheck
|
||||
tasty-smallcheck
|
||||
];
|
||||
homepage = "https://github.com/mitchellwrosen/tasty-hspec";
|
||||
description = "Hspec support for the Tasty test framework";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}
|
22
release.nix
22
release.nix
|
@ -29,6 +29,10 @@ in
|
|||
shared_7_10_3.dhall
|
||||
shared_7_10_3.dhall-bash
|
||||
shared_7_10_3.dhall-json
|
||||
# `base-noprelude` depends on a specific version of `base`
|
||||
# shared_7_10_3.dhall-lsp-server
|
||||
# `hnix` depends on `lens-family-th`, which doesn't support GHC 7.10.3
|
||||
# shared_7_10_3.dhall-nix
|
||||
shared_7_10_3.dhall-text
|
||||
|
||||
# Verify that the packages build against the latest supported version
|
||||
|
@ -36,6 +40,10 @@ in
|
|||
shared_8_6_1.dhall
|
||||
shared_8_6_1.dhall-bash
|
||||
shared_8_6_1.dhall-json
|
||||
# `base-noprelude` depends on a specific version of `base`
|
||||
# shared_8_6_1.dhall-lsp-server
|
||||
# `hnix` depends on `unix-2.7.*` and doesn't work with GHC 8.6
|
||||
# shared_8_6_1.dhall-nix
|
||||
shared_8_6_1.dhall-text
|
||||
|
||||
# However, we still use GHC 8.4.3 to build the distributed tarballs
|
||||
|
@ -45,6 +53,8 @@ in
|
|||
shared.tarball-dhall
|
||||
shared.tarball-dhall-bash
|
||||
shared.tarball-dhall-json
|
||||
shared.tarball-dhall-lsp-server
|
||||
shared.tarball-dhall-nix
|
||||
shared.tarball-dhall-text
|
||||
|
||||
shared_ghcjs.tarball-website
|
||||
|
@ -64,11 +74,15 @@ in
|
|||
tarball-dhall
|
||||
tarball-dhall-bash
|
||||
tarball-dhall-json
|
||||
tarball-dhall-lsp-server
|
||||
tarball-dhall-nix
|
||||
tarball-dhall-text
|
||||
;
|
||||
|
||||
linux-dhall = shared_linux.possibly-static.dhall;
|
||||
linux-dhall-bash = shared_linux.possibly-static.dhall-bash;
|
||||
linux-dhall-json = shared_linux.possibly-static.dhall-json;
|
||||
linux-dhall-text = shared_linux.possibly-static.dhall-text;
|
||||
linux-dhall = shared_linux.possibly-static.dhall;
|
||||
linux-dhall-bash = shared_linux.possibly-static.dhall-bash;
|
||||
linux-dhall-json = shared_linux.possibly-static.dhall-json;
|
||||
linux-dhall-lsp-server = shared_linux.possibly-static.dhall-lsp-server;
|
||||
linux-dhall-nix = shared_linux.possibly-static.dhall-nix;
|
||||
linux-dhall-text = shared_linux.possibly-static.dhall-text;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue