Skip to content

Instantly share code, notes, and snippets.

@darthdeus
Created May 24, 2014 12:38
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save darthdeus/f7952194e16557891101 to your computer and use it in GitHub Desktop.
Save darthdeus/f7952194e16557891101 to your computer and use it in GitHub Desktop.
$ ./dist/build/spec/spec master@fcc3b46
cabal-install version 1.20.0.2
using version 1.20.0.0 of the Cabal library
ghc-mod was built with Cabal version 1.18.1.3
The Glorious Glasgow Haskell Compilation System, version 7.8.2
Root directory: /Users/darth/projects/ghc-mod
Current directory: /Users/darth/projects/ghc-mod
Cabal file: /Users/darth/projects/ghc-mod/ghc-mod.cabal
GHC options: -global-package-db -no-user-package-db -package-db /Users/darth/projects/ghc-mod/.cabal-sandbox/x86_64-osx-ghc-7.8.2-packages.conf.d -XHaskell2010 -optP-include -optP/Users/darth/projects/ghc-mod/dist/build/autogen/cabal_macros.h
Include directories: /Users/darth/projects/ghc-mod /Users/darth/projects/ghc-mod/dist/build /Users/darth/projects/ghc-mod/dist/build/autogen /Users/darth/projects/ghc-mod/src /Users/darth/projects/ghc-mod/test
Dependent packages: Cabal-1.18.1.3, base-4.7.0.0, containers-0.5.5.1, deepseq-1.3.0.2, directory-1.2.1.0, filepath-1.3.0.2, ghc-7.8.2, ghc-paths-0.1.0.9, ghc-syb-utils-0.2.1.2, hlint-1.8.61, io-choice-0.0.5, monad-control-0.3.3.0, mtl-2.1.3.1, old-time-1.1.0.2, process-1.2.0.0, split-0.2.2, syb-0.4.1, time-1.4.2, transformers-0.3.0.0, transformers-base-0.4.2, base-4.7.0.0, directory-1.2.1.0, filepath-1.3.0.2, ghc-7.8.2, base-4.7.0.0, containers-0.5.5.1, directory-1.2.1.0, filepath-1.3.0.2, ghc-7.8.2, base-4.7.0.0, doctest-0.9.11, Cabal-1.18.1.3, base-4.7.0.0, containers-0.5.5.1, deepseq-1.3.0.2, directory-1.2.1.0, filepath-1.3.0.2, ghc-7.8.2, ghc-paths-0.1.0.9, ghc-syb-utils-0.2.1.2, hlint-1.8.61, hspec-1.9.5, io-choice-0.0.5, monad-control-0.3.3.0, mtl-2.1.3.1, old-time-1.1.0.2, process-1.2.0.0, split-0.2.2, syb-0.4.1, time-1.4.2, transformers-0.3.0.0, transformers-base-0.4.2
System libraries: /usr/local/Cellar/ghc/7.8.2_2/lib/ghc-7.8.2
Browse
browse
- lists up symbols in the module FAILED [1]
browse -d
- lists up symbols with type info in the module FAILED [2]
- lists up data constructors with type info in the module FAILED [3]
browse local
- lists symbols in a local module
CabalApi
parseCabalFile
- throws an exception if the cabal file is broken
getCompilerOptions
- gets necessary CompilerOptions
cabalDependPackages
- extracts dependent packages
cabalSourceDirs
- extracts all hs-source-dirs
- extracts all hs-source-dirs including "."
cabalAllBuildInfo
- extracts build info
Check
checkSyntax
- can check even if an executable depends on its library
- can check even if a test module imports another test module located at different directory
- can detect mutually imported modules
- can check a module using QuasiQuotes
without errors
- doesn't output empty line
Cradle
findCradle
- returns the current directory
- finds a cabal file and a sandbox
- works even if a sandbox config file is broken
Flag
listFlags
- lists up GHC flags
GhcPkg
getPackageDbStack
- parses a config file and extracts sandbox package db
- throws an error if a config file is broken
Info
typeExpr
- shows types of the expression and its outers
- works with a module using TemplateHaskell
- works with a module that imports another module using TemplateHaskell
infoExpr
- works for non-export functions
- works with a module using TemplateHaskell
- works with a module that imports another module using TemplateHaskell
ghc-mod: <command line>: cannot satisfy -package-id hlint-1.8.61-51d17287414eb091ee907fd4fd999503
(use -v for more information)
- doesn't fail on unicode output FAILED [4]
Lang
listLanguages
- lists up language extensions
Lint
lintSyntax
- check syntax with HLint
without suggestions
- doesn't output empty line
List
listModules
- lists up module names FAILED [5]
Utils
extractParens
- extracts the part of a string surrounded by parentheses
1) Browse.browse lists up symbols in the module
uncaught exception: GhcException (<command line>: cannot satisfy -package-id hlint-1.8.61-51d17287414eb091ee907fd4fd999503
(use -v for more information))
2) Browse, browse -d, lists up symbols with type info in the module
uncaught exception: GhcException (<command line>: cannot satisfy -package-id hlint-1.8.61-51d17287414eb091ee907fd4fd999503
(use -v for more information))
3) Browse, browse -d, lists up data constructors with type info in the module
uncaught exception: GhcException (<command line>: cannot satisfy -package-id hlint-1.8.61-51d17287414eb091ee907fd4fd999503
(use -v for more information))
4) Info.infoExpr doesn't fail on unicode output
predicate failed on: ExitFailure 1
5) List.listModules lists up module names
uncaught exception: GhcException (<command line>: cannot satisfy -package-id hlint-1.8.61-51d17287414eb091ee907fd4fd999503
(use -v for more information))
Randomized with seed 172963052
Finished in 9.5369 seconds
33 examples, 5 failures
~
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment