[GHC] #10714: After implementing new installed package ID (hash of sdist), get rid of package keys

GHC ghc-devs at haskell.org
Wed Aug 26 00:52:05 UTC 2015


#10714: After implementing new installed package ID (hash of sdist), get rid of
package keys
-------------------------------------+-------------------------------------
        Reporter:  ezyang            |                   Owner:  ezyang
            Type:  bug               |                  Status:  new
        Priority:  normal            |               Milestone:
       Component:  Package system    |                 Version:  7.10.2
      Resolution:                    |                Keywords:  backpack
Operating System:  Unknown/Multiple  |            Architecture:
                                     |  Unknown/Multiple
 Type of failure:  None/Unknown      |               Test Case:
      Blocked By:                    |                Blocking:
 Related Tickets:                    |  Differential Revisions:
-------------------------------------+-------------------------------------

Comment (by ezyang):

 Here is a complication: what should shadowing do in this world?

 Of course, within a package database, shadowing cannot occur, because
 there can only ever be one entry per IPID, whereas shadowing occurred when
 there were two entries with differing IPIDs but identical package keys.

 However, there is now a thorny problem of what should be done if the user
 and global package database both have an entry for the same IPID!
 Previously, GHC assumed that the ABIs are the same, and thus they are
 interchangeable; however, it is possible for this invariant to be broken.

 What it seems GHC should do is check the ABI of the package in question,
 and if they match filter out as before. However, if the ABIs do not match,
 we can either (1) complain loudly, or (2) shadow all prior references to
 the IPID so that we can safely use the newer IPID. The second possibility
 seems like a lot of complication for a case that really shouldn't happen,
 so let's not do it.

--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/10714#comment:2>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list