Skip to content

Month in Haskell Mode January 2016

Gracjan Polak edited this page Feb 3, 2016 · 2 revisions

Welcome Haskell Mode users,

Haskell Mode progress report for January 2016. For previous issue see December 2015. Reddit discussion.

What is Haskell Mode?

Haskell Mode is an umbrella project for multiple Emacs tools for efficient Haskell development. Haskell Mode is an open source project developed by a group of volunteers constantly looking for contributions. For more information how to help see https://github.com/haskell/haskell-mode.

Important developments

Haskell Mode 2015 retrospective was published.

Emacs 23 support was dropped. Last stable haskell-mode release that supports Emacs 23 is haskell-mode version 13.18.

We have added code coverage reporting and it already helped to nail down some missing cases in our test suite for indentation and font locking. We are currently at 30% coverage.

Request

Haskell Mode web presence is none at this point. I'd like to ask a volunteer to create a static web page deployed on github pages that will serve as Haskell Mode home page. Any takers?

Current project focus

Current project focus is to lower entry barrier for newcomers by defining bite-sized tasks.

Get 50 'well-defined-tasks' done as by the metric:

https://github.com/haskell/haskell-mode/issues?q=is%3Aissue+label%3Awell-defined-task+is%3Aclosed

A 'well-defined-task' is a category of tasks that have the field cleared for them, questions already sorted out and detailed information how to get them done. So you can just sit, search for 'well-defined-task' label and enjoy the coding! The point is to lower the entry barrier for new users, new issue reporters and advanced programmers but Emacs lisp beginners to contribute to the project.

Current status: 14 well-defined-tasks closed plus 13 more open.

If only you can help with reaching our targets please do so!

Issues closed in January

  • [Discussion] Character class for apostrophe #549
  • Debugger triggered on "match c of", a typo for "case c of" #599
  • Interactive mode recognizes some lines as compiler errors incorrectly #635
  • make check should recompile files properly #709
  • haskell-process-suggest-pragma hangs emacs #754
  • ghc-mod / stack / dist dir #801
  • [Discussion] REPL vs IDE #809
  • haskell-mode becomes unresponsive when adding a language pragma #820
  • Drop Emacs 23 support #847
  • Can't press enter in haskell interactive mode #876
  • Mac OS X El Capitan: no such file or directory, ghci #908
  • Emacs hangs when typing behind whitespace #980
  • haskell-process-load-file error (wrong-type-argument number-or-marker-p nil) when code has an error #1004
  • Regression quasi-quotes are not highlighted anymore #1041
  • Custom Haskell variables don't retain their customization #1043
  • Indentation point missing for record data declarations #1044
  • Font lock Role annotations #1057
  • Use undercover.el and https://coveralls.io/ #1062
  • haskell-cabal-strip-list and haskell-cabal-listify #1076
  • Indentation of guards does not work sensibly with haskell-indentation #1079
  • Indentation of first data constructor does not work with haskell-indent #1080
  • Annoying indentation behaviour when declaring data types #1081
  • Can't indent, gets error. #1082
  • [Discussion] Make haskell-indentation external, editor agnostic project #1086
  • haskell-cabal-subsection-arrange-lines inserts superfluous commas #1094
  • haskell-indentation misbehaves for comments #1101
  • haskell-process-path-* now allowed to be lists #1112
  • Wrong completion-at-point in Haskell interpreter with helm #1113

Pull requests merged in January

  • Record indentation should follow tibell style #1047
  • Defcustoms should not be autoloaded #1048
  • Define url and some keywords/tags for haskell-mode #1049
  • Make quasi quote more visible #1051
  • Lexeme parsing improvements #1052
  • Skip an indentation test for Emacs 25 #1053
  • Require at least Emacs 24.1 #1055
  • Add font lock type/data family declarations #1056
  • User manual updates #1058
  • Add literate font lock tests, remove unused parts #1059
  • Fix typos in documentation strings #1060
  • Use plain string face for quasi quotes #1061
  • Add code coverage #1063
  • Add keybinding for haskell-cabal-visit-file #1064
  • Add type role to font lock #1066
  • Add test for SQL font-lock #1067
  • Add test for 'type role' font-lock #1068
  • Remove turn-on/off-haskell-font-lock #1069
  • More font lock tests #1070
  • Add tests and fix for classify by first char #1071
  • Disallow leading spaces in error regexp in interactive mode #1072
  • Add some tests for indentation #1073
  • Inline haskell-mode-jump-to-loc #1075
  • Increase haskell-cabal.el coverage #1077
  • Define haskell-package struct's slots #1083
  • Utils coverage #1089
  • Utils coverage #1090
  • Improve haskell-utils-reduce-string. Add tests #1092
  • Add post-command-hook related tests #1093
  • Test utils #1095
  • Add string tests #1096
  • Follow comma style when arranging a Cabal section #1098
  • Detect comma style #1099
  • Implement haskell-goto-first-error #1100
  • Bump version to 16.1-git #1102
  • Honor equals on its own line in data decl #1105
  • Honor equals on separate line after guards #1106
  • Remove a stray parenthesis #1108
  • Tidy up haskell-load.el: untabify, reindent. Fix some warnings. #1111
  • Allow haskell-process-path-* to be lists. #1114
  • Add haskell-indent tests #1115
  • Prevent haskell-doc-mode to hang Emacs during user input waiting #1116
  • Remove haskell-interactive-mode-completion-cache #1119

Contributors active in January

Arthur Fayzrakhmanov (Артур Файзрахманов), Bozhidar Batsov, Dan Aloni, Daniel Bergey, Fice-T, Gracjan Polak, Herbert Valerio Riedel, Kirill Ignatiev, Mike Sperber, Thomas Winant, U-Yuriy-PCYuriy, issue-dispenser, mrBliss

Contributing

Haskell Mode needs volunteers like any other open source project. For more information see:

https://github.com/haskell/haskell-mode/wiki

Also drop by our IRC channel: #haskell-emacs at irc.freenode.net.

Thanks!

Clone this wiki locally