Export all internal functions in Distribution.Simple.Utils in .Internal module
- Dominant language
- Haskell
- Stars
- 1.7k
- Forks
- 750
- Avg merge
- 4d 3h
- Merged PRs (30d)
- 28
Description
Trying to work around #5756 in my Cabal hook, I can't easily make a
```haskell
noticeSay :: Verbosity -> Text -> IO ()
```
using `say` because lots of functions used inside `notice` aren't exported.
Now I have to copy-paste many functions from that module in order to do it; this is wasting a lot of time to get simple things done.
Cabal should export all the useful functions that aren't public API in an `.Internal` module, so that people can use that to work around problems until things get fixed upstream.
Contributor guide
Research direction
Start by reading Distribution.Simple.Utils and the context from issue #5756. Determine which internal functions are intended for an .Internal module and how exposing them would affect Cabal's API boundaries. Done means the requested internal exports are defined with a clear scope and the relevant behavior is covered by the project's tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- haskell
- Domain
- build-system, tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100