cabal-plan: Library and utility for processing cabal's plan.json file

[ development, gpl, library ] [ Propose Tags ]

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's Nix-style local builds 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 report example for cabal-plan (Pandoc rendered HTML)

See also "New things in Haskell package QA" Blogpost for a description of the topo and dot operations as well as how to enable tab-completion.

Modules

[Index] [Quick Jump]

Flags

Manual Flags

NameDescriptionDefault
license-report

Enable license-report sub-command (only relevant when the exe flag is active)

Disabled
_

Enable underlining of primary unit-ids

Disabled
Automatic Flags
NameDescriptionDefault
exe

Enable exe:cabal-plan component

Enabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1.0.0, 0.1.1.0, 0.2.0.0, 0.3.0.0, 0.4.0.0, 0.5.0.0, 0.6.0.0, 0.6.1.0, 0.6.2.0, 0.7.0.0, 0.7.1.0, 0.7.2.0, 0.7.2.1, 0.7.2.2, 0.7.2.3, 0.7.3.0
Change log ChangeLog.md
Dependencies aeson (>=2.0.0.0 && <2.1 || >=2.1.0.0 && <2.2), ansi-terminal (>=0.11 && <0.12), async (>=2.2.2 && <2.3), base (>=4.10.0.0 && <4.11 || >=4.11.0.0 && <4.12 || >=4.12.0.0 && <4.13 || >=4.13.0.0 && <4.14 || >=4.14.0.0 && <4.15 || >=4.15.0.0 && <4.16 || >=4.16.0.0 && <4.17 || >=4.17.0.0 && <4.18), base-compat (>=0.12 && <0.13), base16-bytestring (>=1.0.0.0 && <1.1), bytestring (>=0.10.8.0 && <0.11 || >=0.11.1.0 && <0.12), cabal-plan, containers (>=0.5.10 && <0.6 || >=0.6.0.1 && <0.7), directory (>=1.3.0.2 && <1.4), filepath (>=1.4.1.2 && <1.5), mtl (>=2.2.2 && <2.3), optics-core (>=0.4 && <0.5), optparse-applicative (>=0.17.0.0 && <0.18), parsec (>=3.1.13 && <3.2), process (>=1.6.1.0 && <1.7), semialign (>=1.2 && <1.3), singleton-bool (>=0.1.5 && <0.2), text (>=1.2.3 && <1.3 || >=2.0.1 && <2.1), these (>=1.1 && <1.2), topograph (>=1.0.0.2 && <1.1), transformers (>=0.5.2.0 && <0.6), vector (>=0.12.0.1 && <0.13 || >=0.13.0.0 && <0.14) [details]
License GPL-2.0-or-later[multiple license files]
Copyright 2016 Herbert Valerio Riedel
Author Herbert Valerio Riedel
Maintainer hvr@gnu.org
Category Development
Bug tracker https://github.com/hvr/cabal-plan/issues
Source repo head: git clone https://github.com/hvr/cabal-plan
Uploaded by phadej at 2022-09-23T10:21:08Z
Distributions Arch:0.7.2.1, LTSHaskell:0.7.3.0, NixOS:0.7.3.0, openSUSE:0.7.3.0
Reverse Dependencies 1 direct, 6 indirect [details]
Executables cabal-plan
Downloads 15851 total (152 in the last 30 days)
Rating 2.5 (votes: 3) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]