2017-01-15 3 views
1

J'ai essayé d'installer MissingPy, mais il a échoué aveccabale installer MissingPy ne peut pas trouver Data.HashTable

on the commandline: Warning: 
-XOverlappingInstances is deprecated: instead use per-instance pragmas  OVERLAPPING/OVERLAPPABLE/OVERLAPS 

src/Database/AnyDBM.hs:44:8: 
    Could not find module ‘Data.HashTable’ 
Perhaps you meant 
    Data.Hashable (needs flag -package-key  hashable->[email protected]_Evd2cSGupW8AJnHTBSvXg8) 
     Data.HashTable.IO (needs flag -package-key  hashtables->[email protected]_EuNk8qBpsPjAV2dYmonrJi) 
    Use -v to see a list of the files searched for. 
cabal: Error: some packages failed to install: 
anydbm-1.0.7 failed during the building phase. The exception was: 
ExitFailure 1 

Quelque part je trouve, Data.HashTable est dépréciée. Il y a toujours de la documentation sur le hackage mais il ne mentionne pas le nom du paquet. Comment installer Data.HashTable?

+0

Essayez d'abord d'installer ['hashtables'] (https://hackage.haskell.org/package/hashtables). – Alec

+0

@Alec On dirait que c'est installé pour moi; l'erreur dit, en partie, "Peut-être que vous vouliez dire ... Data.HashTable.IO (... hashtables-> 1.2.1.0 ...)". –

+1

Où se trouve la documentation sur Hackage? Il devrait être assez trivial de découvrir le bon nom de paquet et les bonnes limites de version. –

Répondre

1

Le Data.Hashtable package a été déprécié en base 4.6 et supprimé en base 4.7. base is a core library. Chaque version de ghc est un package avec une version spécifique de base, donc si vous souhaitez utiliser une ancienne version de base, vous devrez utiliser un ancien ghc. La dernière version de ghc fournie avec base 4.6 était ghc 7.6.

Si vous avez besoin d'une carte, il existe de meilleures alternatives: Data.Map et Data.IntMap sont des cartes. Data.HashMap est une carte non ordonnée immuable. Data.HashTable et Data.Judy sont des cartes non ordonnées mutables.