jailbreak-cabal 1.3.6 → 1.4
raw patch · 3 files changed
+32/−5 lines, 3 filesdep ~Cabaldep ~Cabal-syntax
Dependency ranges changed: Cabal, Cabal-syntax
Files
- CHANGELOG.md +11/−0
- Main.hs +5/−0
- jailbreak-cabal.cabal +16/−5
+ CHANGELOG.md view
@@ -0,0 +1,11 @@+# Revision history for jailbreak-cabal++## 1.4++* jailbreak-cabal will now also relax version constraints on `build-tool-depends`.+ See [#20](https://github.com/NixOS/jailbreak-cabal/pull/20).++* Introduced new (automatic) cabal flag `Cabal-syntax` which should prevent+ Cabal's constraint solver from picking incompatible versions of `Cabal` and+ `Cabal-syntax` when using `cabal-install` to build jailbreak-cabal.+ See [#22](https://github.com/NixOS/jailbreak-cabal/pull/22).
Main.hs view
@@ -8,6 +8,7 @@ import Distribution.PackageDescription import Distribution.PackageDescription.Parsec import Distribution.PackageDescription.PrettyPrint+import Distribution.Types.ExeDependency import Distribution.Types.LegacyExeDependency import Distribution.Verbosity import Distribution.Version@@ -48,6 +49,7 @@ relaxBuildInfo :: BuildInfo -> BuildInfo relaxBuildInfo bi = bi { buildTools = map relax (buildTools bi)+ , buildToolDepends = map relax (buildToolDepends bi) , targetBuildDepends = map relax (targetBuildDepends bi) } @@ -56,6 +58,9 @@ instance DependencyType Dependency where relax (Dependency d _ deps) = Dependency d anyVersion deps++instance DependencyType ExeDependency where+ relax (ExeDependency d u _) = ExeDependency d u anyVersion instance DependencyType LegacyExeDependency where relax (LegacyExeDependency d _) = LegacyExeDependency d anyVersion
jailbreak-cabal.cabal view
@@ -1,5 +1,5 @@ name: jailbreak-cabal-version: 1.3.6+version: 1.4 synopsis: Strip version restrictions from Cabal files description: Strip version restrictions from build dependencies in Cabal files. category: Distribution@@ -12,15 +12,26 @@ license-file: LICENSE build-type: Simple cabal-version: >= 1.10-tested-with: GHC == 7.6.3, GHC == 7.8.4, GHC == 7.10.3, GHC == 8.0.2,- GHC == 8.2.2, GHC == 8.4.4, GHC == 8.6.5, GHC == 8.8.1+extra-source-files: CHANGELOG.md +flag Cabal-syntax+ description: Use the new Cabal-syntax package+ default: True+ manual: False+ source-repository head type: git location: https://github.com/NixOS/jailbreak-cabal executable jailbreak-cabal main-is: Main.hs- -- for Cabal < 3.7, the Cabal-syntax dummy package will be used- build-depends: base < 5, Cabal == 3.*, Cabal-syntax+ build-depends: base < 5++ -- This stunt is necessary to prevent the constraint solver from picking+ -- Cabal-syntax >= 3.7 and Cabal < 3.7 at the same time.+ if flag(Cabal-syntax)+ build-depends: Cabal >= 3.7, Cabal-syntax >= 3.7+ else+ build-depends: Cabal >= 3 && < 3.7, Cabal-syntax < 3.7+ default-language: Haskell2010