-
Notifications
You must be signed in to change notification settings - Fork 704
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Expose cabal-install lib, remove dogfooding, expose cabal-install-solver as own lib, enable HPC coverage reporting. #7358
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The workflow files are generated (see the github-actions
make target)
edit: this was supposed to be a comment on commit 59b2fe5
21cfe3f
to
c431c69
Compare
Could you squash the commits that do the same thing (eg. Setup.hs for cabal-install-solver → separate cabal-install-solver)? |
Sure i'll restructure these and rebase tomorrow 👍 |
* Add missing bootstrap plans * Add changelog entry for #7358
825fa86
to
db2a099
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Small stuff and questions
This would be massively useful to me. |
7bf6fb1
to
ceb3040
Compare
* Add Setup.hs for `cabal-install-solver` * Update `cabal.project` pkg path for `cabal-install-solver`
* Strips away dogfooding framework and zinza templates * Splits out tests into targets by as a function of running time * Delete TESTING.md as it no longer applies * Bump cabal-install.cabal to its dev template settings (base >= 4.10, Cabal 2.2) * Remove Paths_cabal_install (blocks HPC generation) * Add `long-tests` target to split out unit-tests and long-running DVCS tests.
* Changes needed for GenValidate and release.py to accommmodate new solver dependency * Bumps bootstrap plans to modern GHC versions * Update `validate.sh` and `release.py` to accommodate new solver dep. * Update `Makefile` targets
c5825c8
to
12daef5
Compare
@fgaz okay - comments should be addressed, and I'll merge on green, following up with a PR with updates to the release checklist. The release checklist in particular needs to detail how to update CI, which i'll add as well. I'll do one more pass to see if anything stands out, and then I think we're good to merge. |
3f7f428
to
0b8d3f8
Compare
0b8d3f8
to
7d1fd6b
Compare
As discussed in #7344 (comment), this PR does the following:
cabal-install
as a library, bumping thecabal-install
cabal version to 2.2, and removing the dogfooding framework surroundingcabal-install
to facilitate easier testing.cabal-install-solver
out to its own directory, and treats it as its own separate project. Addresses Exposecabal.project
in library component? #6090, Expose cabal.project.freeze parsing in the Cabal library #7224, and Split dependency solver into a library #3781cabal-install-solver-dsl
module into the test modules, and incorporate it into its own test target. Splits out unit tests from long-running tests. Also adds proper subcomponent coverage masking so we can finally generate baseline coverage reports forcabal-install
.TODO:
Fixes:
cabal.project
in library component? #6090Baseline report:
cabal-install-baseline-coverage.zip
CC @fgaz @phadej @ptkato