Skip to content

Fix #5974 If new Cabal copy is available, use it#6451

Merged
mpilgrem merged 2 commits into
masterfrom
fix5974
Jan 25, 2024
Merged

Fix #5974 If new Cabal copy is available, use it#6451
mpilgrem merged 2 commits into
masterfrom
fix5974

Conversation

@mpilgrem
Copy link
Copy Markdown
Member

Cabal's copy used to not allow components to be specified, and Stack had to build all executable components at least once for copy not to fail. This pull request continues to do that only if the Cabal version is sufficiently old (before Cabal-2.0.0.0). Otherwise, it copies only the library, sub-library, foreign library and executable components that were to be built. As a consquence, it does not need to build all executable components at least once for the Cabal version to be satisfied.

The tutorial part of the online guide to Stack is updated accordingly.

  • Any changes that could be relevant to users have been recorded in ChangeLog.md.
  • The documentation has been updated, if necessary

Please also shortly describe how you tested your change. Bonus points for added tests! Tested locally, by reference to output of internal-libraries integration test.

@mpilgrem
Copy link
Copy Markdown
Member Author

@theobat, if you could run your eye over this, I would be grateful. if what I have added works, then once Stack drops support for Cabal < 2.2, the historical complexity and the complexity of taking different approaches with different Cabal versions will fall away.

@theobat
Copy link
Copy Markdown
Contributor

theobat commented Jan 20, 2024

@mpilgrem Yes that seems good.

@mpilgrem mpilgrem mentioned this pull request Jan 20, 2024
6 tasks
Also updates the online guide to assume the use of new Cabal copy.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants