Skip to content

Commit

Permalink
Post dhall-1.20.1 changes (#146)
Browse files Browse the repository at this point in the history
Various small improvements from @jneira
  • Loading branch information
jneira authored and ocharles committed Feb 12, 2019
1 parent cb68c37 commit 63643d4
Show file tree
Hide file tree
Showing 26 changed files with 271 additions and 245 deletions.
1 change: 1 addition & 0 deletions cabal.project
@@ -0,0 +1 @@
packages: .
38 changes: 16 additions & 22 deletions dhall-to-cabal.dhall
Expand Up @@ -90,7 +90,7 @@ in prelude.utils.GitHub-project
"Distribution"
-- build-type simple is needed to allow tools compatible with cabal < 2.2 build the package
, build-type =
[ types.BuildType.Simple {=} ] : Optional types.BuildType
Some ( types.BuildType.Simple {=} )
, maintainer =
"ollie@ocharles.org.uk"
, author =
Expand Down Expand Up @@ -208,13 +208,13 @@ in prelude.utils.GitHub-project
, hs-source-dirs =
[ "lib" ]
, other-extensions =
[ types.Extensions.ApplicativeDo True
, types.Extensions.GADTs True
, types.Extensions.GeneralizedNewtypeDeriving True
, types.Extensions.LambdaCase True
, types.Extensions.OverloadedStrings True
, types.Extensions.RecordWildCards True
, types.Extensions.TypeApplications True
[ types.Extension.ApplicativeDo True
, types.Extension.GADTs True
, types.Extension.GeneralizedNewtypeDeriving True
, types.Extension.LambdaCase True
, types.Extension.OverloadedStrings True
, types.Extension.RecordWildCards True
, types.Extension.TypeApplications True
]
, other-modules =
[ "DhallToCabal.ConfigTree"
Expand All @@ -223,8 +223,7 @@ in prelude.utils.GitHub-project
, "Paths_dhall_to_cabal"
]
, default-language =
[ types.Languages.Haskell2010 {=} ] : Optional
types.Language
Some ( types.Language.Haskell2010 {=} )
}
)
, executables =
Expand All @@ -251,14 +250,13 @@ in prelude.utils.GitHub-project
, main-is =
"Main.hs"
, other-extensions =
[ types.Extensions.NamedFieldPuns True ]
[ types.Extension.NamedFieldPuns True ]
, other-modules =
[ "Paths_dhall_to_cabal" ]
, autogen-modules =
[ "Paths_dhall_to_cabal" ]
, default-language =
[ types.Languages.Haskell2010 {=} ] : Optional
types.Language
Some ( types.Language.Haskell2010 {=} )
}
)
, prelude.unconditional.executable
Expand All @@ -280,14 +278,13 @@ in prelude.utils.GitHub-project
, main-is =
"Main.hs"
, other-extensions =
[ types.Extensions.NamedFieldPuns True ]
[ types.Extension.NamedFieldPuns True ]
, other-modules =
[ "Paths_dhall_to_cabal" ]
, autogen-modules =
[ "Paths_dhall_to_cabal" ]
, default-language =
[ types.Languages.Haskell2010 {=} ] : Optional
types.Language
Some ( types.Language.Haskell2010 {=} )
}
)
, prelude.unconditional.executable
Expand All @@ -307,8 +304,7 @@ in prelude.utils.GitHub-project
, hs-source-dirs =
[ "meta" ]
, default-language =
[ types.Languages.Haskell2010 {=} ] : Optional
types.Language
Some ( types.Language.Haskell2010 {=} )
, compiler-options =
prelude.defaults.CompilerOptions { GHC = warning-options }
, main-is =
Expand Down Expand Up @@ -342,8 +338,7 @@ in prelude.utils.GitHub-project
types.TestType.exitcode-stdio
{ main-is = "GoldenTests.hs" }
, default-language =
[ types.Languages.Haskell2010 {=} ] : Optional
types.Language
Some ( types.Language.Haskell2010 {=} )
}
)
, prelude.unconditional.test-suite
Expand All @@ -366,8 +361,7 @@ in prelude.utils.GitHub-project
types.TestType.exitcode-stdio
{ main-is = "Tests.hs" }
, default-language =
[ types.Languages.Haskell2010 {=} ] : Optional
types.Language
Some ( types.Language.Haskell2010 {=} )
, other-modules =
[ "DhallToCabal.Tests" ]
}
Expand Down
2 changes: 1 addition & 1 deletion dhall/prelude.dhall
Expand Up @@ -58,6 +58,6 @@
, or =
./SPDX/or.dhall
, noException =
[] : Optional ./types/SPDX/LicenseExceptionId.dhall
None (./types/SPDX/LicenseExceptionId.dhall)
}
}
3 changes: 1 addition & 2 deletions dhall/unconditional.dhall
Expand Up @@ -22,8 +22,7 @@ let library
: (library : ./types/Library.dhall)
Optional (./types/Guarded.dhall ./types/Library.dhall)
= λ(library : ./types/Library.dhall)
[ unconditional ./types/Library.dhall library
] : Optional (./types/Guarded.dhall ./types/Library.dhall)
Some (unconditional ./types/Library.dhall library)

let test-suite
: (name : Text)
Expand Down
6 changes: 2 additions & 4 deletions dhall/utils/GitHub-project.dhall
Expand Up @@ -3,7 +3,6 @@ let GitHubProject : Type = { owner : Text, repo : Text }
let gitHubProject =
λ(github : GitHubProject)
let gitHubRoot = "https://github.com/${github.owner}/${github.repo}"

in ../defaults/Package.dhall
{ name =
github.repo
Expand All @@ -14,10 +13,9 @@ let gitHubProject =
, source-repos =
[ ../defaults/SourceRepo.dhall
{ location =
[ gitHubRoot ] : Optional Text
Some gitHubRoot
, type =
[ (../types/RepoType.dhall).Git {=}
] : Optional ../types/RepoType.dhall
Some ((../types/RepoType.dhall).Git {=})
}
]
}
Expand Down
13 changes: 7 additions & 6 deletions dhall/utils/majorVersions.dhall
Expand Up @@ -31,14 +31,15 @@ let majorVersions
r
(Optional VersionRange)
( λ(r : VersionRange)
[ Versions.unionVersionRanges
(Versions.majorBoundVersion v)
r
] : Optional VersionRange
Some
( Versions.unionVersionRanges
(Versions.majorBoundVersion v)
r
)
)
([ Versions.majorBoundVersion v ] : Optional VersionRange)
(Some ( Versions.majorBoundVersion v))
)
([] : Optional VersionRange)
(None VersionRange)
)
VersionRange
(λ(a : VersionRange) a)
Expand Down
11 changes: 5 additions & 6 deletions exe/Main.hs
Expand Up @@ -814,11 +814,10 @@ printDefault PrintDefaultOptions {..} = do

where
withPreludeImport =
Expr.Let (Expr.Binding "prelude" Nothing ( Expr.Embed ( preludeLocation dhallFromGitHub ) ) :| [])
Expr.Let (Expr.Binding "prelude" Nothing
( Expr.Embed ( preludeLocation dhallFromGitHub ) ) :| [])

expr :: Expr.Expr Dhall.Parser.Src Dhall.Import
expr =
getDefault
( typesLocation dhallFromGitHub )
resolvePreludeVar
defaultToPrint
expr = getDefault
( typesLocation dhallFromGitHub )
resolvePreludeVar defaultToPrint
1 change: 1 addition & 0 deletions golden-tests/GoldenTests.hs
Expand Up @@ -122,6 +122,7 @@ goldenTests = do
. cabalToDhall dhallLocation
)
)

( \( LazyText.unpack -> exp ) ( LazyText.unpack -> act ) -> do
let
gDiff =
Expand Down
2 changes: 1 addition & 1 deletion golden-tests/cabal-to-dhall/SPDX.dhall
Expand Up @@ -32,4 +32,4 @@ in prelude.defaults.Package
)
)
)
}
}
2 changes: 1 addition & 1 deletion golden-tests/cabal-to-dhall/conditional-dependencies.dhall
Expand Up @@ -62,4 +62,4 @@ in prelude.defaults.Package
)
, license =
types.License.Unspecified {=}
}
}
2 changes: 1 addition & 1 deletion golden-tests/cabal-to-dhall/gh-36.dhall
Expand Up @@ -173,4 +173,4 @@ in prelude.defaults.Package

else prelude.defaults.Library
)
}
}
2 changes: 1 addition & 1 deletion golden-tests/cabal-to-dhall/mixins-no-signatures.dhall
Expand Up @@ -51,4 +51,4 @@ in prelude.defaults.Package
]
}
)
}
}
2 changes: 1 addition & 1 deletion golden-tests/cabal-to-dhall/otheros.dhall
Expand Up @@ -19,4 +19,4 @@ in prelude.defaults.Package

else prelude.defaults.Library { exposed-modules = [ "A" ] }
)
}
}
2 changes: 1 addition & 1 deletion golden-tests/cabal-to-dhall/sourcerepo-defaults.dhall
Expand Up @@ -23,4 +23,4 @@ in prelude.defaults.Package
types.RepoKind.RepoThis {=}
}
]
}
}
4 changes: 2 additions & 2 deletions golden-tests/dhall-to-cabal/SPDX.dhall
@@ -1,5 +1,5 @@
let prelude = ../../dhall/prelude.dhall
in let types = ../../dhall/types.dhall
let prelude = ../../dhall/prelude.dhall
let types = ../../dhall/types.dhall
in prelude.defaults.Package
// { name = "foo"
, version = prelude.v "0"
Expand Down
4 changes: 2 additions & 2 deletions golden-tests/dhall-to-cabal/allrightsreserved-2.0.dhall
@@ -1,5 +1,5 @@
let prelude = ../../dhall/prelude.dhall
in let types = ../../dhall/types.dhall
let prelude = ../../dhall/prelude.dhall
let types = ../../dhall/types.dhall
in prelude.defaults.Package
// { name = "foo"
, version = prelude.v "0"
Expand Down
4 changes: 2 additions & 2 deletions golden-tests/dhall-to-cabal/allrightsreserved-2.2.dhall
@@ -1,5 +1,5 @@
let prelude = ../../dhall/prelude.dhall
in let types = ../../dhall/types.dhall
let prelude = ../../dhall/prelude.dhall
let types = ../../dhall/types.dhall
in prelude.defaults.Package
// { name = "foo"
, version = prelude.v "0"
Expand Down
98 changes: 58 additions & 40 deletions golden-tests/dhall-to-cabal/compiler-options-order.dhall
@@ -1,44 +1,62 @@
let prelude = ../../dhall/prelude.dhall
let prelude = ../../dhall/prelude.dhall

in let types = ../../dhall/types.dhall
let types = ../../dhall/types.dhall

in let v = prelude.v
let v = prelude.v

in let ghcImpl =
\ ( cfg : types.Config ) -> \ ( ver : types.VersionRange )
-> cfg.impl ( types.Compiler.GHC {=} ) ver
let ghcImpl =
λ(cfg : types.Config)
λ(ver : types.VersionRange)
cfg.impl (types.Compiler.GHC {=}) ver

in ../../dhall/defaults/Package.dhall
// { name =
"Name"
, version =
../../dhall/Version/v.dhall "1"
, library =
[ \ ( config : types.Config )
-> prelude.defaults.Library
// { exposed-modules = [ "Foo", "Bar" ]
, compiler-options =
prelude.defaults.CompilerOptions
// { GHC = ["A"]
# ( if ghcImpl config (prelude.orLaterVersion (v "8.2"))
then ["B"]
else [] : List Text
)
# ( if ghcImpl config (prelude.orLaterVersion (v "8.4"))
then ["C"]
else [] : List Text
)
# ( if ghcImpl config (prelude.orLaterVersion (v "8.2"))
then ["D"]
else [] : List Text
)
# ( if ghcImpl config (prelude.orLaterVersion (v "8.4"))
then ["E"]
else [] : List Text
)
# ["F"]
}
}
] : Optional ( types.Config -> types.Library )

}
in ../../dhall/defaults/Package.dhall
{ name =
"Name"
, version =
../../dhall/Version/v.dhall "1"
, library =
[ λ(config : types.Config)
prelude.defaults.Library
{ exposed-modules =
[ "Foo", "Bar" ]
, compiler-options =
prelude.defaults.CompilerOptions
{ GHC =
[ "A" ]
# ( if ghcImpl
config
(prelude.orLaterVersion (v "8.2"))

then [ "B" ]

else [] : List Text
)
# ( if ghcImpl
config
(prelude.orLaterVersion (v "8.4"))

then [ "C" ]

else [] : List Text
)
# ( if ghcImpl
config
(prelude.orLaterVersion (v "8.2"))

then [ "D" ]

else [] : List Text
)
# ( if ghcImpl
config
(prelude.orLaterVersion (v "8.4"))

then [ "E" ]

else [] : List Text
)
# [ "F" ]
}
}
] : Optional (types.Config types.Library)
}

0 comments on commit 63643d4

Please sign in to comment.