[Poll] Would you stop using hpack (or even stack) if Cabal automatically exposed modules but allowed hiding them?
Edit: There is [a potential solution that could be implemented] (https://github.com/haskell/cabal/issues/7016#issuecomment-683446543) but sentiment seems to be it's a bad idea I think? At least one cabal dev said would be interesting to see at least but thinks you'll see it's a horrible idea while implementing, just see their comment here so I don't misquote
Edit: A user asked to add another poll option "It would be an improvement, but I already use cabal" but reddit does not allow modifying polls. If this is your choice please just upvote their comment. My apologies for missing that one!
I've seen this quite a few times over the years and recently saw Support automatic population of exposed-modules: #7016 was closed after some pretty good discussion.
I think the reasons against auto-exporting modules are good ones which are arguably technically correct, but end up missing the more important human piece:
Users are unhappy enough to:
- Switch to stack completely away from cabal
- Use hpack and it's yaml file format instead of cabal files
- teach newcomers to avoid cabal entirely and instead use stack
I think that if this feature were added almost all users from point 2 would switch back to cabal. Point 3 might be mitigated because users would start giving Cabal a chance again, which I suspect is better for marketing Haskell in the long run since it's the blessed build system.
Point 1 would likely be affected as well, since the reasons for choosing stack could focus more on technical merits rather than cabal not working how people expect.
I'm making this a poll to try and get some grasp on how true this might be and see if there's anything further to explore.
I guess in the end my argument is:
If it seems like automatic population of exposed-modules could vastly increase the usabilty of cabal and the number of people using it, make the change for that reason whether it's the best solution technically or not.
Posted Aug 29, 2020, 9:54 PM UTC · edited