-
Notifications
You must be signed in to change notification settings - Fork 697
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
ghc-boot is reinstallable #9064
Comments
I think the PR is #8501 and the commit that made the change is 09c90de that made the change. Reading through #8501 and #8489 I have the impression nobody here is sure about what should be non-reinstallable (or non-upgradeable? or whatever this means) Can GHC provide guidance and a source of truth for the list of relevant packages? |
I have the same impression as Andrea. @grayjay may be interested to opine on this issue. |
I agree that no one knew how to determine the list of non-upgradable packages. It looks like This comment has some notes that might be useful for finding the correct list of packages: #8712 (comment) |
Yes, please somebody who knows what they are doing take ownership of this and help! :-) |
My understanding is that the set of non-reinstallable packages should only includes those which cannot be rebuilt using a GHC installation and Hackage-published source distribution. There are a few reasons why this might be true:
This list should currently include:
|
@bgamari thanks a lot, that's very clear. Do you have an idea about non-reinstallable vs. non-upgradable? Is there a slightest difference between the two notions do you think? Our guess is that there may be none, see this thread. |
My sense is that currently there should be no difference between non-upgradeable and non-reinstallable packages. Moreover, at the moment I don't see why we would need such a distinction in the future. However, in the future (when |
In haskell#9064 we discovered that `ghc-boot` was added to the non-reinstallable package set due to haskell#8051 despite there being no reason why it can't be built from its source distribution. This revealed the fact that there is quite some ambiguity around what constitutes a non-reinstallable package. In haskell#9064 we worked out a hopefully-more-clear picture of non-reinstallability. Here we update the commentary to describe this concept and update the lists to reflect the new definition. Closes haskell#9064.
I have opened #9092 addressing this. |
In #9064 we discovered that `ghc-boot` was added to the non-reinstallable package set due to #8051 despite there being no reason why it can't be built from its source distribution. This revealed the fact that there is quite some ambiguity around what constitutes a non-reinstallable package. In #9064 we worked out a hopefully-more-clear picture of non-reinstallability. Here we update the commentary to describe this concept and update the lists to reflect the new definition. Closes #9064.
In #9064 we discovered that `ghc-boot` was added to the non-reinstallable package set due to #8051 despite there being no reason why it can't be built from its source distribution. This revealed the fact that there is quite some ambiguity around what constitutes a non-reinstallable package. In #9064 we worked out a hopefully-more-clear picture of non-reinstallability. Here we update the commentary to describe this concept and update the lists to reflect the new definition. Closes #9064. (cherry picked from commit 2e32a44) # Conflicts: # cabal-install/src/Distribution/Client/Dependency.hs
) cabal-install: Fix non-reinstallable package set In #9064 we discovered that `ghc-boot` was added to the non-reinstallable package set due to #8051 despite there being no reason why it can't be built from its source distribution. This revealed the fact that there is quite some ambiguity around what constitutes a non-reinstallable package. In #9064 we worked out a hopefully-more-clear picture of non-reinstallability. Here we update the commentary to describe this concept and update the lists to reflect the new definition. Closes #9064. (cherry picked from commit 2e32a44) # Conflicts: # cabal-install/src/Distribution/Client/Dependency.hs * Fix tests (cherry picked from commit 249374d) # Conflicts: # cabal-install/tests/UnitTests/Distribution/Solver/Modular/Solver.hs * Fix conflicts
#8489#8501 addedghc-boot
to thenonUpgradeablePackages
list but I don't see whyghc-boot
is not reinstallable. It is a normal dependency ofghc
likecontainers
(which is reinstallable).It would be good to document what a
nonUpgradeablePackage
is to avoid additional packages being added here in future.The text was updated successfully, but these errors were encountered: