Name: HaRe Version: 0.8.4.1 Author: Chris Brown, Huiqing Li, Simon Thompson, Alan Zimmerman, Stephen Adams Maintainer: Alan Zimmerman (alan.zimm@gmail.com) Stability: Alpha Bug-Reports: http://github.com/RefactoringTools/HaRe/issues License: BSD3 License-File: LICENSE Homepage: https://github.com/RefactoringTools/HaRe/wiki Description: A Haskell 2010 refactoring tool. HaRe supports the full Haskell 2010 standard, through making use of the GHC API. . Version 0.7.2.8 supports up to GHC 7.6.3. . There is no support for GHC 7.8.x. There will never be support for GHC 7.8.x . From version 0.8.0.0, GHC 7.10.2 is supported. . From version 0.8.3.0, GHC 8.0.1 is supported. . From version 0.8.4.0, GHC 8.0.2 is supported. . It is tested against GHC 7.10.3, GHC 8.0.1 and GHC 8.0.2 (via travis-ci.org) . It currently only has emacs integration built in, community input welcome for others. . HaRe attempts to operate in a safe way, by first writing new files with proposed changes, and only swapping these with the originals when the change is accepted. In the process the original file is renamed to have the current date/time as a suffix. Thus it should be possible to (manually) undo changes. . Even so, it is strongly advised to back up any source files before refactoring, as we can make no promises as to the reliability of this tool. Use at your own risk. . At the moment parsing of any file with FFI exports will fail. . See Language.Haskell.Refact.HaRe for the current list of refactorings supported . Synopsis: the Haskell Refactorer. Category: Development, Refactoring Cabal-Version: >= 1.8 Build-Type: Simple tested-with: GHC == 7.10.3, GHC == 8.0.1, GHC == 8.0.2 data-files: elisp/*.el configure.sh test/testdata/*.cabal test/testdata/*.hs test/testdata/AddOneParameter/*.hs test/testdata/AddOneParameter/*.expected.hs test/testdata/Case/*.hs test/testdata/Case/*.hs.expected test/testdata/Case/*.hs.expected.dd test/testdata/Demote/*.expected.hs test/testdata/Demote/*.hs test/testdata/Demote/*.hs.expected test/testdata/DupDef/*.hs test/testdata/DupDef/*.hs.expected test/testdata/DupDef/*.hs.expected.dd test/testdata/DupDef/*.hs.expected.gg test/testdata/DupDef/*.hs.expected.ll test/testdata/DupDef/*.hs.expected.mm test/testdata/DupDef/*.hs.expected.nn test/testdata/FreeAndDeclared/*.hs test/testdata/Layout/*.hs test/testdata/Layout/*.hs.expected test/testdata/LiftOneLevel/*.hs test/testdata/LiftOneLevel/*.hs.expected test/testdata/LiftToToplevel/*.expected.hs test/testdata/LiftToToplevel/*.hs test/testdata/LiftToToplevel/*.hs.expected test/testdata/MoveDef/*.hs test/testdata/MoveDef/*.hs.expected test/testdata/Renaming/*.expected.hs test/testdata/Renaming/*.hs test/testdata/Renaming/*.hs.expected test/testdata/RmOneParameter/*.expected.hs test/testdata/RmOneParameter/*.hs test/testdata/Simple/*.hs test/testdata/Simple/*.hs.expected test/testdata/SwapArgs/*.hs test/testdata/TH/*.hs test/testdata/TypeUtils/*.hs test/testdata/Visible/*.hs test/testdata/cabal/cabal1/*.cabal test/testdata/cabal/cabal1/*.hs test/testdata/cabal/cabal1/src/*.hs test/testdata/cabal/cabal1/src/Foo/*.hs test/testdata/cabal/cabal2/*.cabal test/testdata/cabal/cabal2/*.hs test/testdata/cabal/cabal2/src/*.hs test/testdata/cabal/cabal2/src/Foo/*.hs test/testdata/cabal/cabal3/*.cabal test/testdata/cabal/cabal3/*.hs test/testdata/cabal/cabal3/src/*.hs test/testdata/cabal/cabal3/src/Foo/*.hs test/testdata/cabal/cabal4/*.cabal test/testdata/cabal/cabal4/*.hs test/testdata/cabal/cabal4/src/*.expected.hs test/testdata/cabal/cabal4/src/*.hs test/testdata/cabal/cabal4/src/Foo/*.expected.hs test/testdata/cabal/cabal4/src/Foo/*.hs test/testdata/cabal/foo/*.cabal test/testdata/cabal/foo/*.hs test/testdata/cabal/foo/src/*.expected.hs test/testdata/cabal/foo/src/*.hs test/testdata/cabal/foo/src/Foo/*.expected.hs test/testdata/cabal/foo/src/Foo/*.hs data-Dir: . extra-source-files: ChangeLog Library -- GHC 7.10.2 ships with base 4.8.1.0 Build-Depends: base >= 4.8.1.0 && < 5 , Strafunski-StrategyLib , cabal-helper , containers , directory , filepath , ghc , ghc-exactprint >= 0.5.3.0 , ghc-mod == 5.8.0.* , ghc-syb-utils , hslogger , monad-control , mtl , syb , syz -- optimisation disabled otherwise the compile takes too long -- With normal optimisation, we get -- $ rm -fr dist-newstyle/ -- $ cabal new-configure --enable-test -- $ time cabal new-build -- real 6m54.778s -- user 7m3.156s -- sys 0m4.504s -- With -O0, the timing is -- real 0m36.427s -- user 0m41.448s -- sys 0m2.544s GHC-Options: -O0 -Wall Hs-Source-Dirs: src -- Other-Modules: Paths_HaRe Exposed-modules: Language.Haskell.Refact.API , Language.Haskell.Refact.HaRe , Language.Haskell.Refact.Refactoring.AddRmParam , Language.Haskell.Refact.Refactoring.Case , Language.Haskell.Refact.Refactoring.DupDef , Language.Haskell.Refact.Refactoring.MoveDef , Language.Haskell.Refact.Refactoring.Renaming , Language.Haskell.Refact.Refactoring.RoundTrip , Language.Haskell.Refact.Refactoring.Simple , Language.Haskell.Refact.Refactoring.SwapArgs , Language.Haskell.Refact.Refactoring.DeleteDef -- , Language.Haskell.Refact.Refactoring.IntroduceTypeSyn -- , Language.Haskell.Refact.Refactoring.UnwrapTypeSyn , Language.Haskell.Refact.Refactoring.GenApplicative , Language.Haskell.Refact.Utils.ExactPrint , Language.Haskell.Refact.Utils.GhcBugWorkArounds , Language.Haskell.Refact.Utils.GhcModuleGraph , Language.Haskell.Refact.Utils.GhcUtils , Language.Haskell.Refact.Utils.GhcVersionSpecific , Language.Haskell.Refact.Utils.LocUtils , Language.Haskell.Refact.Utils.Monad , Language.Haskell.Refact.Utils.MonadFunctions , Language.Haskell.Refact.Utils.TypeSyn , Language.Haskell.Refact.Utils.TypeUtils , Language.Haskell.Refact.Utils.Types , Language.Haskell.Refact.Utils.Utils , Language.Haskell.Refact.Utils.Variables , Language.Haskell.Refact.Utils.Synonyms , Language.Haskell.Refact.Utils.Transform , Language.Haskell.Refact.Utils.Query , Paths_HaRe if impl (ghc < 7.10.2) buildable: False Executable ghc-hare Main-Is: MainHaRe.hs -- Other-Modules: Paths_HaRe GHC-Options: -O0 -Wall -- GHC-Options: -prof -fprof-auto -rtsopts -caf-all Hs-Source-Dirs: ./app -- GHC 7.10.2 ships with base 4.8.1.0 Build-Depends: base >= 4.8.1.0 && < 5 , ghc-mod == 5.8.0.* , gitrev >= 1.1 , mtl , optparse-applicative == 0.13.2.* , optparse-simple , Cabal -- , Paths_HaRe , HaRe Extensions: CPP if impl (ghc < 7.10.2) buildable: False test-suite spec type: exitcode-stdio-1.0 ghc-options: -O0 -- reinstate these later -Wall -Wall -- reinstate these later -Werror -- -fhpc -- -fhpc -hpcdir dist/hpc/app-1.0 cpp-options: -DTEST main-is: Main.hs Hs-Source-Dirs: -- src test other-modules: AddRmParamSpec , CaseSpec , DupDefSpec , GhcUtilsSpec , LocUtilsSpec , MonadFunctionsSpec , MoveDefSpec , RenamingSpec , RoundTripSpec , SimpleSpec , SwapArgsSpec , TestUtils , TypeUtilsSpec , UtilsSpec , DeleteDefSpec -- , IntroduceTypeSynSpec -- , UnwrapTypeSynSpec -- , Language.Haskell.Refact.API -- , Language.Haskell.Refact.HaRe -- , Language.Haskell.Refact.Refactoring.AddRmParam -- , Language.Haskell.Refact.Refactoring.Case -- , Language.Haskell.Refact.Refactoring.RoundTrip -- , Language.Haskell.Refact.Utils.ExactPrint -- , Language.Haskell.Refact.Utils.GhcModuleGraph -- , Language.Haskell.Refact.Utils.GhcUtils -- , Language.Haskell.Refact.Utils.GhcVersionSpecific -- , Language.Haskell.Refact.Utils.LocUtils -- , Language.Haskell.Refact.Utils.Monad -- , Language.Haskell.Refact.Utils.MonadFunctions -- , Language.Haskell.Refact.Utils.TypeSyn -- , Language.Haskell.Refact.Utils.TypeUtils -- , Language.Haskell.Refact.Utils.Types -- , Language.Haskell.Refact.Utils.Utils -- , Language.Haskell.Refact.Utils.Variables -- , Paths_HaRe build-depends: -- GHC 7.10.2 ships with base 4.8.1.0 base >= 4.8.1.0 && < 5 , Diff >= 0.3.0 , HUnit , containers , directory , foldl , ghc , ghc-exactprint >= 0.5.3.0 , ghc-mod == 5.8.0.* , ghc-syb-utils , hslogger , hspec , mtl , turtle >= 1.3.0 , foldl -- , Paths_HaRe , attoparsec , base-prelude , conversion-case-insensitive , conversion , conversion-text , parsec , case-insensitive , HaRe Extensions: CPP if impl (ghc < 7.10.2) buildable: False -- test-suite doctests -- type: exitcode-stdio-1.0 -- ghc-options: -threaded -- main-is: doctests.hs -- build-depends: base >= 4.0 && < 4.9 -- , doctest >= 0.8 -- , ghc-mod -- Hs-Source-Dirs: -- -- src -- test source-repository head type: git location: https://github.com/RefactoringTools/HaRe.git