All Versions
Latest Version
Avg Release Cycle
Latest Release

Changelog History
Page 5

  • v1.8.2 Changes

    • OptionPragma is renamed to the more descriptive ModulePragma, and adds a constructor AnnModulePragma for handling ANN pragmas preceding module header.

    • โž• Add instances for Eq/Ord/Data/Typeable for Fixity.

    • โž• Add 'parseFileWithComments' and 'parseFileContentsWithComments' to L.H.Exts .

    • More informative error messages when HSX tags are mismatched.

    ** 1.8.x

  • v1.8.1 Changes

    • Don't insert redundant parentheses around record constructions and updates.
  • v1.8.0 Changes

    • ๐Ÿ›  Fix three bugs with the handling of ANN. I must have been really tired when implementing that support.
  • v1.7.2 Changes

    • โž• Add an instance Show Fixity (derived).

    • ๐Ÿ‘Œ Support for the new ANN and INLINE_CONLIKE pragmas.

    • Export knownExtensions from .Extension.

    • โœ‚ Remove support for CFILES and INCLUDE pragmas. The support wasn't correct anyway, as it assumed the pragmas appeared at the top of files. As CFILES/INCLUDE pragmas can (and do) appear anywhere, there's no hope to support them in the AST. Better to remove the support altogether. Files with CFILES/INCLUDE pragmas can still be parsed of course, but those pragmas will be handled as comments.

    • โšก๏ธ Parsing with ignoreLinePragmas = False now correctly updates the file name.

    • ๐Ÿ‘ Allow the whole SPECIALISE/INLINE family of pragmas in instance declarations. The InsInline constructor is removed, and is now represented by InsDecl (InlineSig ...).

    • ๐Ÿ›  Fix a bug with line numbering and quasi quotes, and a similar one with line numbering and CDATA.

    • ๐Ÿ›  Fix a few minor bugs in the exactPrinter.

    • ๐Ÿ›  Fix the strange handling of so called strings in LINE pragmas.

    ** 1.7.x

  • v1.7.1 Changes

    • ๐Ÿ›  Fixes a bug in lexing LINE pragmas (used when ignoreLinePragmas is set to False).
  • v1.7.0 Changes

    • UnicodeSyntax now also enables the forall symbol (U+2200).
  • v1.6.1 Changes

    • Operators defined on the form

      (a op b) c = ...

    could not be handled by the (annotated) AST, nor the parser. I had to change the definition of the AST node for InfixMatch to allow a list of right-hand subpatterns, i.e.

     InfixMatch l (Pat l) (Name l) (Pat l) ...

    has become

     InfixMatch l (Pat l) (Name l) [Pat l] ...

    I also had an epiphany and fixed the issue that would arise with exact printing of prefix definitions including parentheses, so that now works too!

    ** 1.6.x

  • v1.6.0 Changes

    • UnicodeSyntax now works not only for identifiers, but also for ->, <- and =>, as well as Arrows arrows and kind stars.
  • v1.5.3 Changes

    • (=~=) turns out to be too general at Functor (for intuitive and not technical reasons), so is specialised to Annotated to closer mirror the original intention.

    • applyFixities is hoisted to a monad, and now fails on ambiguous infix expressions.

    ** 1.5.x

  • v1.5.2 Changes

    • ๐Ÿ–จ Several small bug fixes in the exact printer, and fail more gracefully if the number of srcInfoPoints doesn't match the needs of the node.