check-pvp-0.0.3: check-pvp.cabal
Name: check-pvp
Version: 0.0.3
License: BSD3
License-File: LICENSE
Author: Henning Thielemann <haskell@henning-thielemann.de>
Maintainer: Henning Thielemann <haskell@henning-thielemann.de>
Homepage: http://www.haskell.org/haskellwiki/Import_modules_properly
Category: Distribution
Synopsis: Check whether module and package imports conform to the PVP
Description:
Check whether the version ranges used in the @Build-Depends@ field
matches the style of module imports
according to the Package Versioning Policy (PVP).
See <http://www.haskell.org/haskellwiki/Package_versioning_policy>.
The tool essentially looks for any dependency
like @containers >=0.5 && <0.7@
that allows the addition of identifiers to modules
within the version range.
Then it checks whether all module imports from @containers@
are protected against name clashes
that could be caused by addition of identifiers.
.
Related:
There are programs that check PVP compliance of exports:
.
* @cabal-bounds@: <http://hackage.haskell.org/package/cabal-bounds>
simplifies extending the version bounds in Build-Depends fields.
.
* @precis@: <http://hackage.haskell.org/package/precis>
.
* @apidiff@: <http://code.haskell.org/gtk2hs/tools/apidiff/>
Tested-With: GHC==7.4.2, GHC==8.4.4
Cabal-Version: >=1.6
Build-Type: Simple
Extra-Source-Files:
ReadMe.md
Source-Repository head
type: darcs
location: http://hub.darcs.net/thielema/check-pvp/
Source-Repository this
type: darcs
location: http://hub.darcs.net/thielema/check-pvp/
tag: 0.0.3
Flag advanced
description: Build executable based on haskell-package
default: True
Executable check-pvp
Build-Depends:
Cabal >=2.0 && <2.2,
haskell-src-exts >=1.21 && <1.22,
filepath >=1.1 && <1.5,
containers >=0.2 && <0.7,
explicit-exception >=0.1.4 && <0.2,
transformers >=0.2 && <0.6,
non-empty >=0.1.3 && <0.4,
utility-ht >=0.0.12 && <0.1,
base >=4 && <4.13
GHC-Options: -Wall
Hs-Source-Dirs: src
Main-Is: Basic.hs
Other-Modules:
CheckPVP
ModuleSet
Executable check-pvp-compiler
If flag(advanced)
Build-Depends:
haskell-packages >=0.6.2 && <0.7,
hse-cpp >=0.2 && <0.3,
Cabal >=2.0 && <2.2,
haskell-src-exts >=1.21 && <1.22,
tagged >=0.4.5 && <0.9,
filepath >=1.1 && <1.5,
containers >=0.2 && <0.7,
explicit-exception >=0.1.4 && <0.2,
transformers >=0.2 && <0.6,
non-empty >=0.1.3 && <0.4,
utility-ht >=0.0.12 && <0.1,
base >=4 && <4.13
Else
Buildable: False
GHC-Options: -Wall
Hs-Source-Dirs: src
Main-Is: Advanced.hs
Other-Modules:
CheckPVP
ModuleSet
Paths_check_pvp