-
Notifications
You must be signed in to change notification settings - Fork 841
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
Fix #5639 Backport efficient ghc-pkg unregister #6222
Conversation
01cea93
to
73825c9
Compare
I think the current version of this pull request works as intended. On Windows 11 and Windows Terminal:
On Ubuntu (on WSL2) and Windows Terminal:
|
Rebased on revised #6222. |
9359b5c
to
a7c1106
Compare
Thanks @mpilgrem 🙏 - sounds great and really exciting |
@juhp, on GitHub's web interface, if you click on the 'Checks' tab in the menu bar near the top of this PR page, and then the '> Integration tests' check in the side bar on the left of the resulting page, then at the bottom of the resulting screen you should have populated 'Artifacts Produced during runtime' - those are archive files with the bindists that Stack would publish if they were final versions. So, under 'Linux' (for example), is |
f0e327e
to
339b082
Compare
I am currently testing this for Stackage Nightly. In this first run, unregistering seemed to go fairly quickly - though I didn't watch it happen. |
So I think it fine to merge from my pov at least, if you don't have any reservations of course |
The difference in speed is like day and night - if one closes one's eyes too long, one can easily miss it now. |
Now, I am curious though, do you plan to release 2.13 any time soon? |
I was going to start the process this weekend. |
Wow thanks, that's great! - dunno if it should be 3.1 even? (one reason for that could be the change from Cabal to ghc versions under |
I was saving Stack 3.1 for when Stack supported public sublibraries ... |
This pull request builds on top of pull request #6226.
Please also shortly describe how you tested your change. Bonus points for added tests! Testing locally. Although this appears to work for GHC 9.4.6, it currently fails with early versions of GHC, such as GHC 8.0.1.
On Windows 11 and Windows Terminal:
The test is a simple two-package project, where
packageB
depends onpackageA
, and the version ofpackageA
is changed, prompting both to be unregistered.The
S-6374
errors before GHC 9.0.2 are likely a manifestation of this GHC bug: https://gitlab.haskell.org/ghc/ghc/-/issues/19452. The workaround was to delete thesetup-exec-cache
andsetup-exe-src
in the Stack root.'Warning' refers to output like:
The
inappropriate type (not enough bytes)
message can be traced, I think, toGHC.Unit.Database.decodeFromFile
, used byreadPackageDbForGhcPkg
.I also think the underlying problem is that
Distribution.Types.InstalledPackageInfo.InstalledPackageInfo
from theCabal
(orCabal-syntax
) package has changed from one version ofCabal
to another. Extracts: