From 0baf7661d4ba79f517162fb977ba062211b93d58 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Gr=C3=B6ber?= Date: Fri, 12 Sep 2014 06:36:37 +0200 Subject: [PATCH 1/4] Remove ChangeLog from master branch Keeping the ChangeLog in sync whith the branch containing the actual release is a pain so the ChangeLog will only actually exist on release branches. --- ChangeLog | 209 ------------------------------------------------------ 1 file changed, 209 deletions(-) delete mode 100644 ChangeLog diff --git a/ChangeLog b/ChangeLog deleted file mode 100644 index 844c0be..0000000 --- a/ChangeLog +++ /dev/null @@ -1,209 +0,0 @@ -UNRELEASED v5.1.0.0 - * GhcModError is now a recursive data type (`GMECabalConfigure`'s - type changed) - * GhcModT's MonadIO instance now converts IOError's to failures in - the ErrorT part of GhcModT on `liftIO`. - * Make `loadSymbolDb` polimorphic in the return types's monad. - * Add `hoistGhcModT` to Language.Haskell.GhcMod.Internal - -UNRELEASED v5.0.1.3 - * Fix `check` command for modules using `-XPatternSynonyms` - * Merge #364, Support cabal configuration flags - -2014-08-29 v5.0.1.2 - * Merge #345, Try fixing duplicate errors - * Merge #344, elisp: Use advice to check syntax on save-buffer - * Merge #341, support `browse -d` in ghc-modi - * Merge #352, elisp: Fix C-u accidentally getting turned into a - prefix command - -2014-08-24 v5.0.1.1 - * Fix CaseSplitting faliure when using "fancy types" (see #336) - * Print error information in "spec" test suite when using `extract` - -2014-08-20 v5.0.1 - * Fix missing file in "Data-Files" - -2014-08-20 v5.0.0 - * ghc-mod consumes much less memory than ghc-mod-4.1. - * @serras brought the results of Google Summer code - including case splitting and better type hole - * @DanielG provided the new monad based API - -2014-05-16 v4.1.6 - * Reverting "Trying to fix rare hang on Nix". - -2014-05-16 v4.1.5 - * Fixing the build on GHC 7.8.3. - -2014-05-16 v4.1.4 - * Trying to fix rare hang on Nix. - -2014-05-16 v4.1.3 - * Making -g-fxxx work. - -2014-05-16 v4.1.2 - * Setting Opt_WarnTypedHoles correctly. - -2014-05-16 v4.1.1 - * Making Emacs front-end more stable. - -2014-04-30 v4.1.0 - * ghc-modi now provides "type", "info", and "boot". - * ghc-mod now provides "find". - * Packages, which are specified in a cabal file but not installed, - are filtered out. (@DanielG) - * ghc-mod/ghc-modi treats "-l" properly. - * ghc-mod obsoletes "-p". Use "ghc-mod browse package:module". - * M-x ghc-debug has been implemented. - * "type" and "info" can work even if files contain type errors. - * "boot" as a new API. - -2014-04-07 v4.0.2 - * The ghc-display-error option (@notogawa) - * Fixing a file bug for Windows (@Kiripon) - * The -b option for ghc-modi (@yuga) - -2014-04-03 v4.0.1 - * Displaying a qualified name for one if two unqualified names - are conflict. - -2014-04-01 v4.0.0 - * Implementing interactive "ghc-modi" command. - "check", "find", and "lint" are available. - * Introducing a concept of project root directory. - Thanks to this, sandbox without cabal can be used. - "ghd-mod debug" displays the project root. - * Syntax error highlighting (C-xC-s) gets much faster - thanks to ghc-modi. "flymake" was thrown away and - syntax error highlighting is implemented from a scratch. - * Resolving the "import hell". You dont' have to type - "import Foo" anymore. Use M-t or C-cC-m. - * Inserting "module Foo" (M-t) can insert all paths - relative to the project root. - * M-C-d displays a html document even if it is in its sandbox. - * M-s now merges the same module lines in addition to sorting. - * A bug fix for hlint support. (@eagletmt) - -2014-03-15 v3.1.7 - * Defining ghc-debug for Elisp debugging. - * Catching up the latest hlint which does not provide --quite. - -2014-02-07 v3.1.6 - * Testing with multi GHC versions. (@eagletmt) - * Checking package ID. (@naota) - * Supporting GHC 7.8.1 RC1. (@bartavelle) - -2014-01-14 v3.1.5 - * Catching up to GHC 7.7. (@scottgw) - * Testing with multi GHC versions. (@eagletmt) - * Workaround for the coming new Haskell Platform. - * Supporting flymake of the coming Emacs 24.4. - -2013-11-20 v3.1.4 - * GHCi loading as fallback for browse. (@khorser) - * Supporting GHC 7.7. (@schell) - * Introducing the "-p" and "-q" option for browse. (@mvoidex) - -2013-10-07 v3.1.3 - * Fixing tests. (@eagletmt) - -2013-09-21 v3.1.2 - * Supporting sandbox for "list" and "browse". (@eagletmt) - -2013-09-21 v3.1.1 - * Making Cradle strict. - -2013-09-21 v3.1.0 - * API breaks backward compatibility. - * Supporting sandbox sharing. - -2013-09-16 v3.0.2 - * Fixing a bug of "dist/build/autogen/cabal_macros.h". - -2013-09-16 v3.0.1 - * Exporting more low level APIs. - * Adding "-ibuild/autogen" - * Adding "-optP". (Macros from a Cabal file - and "dist/build/autogen/cabal_macros.h") - -2013-09-06 v3.0.0 - * Supporting the sandbox of cabal 1.18. - * Obsoleting the support for cabal-dev. - -2013-09-04 v2.1.2 - * Supporting multiple target files. (@nh2) - -2013-09-03 v2.1.1 - * A bug fix for library dependency. - -2013-09-03 v2.1.0 - * Exporting Language.Haskell.GhcMod.Internal. (@alanz) - * Supporting GHC 7.7. (@co-dan) - -2013-05-30 v2.0.3 - * Using finalizePackageDescription to enable "if else" in a cabal - file. - -2013-05-21 v2.0.2 - * Document fixes. - -2013-05-21 v2.0.1 - * Document fixes. - -2013-05-21 v2.0.0 - * ghc-mod also provides a library (Language.Haskell.GhcMod) - -2013-05-13 v1.12.5 - * A bug fix for the case where a cabal file is broken. - -2013-04-02 v1.12.4 - - * C-M-d on Emacs now can browse functions and types. - * Checking "QuasiQuotes" as well as "TemplateHaskell". (@eagletmt) - * "ghc-mod info" can display info of non-exported functions. - (@mvoidex) - -2013-03-16 v1.12.3 - - * "ghc-mod info" and "ghc-mod type" also check Template Haskell. - (@eagletmt) - -2013-03-13 v1.12.2 - - * New logic to set "-fno-code" using "depanal" - * Cleaning up the code relating to Doc/SDoc - -2013-03-07 v1.12.1 - - * Fixing a bug to find a sandbox. - -2013-03-05 v1.12.0 - - * "ghc-mod debug" to see which cabal file and sand box are used - * Fast "ghc-mod check" if Template Haskell is not used - * "ghc-mod brwose -d" displays more information (@eagletmt) - -2013-03-01 v1.11.5 - - * New option "-d" for "ghc-mod browse" to show symbols with type - info (@moidex) - -2013-02-15 v1.11.4 - - * Adding Hspec test suite - * Better way to show Extension (@eagletmt) - * Removing the library itself from Cabal dependencies - -2012-12-11 v1.11.3 - - * Display a filname instead of "Dummy" if an error occur - -2012-10-30 v1.11.2 - - * Extract dependencies from a Cabal file if exists and specify - them to "ghc-mod check" (@khibino) - -2012-10-19 v1.11.1 - - * Supporting GHC 7.6.x (@cartazio, @dysinger, @ihameed) From 84002bfa2af61f369242c85da1e2e9caa09df1ff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Gr=C3=B6ber?= Date: Fri, 12 Sep 2014 07:02:34 +0200 Subject: [PATCH 2/4] README --- README.md | 30 +++++++++++++++++++++++------- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 0d2bb39..a691a12 100644 --- a/README.md +++ b/README.md @@ -5,22 +5,38 @@ Please read: [http://www.mew.org/~kazu/proj/ghc-mod/](http://www.mew.org/~kazu/p ## Using the stable version -Emacs front-end, which is consistent with binaries on Hackage, is available *stable* MELPA whose URL is http://melpa-stable.milkbox.net/packages/. So, your "~/.emacs" should be: +The Emacs front-end is available from +[*stable* MELPA](http://melpa-stable.milkbox.net/). This package should +always be compatible with the latest version of ghc-mod from hackage. + +To use stable *stable* MELPA add this to your `.emacs`: ```elisp (require 'package) -(add-to-list 'package-archives +(add-to-list 'package-archives '("melpa" . "http://melpa-stable.milkbox.net/packages/")) (package-initialize) ``` -With this configuration you can install the stable Emacs front end indicated by "ghc" from MELPA while you can install `ghc-mod`/`ghc-modi` binaries by: +With this configuration you can install the Emacs front end from MELPA (the +package is called `ghc` there, not `ghc-mod`) and install the +`ghc-mod`/`ghc-modi` binaries from hackage by doing: ```shell -% cabal update -% cabal install ghc-mod +% cabal update && cabal install ghc-mod ``` -## Using the develop version +## Using the development version -You should install both Emacs front-end and binaries from this git repo. If you use the snapshot MELPA to install Emacs front-end, you would suffer from inconsistency between Emacs front-end and binaries. +The easiest way to hack on ghc-mod is compile it, then add `dist/build/ghc-mod` +and `dist/build/ghc-modi` to your `PATH` and add the `elisp/` directory to your +Emacs `load-path`. + +Make sure you're not using the MELPA version of `ghc.el` otherwise you might get +all sorts of nasty conflicts. + + +## IRC + +If you have any problems, suggestions, comments swing by +[#ghc-mod](irc://chat.freenode.net/ghc-mod) on Freenode. From e7073e79f5463829c3fca2131b76914519d72407 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Gr=C3=B6ber?= Date: Fri, 12 Sep 2014 20:32:19 +0200 Subject: [PATCH 3/4] Add PatternSynonyms test data to Extra-Source-Files --- ghc-mod.cabal | 1 + 1 file changed, 1 insertion(+) diff --git a/ghc-mod.cabal b/ghc-mod.cabal index 0d03ef2..3b2ab42 100644 --- a/ghc-mod.cabal +++ b/ghc-mod.cabal @@ -46,6 +46,7 @@ Extra-Source-Files: ChangeLog test/data/duplicate-pkgver/.cabal-sandbox/i386-osx-ghc-7.6.3-packages.conf.d/template-haskell-1.0-7c59d13f32294d1ef6dc6233c24df961.conf test/data/duplicate-pkgver/.cabal-sandbox/i386-osx-ghc-7.6.3-packages.conf.d/template-haskell-2.8.0.0-14e543bdae2da4d2aeff5386892c9112.conf test/data/duplicate-pkgver/.cabal-sandbox/i386-osx-ghc-7.6.3-packages.conf.d/template-haskell-2.8.0.0-32d4f24abdbb6bf41272b183b2e23e9c.conf + test/data/pattern-synonyms/* test/data/ghc-mod-check/*.cabal test/data/ghc-mod-check/*.hs test/data/ghc-mod-check/Data/*.hs From 8ca6f7d18b5c8b7f013419369d4bbe4e9d77730a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Gr=C3=B6ber?= Date: Fri, 12 Sep 2014 20:55:47 +0200 Subject: [PATCH 4/4] Temporarily restrict monad-journal version --- ghc-mod.cabal | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/ghc-mod.cabal b/ghc-mod.cabal index 3b2ab42..f4c6901 100644 --- a/ghc-mod.cabal +++ b/ghc-mod.cabal @@ -46,7 +46,8 @@ Extra-Source-Files: ChangeLog test/data/duplicate-pkgver/.cabal-sandbox/i386-osx-ghc-7.6.3-packages.conf.d/template-haskell-1.0-7c59d13f32294d1ef6dc6233c24df961.conf test/data/duplicate-pkgver/.cabal-sandbox/i386-osx-ghc-7.6.3-packages.conf.d/template-haskell-2.8.0.0-14e543bdae2da4d2aeff5386892c9112.conf test/data/duplicate-pkgver/.cabal-sandbox/i386-osx-ghc-7.6.3-packages.conf.d/template-haskell-2.8.0.0-32d4f24abdbb6bf41272b183b2e23e9c.conf - test/data/pattern-synonyms/* + test/data/pattern-synonyms/*.cabal + test/data/pattern-synonyms/*.hs test/data/ghc-mod-check/*.cabal test/data/ghc-mod-check/*.hs test/data/ghc-mod-check/Data/*.hs @@ -103,7 +104,7 @@ Library , ghc-syb-utils , hlint >= 1.8.61 , io-choice - , monad-journal >= 0.2.2.0 + , monad-journal >= 0.2.2.0 && < 0.2.3.2 , old-time , process , syb @@ -196,7 +197,7 @@ Test-Suite spec , ghc-syb-utils , hlint >= 1.7.1 , io-choice - , monad-journal >= 0.2.2.0 + , monad-journal >= 0.2.2.0 && < 0.2.3.2 , old-time , process , syb