name: cabal-bounds
version: 0.9
cabal-version: >=1.9.2
build-type: Simple
license: BSD3
license-file: LICENSE
maintainer: daniel.trstenjak@gmail.com
synopsis: A command line program for managing the bounds/versions of the dependencies in a cabal file.
description:
A command line program for managing the bounds/versions of the dependencies in a cabal file.
.
'cabal-bounds' is able to do these things with the bounds of the dependencies in the cabal file:
.
* drop them
.
* update them by the library versions of the current cabal build
.
* update them by the library versions of a haskell platform release
.
* update them by the library versions specified by a file
.
* dump the libraries/dependencies and their lower bound versions from the cabal file(s) into a file
.
For further details please consult the <https://github.com/dan-t/cabal-bounds README>.
.
/Installation/
.
You have to ensure, that the 'Cabal' library of 'cabal-bounds' matches the one used by the 'cabal' binary:
.
> $ cabal --version
> cabal-install version 1.18.0.2
> using version 1.18.1 of the Cabal library
.
> $ cabal install --constraint="Cabal == 1.18.1" cabal-bounds
.
If you update the 'cabal' binary and the used 'Cabal' library changes, then you have to rebuild 'cabal-bounds'.
.
/Issues/
.
Perhaps the currently most annoying thing is, that you have to live with the reformating of your
'cabal' file done by the pretty printer of the 'Cabal' library.
.
To reformat your 'cabal' file without changing any bounds you can call 'cabal-bounds' with the name of
a section that isn't present in the 'cabal' file:
.
> $ cabal-bounds drop --executable=blub myproject.cabal
category: Utils, Development
author: Daniel Trstenjak
tested-with: GHC ==7.6.2 GHC ==7.6.3 GHC ==7.8.3
extra-source-files:
README.md
CHANGELOG
tests/inputFiles/original.cabal
tests/inputFiles/FromFile.hs
tests/inputFiles/.gitignore
tests/inputFiles/setup-config-build-env/setup-config.cabal
tests/inputFiles/setup-config-build-env/src/*.hs
tests/inputFiles/setup-config-build-env/src/CabalBounds/*.hs
tests/goldenFiles/*.cabal
tests/goldenFiles/*.hs
tests/outputFiles/.gitignore
source-repository head
type: git
location: https://github.com/dan-t/cabal-bounds
library
build-depends:
base >=3 && <5,
cmdargs >=0.10.5 && <0.11,
lens >=4.0.1 && <4.8,
strict >=0.3.2 && <0.4,
unordered-containers >=0.2.3.3 && <0.3,
transformers >=0.3.0.0 && <0.5,
either >=4.1.1 && <4.4,
cabal-lenses >=0.4.4 && <0.5,
Cabal >=1.18.0 && <1.23
exposed-modules:
CabalBounds.Args
CabalBounds.Main
CabalBounds.VersionComp
cpp-options: -DCABAL
hs-source-dirs: lib
other-modules:
Paths_cabal_bounds
CabalBounds.Bound
CabalBounds.Sections
CabalBounds.Dependencies
CabalBounds.Drop
CabalBounds.Update
CabalBounds.Dump
CabalBounds.HaskellPlatform
ghc-options: -W
executable cabal-bounds
build-depends:
base >=3 && <5,
cabal-bounds -any
main-is: Main.hs
hs-source-dirs: exe
ghc-options: -W
test-suite cabal-bounds-tests
build-depends:
base >=3 && <5,
tasty >=0.9.0.1 && <0.11,
tasty-golden >=2.2.0.2 && <2.3,
process >=1.1.0.2 && <1.3,
filepath >=1.3.0.1 && <1.4,
directory >=1.0.0.0 && <1.3,
Glob ==0.7.*,
cabal-bounds -any
type: exitcode-stdio-1.0
main-is: Main.hs
hs-source-dirs: tests
ghc-options: -W