@@ -1,92 +1,3 @@
1−diff -ru orig/datadir/resources/search.xml new/datadir/resources/search.xml
2−--- orig/datadir/resources/search.xml 2013-12-04 19:36:25.391122832 +0200
3−+++ new/datadir/resources/search.xml 2013-12-04 19:36:25.000000000 +0200
5− <Url type="text/html" template="http://haskell.org/hoogle/?hoogle={searchTerms}"/>
6− <Url type="application/x-suggestions+json" template="http://haskell.org/hoogle/?hoogle={searchTerms}&mode=suggest"/>
8−- <Image height="16" width="16" type="image/png">http://haskell.org/hoogle/datadir/resources/favicon.png</Image>
9−- <Image height="64" width="64" type="image/png">http://haskell.org/hoogle/datadir/resources/favicon64.png</Image>
10−+ <Image height="16" width="16" type="image/png">http://haskell.org/hoogle/res/favicon.png</Image>
11−+ <Image height="64" width="64" type="image/png">http://haskell.org/hoogle/res/favicon64.png</Image>
12− <Developer>Neil Mitchell</Developer>
13− <AdultContent>false</AdultContent>
14− <Language>en-us</Language>
15−diff -ru orig/hoogle.cabal new/hoogle.cabal
16−--- orig/hoogle.cabal 2013-12-04 19:36:25.395122833 +0200
17−+++ new/hoogle.cabal 2013-12-04 19:36:25.000000000 +0200
19− or by approximate type signature.
20− homepage: http://www.haskell.org/hoogle/
21− bug-reports: https://github.com/ndmitchell/hoogle/issues
23−+tested-with: GHC==7.6.3, GHC==7.4.2, GHC==7.2.2
24− extra-source-files: README.txt
28− Hoogle.Language.Haskell
41− test-suite hoogle-test
42−- main-is: HoogleSpec.hs
43−- hs-source-dirs: test
46− default-language: Haskell98
48− type: exitcode-stdio-1.0
53−- system-fileio >= 0.3.11,
54−- transformers >= 0.2,
57−- hspec-expectations >= 0.3
58−+ build-depends: base >= 3, process, directory, filepath
59−diff -ru orig/src/Console/All.hs new/src/Console/All.hs
60−--- orig/src/Console/All.hs 2013-12-04 19:36:25.387122831 +0200
61−+++ new/src/Console/All.hs 2013-12-04 19:36:25.000000000 +0200
63− action (Test files _) = do
65− fails <- fmap sum $ mapM (testFile action) files
69−- else "TEST FAILURES (" ++ show fails ++ ")"
70−+ if fails == 0 then putStrLn "Tests passed" else do
71−+ putStrLn $ "TEST FAILURES (" ++ show fails ++ ")"
74− action (Rank file) = rank file
76−diff -ru orig/src/Console/Test.hs new/src/Console/Test.hs
77−--- orig/src/Console/Test.hs 2013-12-04 19:36:25.387122831 +0200
78−+++ new/src/Console/Test.hs 2013-12-04 19:36:25.000000000 +0200
80− putStrLn "Converting testdata"
81− performGC -- clean up the databases
83−+ createDirectoryIfMissing True $ dat </> "databases"
84− src <- readFileUtf8 $ dat </> "testdata.txt"
85− let (errs, dbOld) = createDatabase Haskell [] src
86− unless (null errs) $ error $ unlines $ "Couldn't convert testdata database:" : map show errs
87−Only in orig/src: Data
88−Only in new/src/General: Heap.hs
89−Only in new/src/General: TypeMap.hs
90diff -ru orig/src/General/Web.hs new/src/General/Web.hs
1diff -ru orig/src/General/Web.hs new/src/General/Web.hs
91--- orig/src/General/Web.hs 2013-12-04 19:36:25.387122831 +0200
2--- orig/src/General/Web.hs 2013-12-04 19:36:25.387122831 +0200
92+++ new/src/General/Web.hs 2013-12-04 19:36:25.000000000 +0200
3+++ new/src/General/Web.hs 2013-12-04 19:36:25.000000000 +0200
@@ -123,85 +34,6 @@ diff -ru orig/src/General/Web.hs new/src/General/Web.hs
125 responseEvaluate :: Response -> IO ()
36 responseEvaluate :: Response -> IO ()
126−diff -ru orig/src/Hoogle/DataBase/TypeSearch/Graphs.hs new/src/Hoogle/DataBase/TypeSearch/Graphs.hs
127−--- orig/src/Hoogle/DataBase/TypeSearch/Graphs.hs 2013-12-04 19:36:25.387122831 +0200
128−+++ new/src/Hoogle/DataBase/TypeSearch/Graphs.hs 2013-12-04 19:36:25.000000000 +0200
131− import Hoogle.Store.All
132− import qualified Data.IntMap as IntMap
133−-import qualified Data.Heap as Heap
134−+import qualified General.Heap as Heap
137− import Control.Monad.Trans.State
138−diff -ru orig/src/Recipe/Download.hs new/src/Recipe/Download.hs
139−--- orig/src/Recipe/Download.hs 2013-12-04 19:36:25.383122832 +0200
140−+++ new/src/Recipe/Download.hs 2013-12-04 19:36:25.000000000 +0200
142− , (inputs <.> "txt", inputs <.> "tar.gz", "http://old.hackage.haskell.org/packages/archive/00-hoogle.tar.gz")
144− withDownloader opt downloader items
145−- extractTarball cabals
146−- extractTarball inputs
147−+ doesFileExist (cabals <.> "tar.gz") >>= \b -> when b $ extractTarball cabals
148−+ doesFileExist (inputs <.> "tar.gz") >>= \b -> when b $ extractTarball inputs
151− check :: String -> IO (Maybe FilePath)
152−diff -ru orig/src/Recipe/Keyword.hs new/src/Recipe/Keyword.hs
153−--- orig/src/Recipe/Keyword.hs 2013-12-04 19:36:25.383122832 +0200
154−+++ new/src/Recipe/Keyword.hs 2013-12-04 19:36:25.000000000 +0200
157− translate :: String -> String
158− translate src = unlines $ keywordPrefix ++ items
159−- where items = concatMap keywordFormat $ drop 1 $ partitions (~== "<a name>") $
160−+ where items = concatMap keywordFormat $ partitions (~== "<span class='mw-headline' id>") $
161− takeWhile (~/= "<div class=printfooter>") $ parseTags src
165− ["-- Hoogle documentation, generated by Hoogle"
166− ,"-- From http://www.haskell.org/haskellwiki/Keywords"
168− noUnderscore "_" = "_"
169− noUnderscore xs = map (\x -> if x == '_' then ' ' else x) xs
171−- name = words $ f $ fromAttrib "name" (head x)
172−+ name = words $ f $ fromAttrib "id" (head x)
173− docs = zipWith (++) ("-- | " : repeat "-- ") $
175−- map (docFormat . takeWhile (~/= "<div class=editsection>")) $
177− partitions isBlock x
179− g x | isAlpha x || x `elem` "_-:" = [x]
180− | otherwise = '.' : map toUpper (showHex (ord x) "")
183−- isBlock (TagOpen x _) = x `elem` ["p","pre"]
184−+ isBlock (TagOpen x _) = x `elem` ["p","pre","ul"]
187− f ('.':'2':'C':'_':xs) = ' ' : f xs
189− docFormat :: [Tag String] -> [String]
190− docFormat (TagOpen "pre" _:xs) = ["<pre>"] ++ map (drop n) ys ++ ["</pre>"]
192−- ys = lines $ innerText xs
193−+ ys = lines $ reverse $ dropWhile isSpace $ reverse $ innerText xs
194− n = minimum $ map (length . takeWhile isSpace) ys
196− docFormat (TagOpen "p" _:xs) = g 0 [] $ words $ f xs
199− h (TagText x) = unwords (lines x)
202−+docFormat (TagOpen "ul" _:xs) =
203−+ ["<ul><li>"] ++ intercalate ["</li><li>"] [docFormat (TagOpen "p" []:x) | x <- partitions (~== "<li>") xs] ++ ["</li></ul>"]
204−Only in new/src: Test.hs
205diff -ru orig/src/Web/Server.hs new/src/Web/Server.hs
37diff -ru orig/src/Web/Server.hs new/src/Web/Server.hs
206--- orig/src/Web/Server.hs 2013-12-04 19:36:25.379122832 +0200
38--- orig/src/Web/Server.hs 2013-12-04 19:36:25.379122832 +0200
207+++ new/src/Web/Server.hs 2013-12-04 19:36:25.000000000 +0200
39+++ new/src/Web/Server.hs 2013-12-04 19:36:25.000000000 +0200