@hackage implicit-hie0.1.4.0
Auto generate hie-bios cradles & hie.yaml
Categories
License
BSD-3-Clause
Maintainer
avi.the.coder@gmail.com
Links
Versions
Installation
Tested Compilers
Dependencies (8)
- attoparsec >=0.13
- base >=4.7 && <5
- directory >=1.3
- filepath >=1.4
- filepattern >=0.1
- text >=1.2 Show all…
Dependents (3)
@hackage/implicit-hie-cradle, @hackage/ghcide, @hackage/haskell-debugger
Package Flags
executable
(on by default)
Build the gen-hie executable
implicit-hie
cd your-stack-or-cabal-package
stack install implicit-hie # or cabal install implicit-hie
gen-hie > hie.yaml
gen-hie should be run the root of a cabal or stack project.
The config type (cabal or stack) is determined by the existence of
dist-newstyle, .stack-work, stack.yaml, if none are found the default is cabal.
You can use --cabal, or --stack options to override config type.
Cabal Multi project example
❯ git clone https://github.com/well-typed/optics.git
❯ cd optics
❯ gen-hie
cradle:
cabal:
- path: "indexed-profunctors/src"
component: "lib:indexed-profunctors"
- path: "optics-th/src"
component: "lib:optics-th"
- path: "optics-th/tests"
component: "optics-th:test:optics-th-tests"
- path: "optics-vl/src"
component: "lib:optics-vl"
- path: "codegen/./Subtypes.hs"
component: "optics-codegen:exe:optics-codegen-subtypes"
- path: "optics-core/src"
component: "lib:optics-core"
- path: "optics-sop/src"
component: "lib:optics-sop"
- path: "optics-extra/src"
component: "lib:optics-extra"
- path: "template-haskell-optics/src"
component: "lib:template-haskell-optics"
- path: "optics/src"
component: "lib:optics"
- path: "optics/tests"
component: "optics:test:optics-tests"
- path: "metametapost/src/Cli.hs"
component: "metametapost:exe:metametapost-optics"
Features
All common Cabal and Stack configurations should just work. If you use more advanced features, the generated config may not be complete.
- multi component cabal, stack projects
- multiple executables under a single path
- multiple paths provided to
hs-source-dirs - lookup nested packages in
cabal.projectorstack.yaml - Handle Exe and Bench
other-modules - common stanzas
Work, Twitter
- Follow me on twitter @AviDessauer.