Name | Date | Size | #Lines | LOC | ||
---|---|---|---|---|---|---|
.. | 03-May-2022 | - | ||||
cbits/ | H | 07-Feb-2021 | - | 38 | 30 | |
src/Language/Haskell/GhclibParserEx/ | H | 07-Feb-2021 | - | 1,588 | 1,220 | |
test/ | H | 07-Feb-2021 | - | 402 | 371 | |
ChangeLog.md | H A D | 07-Feb-2021 | 5.7 KiB | 176 | 128 | |
LICENSE | H A D | 07-Feb-2021 | 1.6 KiB | 35 | 27 | |
README.md | H A D | 07-Feb-2021 | 2.8 KiB | 35 | 23 | |
Setup.hs | H A D | 07-Feb-2021 | 46 | 3 | 2 | |
ghc-lib-parser-ex.cabal | H A D | 07-Feb-2021 | 3.6 KiB | 129 | 123 |
README.md
1# ghc-lib-parser-ex [![License BSD3](https://img.shields.io/badge/license-BSD3-brightgreen.svg)](http://opensource.org/licenses/BSD-3-Clause) [![Hackage version](https://img.shields.io/hackage/v/ghc-lib-parser-ex.svg?label=Hackage)](https://hackage.haskell.org/package/ghc-lib-parser-ex) [![Stackage version](https://www.stackage.org/package/ghc-lib-parser-ex/badge/nightly?label=Stackage)](https://www.stackage.org/package/ghc-lib-parser-ex) [![Build Status](https://shayne-fletcher.visualstudio.com/ghc-lib-parser-ex/_apis/build/status/shayne-fletcher.ghc-lib-parser-ex?branchName=master)](https://shayne-fletcher.visualstudio.com/ghc-lib-parser-ex/_build/latest?definitionId=1&branchName=master) 2Copyright © 2020, Shayne Fletcher. All rights reserved. 3SPDX-License-Identifier: BSD-3-Clause 4 5The `ghc-lib-parser-ex` package contains GHC API parse tree utilities. It works with or without [`ghc-lib-parser`](https://github.com/digital-asset/ghc-lib). 6 7## Using `ghc-lib-parser-ex` 8 9Package `ghc-lib-parser-ex` is on [Hackage](https://hackage.haskell.org/package/ghc-lib-parser-ex) e.g. `cabal install ghc-lib-parser-ex`. Like `ghc-lib-parser`, there are two release streams within the `ghc-lib-parser-ex` name. 10 11### Versioning policy 12 13Package `ghc-lib-parser-ex` does **not** conform to the [Haskell Package Versioning Policy](https://pvp.haskell.org/). 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: 14* Version 8.10.1.3 is compatible with any `ghc-lib-parser-8.10.*` (or `ghc-8.10.*`) package; 15* Version 0.20190204.2.0 is compatible with [`ghc-lib-parser-0.20190204`](http://hackage.haskell.org/package/ghc-lib-0.20190204). 16 17The 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. 18 19## Building `ghc-lib-parser-ex` 20 21You can build with `stack build` and test with `stack test`. Produce `ghc-lib-parser-ex` package distributions by executing the CI script: 22```bash 23# Setup 24git clone git@github.com:shayne-fletcher/ghc-lib-parser-ex.git 25cd ghc-lib-parser-ex 26stack runhaskell --package extra --package optparse-applicative CI.hs 27``` 28Run `stack runhaskell --package extra --package optparse-applicative CI.hs -- --help` for more options. 29 30To run [`hlint`](https://github.com/ndmitchell/hlint) on this repository, `hlint --cpp-include cbits --cpp-define GHCLIB_API_XXX .` (where `XXX` at this time is one of `808`, `810` or `900`). 31 32## Releasing `ghc-lib-parser-ex` (notes for maintainers) 33 34Update the [changelog](./ChangeLog.md), `git tag <version> && git push origin <version>` then build via the [above instructions](#building-ghc-lib-parser-ex) and upload the resulting `.tar.gz` files to [Hackage](https://hackage.haskell.org/upload). 35