Generating PackageInfo_* files for dependencies to retire most usages of CPP.
Open
type: enhancement
type: RFC
- Dominant language
- Haskell
- Stars
- 1.7k
- Forks
- 750
- Avg merge
- 4d 3h
- Merged PRs (30d)
- 28
Description
In order to avoid using CPP and messing with source tooling like formatters and linters, I'd like cabal to provide me with `PackageInfo_*` modules for my dependencies, so that I may use Template Haskell in order to provide different code snippets based on the version of my dependencies.
Basically, a Haskell rendition of `cabal_macros.h`, which could perhaps remain useful for use with FFI, but its CPP would not pollute Haskell source code anymore.
Contributor guide
Assessment
This issue has not been assessed yet.