BSD-3-Clause licensed by Shayne Fletcher

Module documentation for 8.8.4.0

This version can be pinned in stack with:ghc-lib-parser-ex-8.8.4.0@sha256:e2d20f686208f63612fe2f0f7f5784f8ed21aabceaa205af1e56ca942b412f1b,2484

ghc-lib-parser-ex License BSD3 Hackage version Stackage version Build Status

Copyright © 2020, Shayne Fletcher. All rights reserved. SPDX-License-Identifier: BSD-3-Clause

The ghc-lib-parser-ex package contains GHC API parse tree utilities. It works with or without ghc-lib-parser.

Using ghc-lib-parser-ex

Package ghc-lib-parser-ex is on Hackage e.g. cabal install ghc-lib-parser-ex. Like ghc-lib-parser, there are two release streams within the ghc-lib-parser-ex name.

Version numbers are of the form α.β.γ.δ where α.β corresponds to a GHC series and γ.δ are the major and minor parts of the ghc-lib-ex-parser package release. Examples:

  • Version 8.10.1.3 is compatible with any ghc-lib-parser-8.10.* (or ghc-8.10.*) package;
  • Version 0.20190204.2.0 is compatible with ghc-lib-parser-0.20190204.

The major part γ of the release number indicates an interface breaking change from the previous release. The minor part δ indicates a non-interface breaking change from the previous release.

Building ghc-lib-parser-ex

You can build with stack build and test with stack test. Produce ghc-lib-parser-ex package distributions by executing the CI script:

# Setup
git clone git@github.com:shayne-fletcher/ghc-lib-parser-ex.git
cd ghc-lib-parser-ex
stack runhaskell --package extra --package optparse-applicative CI.hs

Run stack runhaskell --package extra --package optparse-applicative CI.hs -- --help for more options.

To run hlint on this repository, hlint --cpp-include cbits --cpp-define GHCLIB_API_XXX . (where XXX at this time is one of 808, 810 or 811).

Releasing ghc-lib-parser-ex (notes for maintainers)

Update the changelog, git tag <version> && git push origin <version> then build via the above instructions and upload the resulting .tar.gz files to Hackage.

Changes

Changelog for ghc-lib-parser-ex

Unreleased changes

8.8.4.0 released 2020-02-01

  • New modules:
    • Language.Haskell.GhclibparserEx.GHC.Hs.Expr
  • Moved modules:
    • Language.Haskell.GhclibparserEx.HsExtendInstances -> Language.Haskell.GhclibparserEx.GHC.Hs.ExtendInstances;

0.20200201.1.0 released 2020-02-01

  • New modules:
    • Language.Haskell.GhclibparserEx.HsExtendInstances.

8.8.3.0 released 2020-01-25

  • Change in versioning scheme;
  • New modules:
    • Language.Haskell.GhclibParserEx.Config
    • Language.Haskell.GhclibParserEx.DynFlags
  • parsePragmasIntoDynFlags signature change.

8.8.1.20191204, 8.8.2, 0.20200102 released 2020-01-18

  • First releases
Used by 1 package in nightly-2020-02-07(full list with versions):