implicit-hie: Auto generate hie-bios cradles & hie.yaml

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain] [Publish]

Auto generate a stack or cabal multi component hie.yaml file


[Skip to Readme]

Properties

Versions 0.1.0.0, 0.1.1.0, 0.1.2.0, 0.1.2.0, 0.1.2.1, 0.1.2.2, 0.1.2.3, 0.1.2.4, 0.1.2.5, 0.1.2.6, 0.1.2.7, 0.1.3.0, 0.1.4.0
Change log ChangeLog.md
Dependencies attoparsec (>=0.13), base (>=4.7 && <5), directory (>=1.3), filepath (>=1.4), filepattern (>=0.1), implicit-hie, text (>=1.2), transformers (>=0.5), yaml (>=0.5) [details]
License BSD-3-Clause
Copyright 2020
Author Avi Dessauer
Maintainer avi.the.coder@gmail.com
Category Development, Tools, Hie, HLS
Home page https://github.com/Avi-D-coder/implicit-hie#readme
Bug tracker https://github.com/Avi-D-coder/implicit-hie/issues
Source repo head: git clone https://github.com/Avi-D-coder/implicit-hie
Uploaded by Avi_Dessauer at 2020-10-15T18:46:19Z

Modules

[Index] [Quick Jump]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


Readme for implicit-hie-0.1.2.0

[back to package description]

implicit-hie

cd your-stack-or-cabal-package
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.

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.

Work, Twitter