Split up CLI into packages
- Dominant language
- Haskell
- Stars
- 322
- Forks
- 86
- PR merge metrics
- No merged PRs in 30d
Description
Currently, CLI handling is done exclusively in Main.
Library authors which depend on happy packages would however benefit from a model where the CLI handling is also distributed to the packages which use the CLI flags.
An option would be to create an additional `-cli` package for each currently existing happy package. For example, the `happy-frontend-cli` package would then contain the CLI flags and the CLI handling that is relevant for the `happy-frontend` package.
All logic which is currently held in Main would be split into these `-cli` packages, and Main would just stitch these separate CLI stubs together in a sensible way.
This would enable library authors to exchange happy package components without having to copy and adapt the whole Main file.
I'd be happy to work on an implementation if desired.
Contributor guide
Assessment
This issue has not been assessed yet.