packages feed

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