File cabal-plan.cabal of Package cabal-plan
cabal-version: 2.2
name: cabal-plan
version: 0.7.3.0
x-revision: 2
synopsis: Library and utility for processing cabal's plan.json file
description: {
This package provides a library (see "Cabal.Plan") for decoding @plan.json@ files as
well as the simple tool @cabal-plan@ for extracting and pretty printing
the information contained in the @plan.json@ file.
.
@plan.json@ files are generated by [cabal](https://hackage.haskell.org/package/cabal-install)'s [Nix-style local builds](http://cabal.readthedocs.io/en/latest/nix-local-build.html) and contain detailed information about the build/install plan computed by the cabal solver.
.
== @cabal-plan@ utility
.
The @cabal-plan@ executable (enabled via the @exe@ cabal flag) provides various operations:
.
[info] Show basic report of dependency tree
[show] Dump 'PlanJson' data-structure via 'Show' instance
[tred] Show dependency tree as a graph
[diff] Diff two install plans
[list-bins] List all binaries
[list-bin] List single binary (useful for scripting, e.g. @cabal list-bin exe:cabal-plan@)
[fingerprint] Print SHA256 sums of dependencies' source tarballs and cabal files
[dot] Generate graph of dependencies in @.dot@ format
[topo] Print plan topologically sorted
[license-report] Generate license report for a component (only available when built with @license-report@ flag enabled); see <src/example/cabal-plan.md report example for cabal-plan> (<src/example/cabal-plan.html Pandoc rendered HTML>)
.
See also ["New things in Haskell package QA" Blogpost](https://oleg.fi/gists/posts/2018-01-08-haskell-package-qa.html) for a description of the @topo@ and @dot@ operations as well as how to enable tab-completion.
}
bug-reports: https://github.com/hvr/cabal-plan/issues
license: GPL-2.0-or-later
license-files: LICENSE.GPLv2 LICENSE.GPLv3
author: Herbert Valerio Riedel
maintainer: hvr@gnu.org
copyright: 2016 Herbert Valerio Riedel
category: Development
build-type: Simple
tested-with:
GHC==9.6.2,
GHC==9.4.5,
GHC==9.2.8,
GHC==9.0.2,
GHC==8.10.7,
GHC==8.8.4,
GHC==8.6.5,
GHC==8.4.4,
GHC==8.2.2
extra-source-files:
ChangeLog.md
example/cabal-plan.html
example/cabal-plan.md
----------------------------------------------------------------------------
flag exe
-- this automatic flag allows the cabal solver to disable the exe:cabal-plan component (& its build-deps);
-- IOW, emulate https://github.com/haskell/cabal/issues/4660
description: Enable @exe:cabal-plan@ component
flag license-report
description: Enable @license-report@ sub-command (only relevant when the @exe@ flag is active)
manual: True
default: False
flag _
description: Enable underlining of primary unit-ids
manual: True
default: False
library
default-language: Haskell2010
other-extensions: OverloadedStrings
GeneralizedNewtypeDeriving
RecordWildCards
exposed-modules: Cabal.Plan
build-depends: base ^>= 4.10.0.0 || ^>=4.11.0.0 || ^>=4.12.0.0 || ^>=4.13.0.0 || ^>=4.14.0.0 || ^>=4.15.0.0 || ^>=4.16.0.0 || ^>=4.17.0.0 || ^>=4.18.0.0
, aeson ^>= 2.0.0.0 || ^>=2.1.0.0 || ^>=2.2.0.0
, bytestring ^>= 0.10.8.0 || ^>=0.11.1.0
, containers ^>= 0.5.10 || ^>= 0.6.0.1
, text ^>= 1.2.3 || ^>=2.0.1
, directory ^>= 1.3.0.2
, filepath ^>= 1.4.1.2
, base16-bytestring ^>= 1.0.0.0
hs-source-dirs: src
ghc-options: -Wall
executable cabal-plan
default-language: Haskell2010
other-extensions: RecordWildCards
hs-source-dirs: src-exe
main-is: cabal-plan.hs
other-modules: Paths_cabal_plan LicenseReport Flag ProcessLazyByteString
other-modules: CText
autogen-modules: Paths_cabal_plan
ghc-options: -Wall
if flag(exe)
-- dependencies w/ inherited version ranges via 'cabal-plan' library
-- Note: exe is installable only with GHC-8.0+
build-depends: cabal-plan
, base
, text
, containers
, bytestring
, directory
-- dependencies which require version bounds
build-depends: mtl ^>= 2.2.2 || ^>=2.3.1
, async ^>= 2.2.2
, ansi-terminal ^>= 0.11 || ^>=1.0
, base-compat ^>= 0.13.0
, optics-core ^>= 0.4
, optparse-applicative ^>=0.17.0.0 || ^>=0.18.1.0
, parsec ^>= 3.1.13
, process ^>= 1.6.1.0
, semialign ^>= 1.3
, singleton-bool ^>= 0.1.5
, these ^>= 1.2
, topograph ^>= 1.0.0.2
, transformers ^>= 0.5.2.0 || ^>=0.6.1.0
, vector ^>= 0.12.0.1 || ^>=0.13.0.0
if flag(license-report)
build-depends: Cabal-syntax ^>=3.10.1.0
, cabal-install-parsers ^>=0.6
, tar ^>= 0.5.1.0
, zlib ^>= 0.6.2
, filepath ^>= 1.4.1.1
if flag(_)
cpp-options: -DUNDERLINE_SUPPORT
else
buildable: False
ghc-options: -Wall
source-repository head
type: git
location: https://github.com/hvr/cabal-plan