diff --git a/.github/workflows/haskell.yml b/.github/workflows/haskell.yml new file mode 100644 index 0000000..e2f4eac --- /dev/null +++ b/.github/workflows/haskell.yml @@ -0,0 +1,65 @@ +name: Haskell CI + +on: + push: ~ + pull_request: + branches: [master] + +jobs: + test: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-haskell@v1 + with: + enable-stack: true + stack-no-global: true + stack-version: 'latest' + + - name: Cache + uses: actions/cache@v2 + with: + path: | + ~/.stack + graphql.cabal + stack.yaml.lock + key: ${{ runner.os }}-build-${{ hashFiles('**/stack.yaml') }} + restore-keys: '${{ runner.os }}-build-' + + - name: Install dependencies + run: stack --no-terminal test --only-snapshot + - name: Run tests + run: stack --no-terminal test --pedantic + - name: Build the documentation + run: | + stack --no-terminal ghc -- -Wall -Werror -fno-code docs/tutorial/tutorial.lhs + stack --no-terminal haddock --no-haddock-deps + + lint: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-haskell@v1 + with: + enable-stack: true + stack-no-global: true + stack-version: 'latest' + + - name: Cache + uses: actions/cache@v2 + with: + path: | + ~/.stack + graphql.cabal + stack.yaml.lock + key: ${{ runner.os }}-build-${{ hashFiles('**/stack.yaml') }} + restore-keys: '${{ runner.os }}-build-' + + - name: Build HLint + run: stack --no-terminal build hlint + - name: Install HLint + run: stack --no-terminal install hlint + - name: Lint + run: stack --no-terminal exec hlint -- src tests docs diff --git a/CHANGELOG.md b/CHANGELOG.md index f42be0a..5f0a1b6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ The format is based on and this project adheres to [Haskell Package Versioning Policy](https://pvp.haskell.org/). +## [Unreleased] ## [0.8.0.0] - 2020-06-20 ### Fixed - The parser rejects variables when parsing defaultValue (DefaultValue). The @@ -267,6 +268,7 @@ and this project adheres to ### Added - Data types for the GraphQL language. +[Unreleased]: https://github.com/caraus-ecms/graphql/compare/v0.8.0.0...HEAD [0.8.0.0]: https://github.com/caraus-ecms/graphql/compare/v0.7.0.0...v0.8.0.0 [0.7.0.0]: https://github.com/caraus-ecms/graphql/compare/v0.6.1.0...v0.7.0.0 [0.6.1.0]: https://github.com/caraus-ecms/graphql/compare/v0.6.0.0...v0.6.1.0 diff --git a/README.md b/README.md index f44e429..a27596f 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # Haskell GraphQL [![Hackage Version](https://img.shields.io/hackage/v/graphql.svg)](https://hackage.haskell.org/package/graphql) -[![Build Status](https://semaphoreci.com/api/v1/belka-ew/graphql/branches/master/badge.svg)](https://semaphoreci.com/belka-ew/graphql) +[![Build Status](https://github.com/caraus-ecms/graphql/workflows/Haskell%20CI/badge.svg)](https://github.com/caraus-ecms/graphql/actions?query=workflow%3A%22Haskell+CI%22) [![License](https://img.shields.io/badge/license-BSD--3--Clause-blue.svg)](https://raw.githubusercontent.com/caraus-ecms/graphql/master/LICENSE) GraphQL implementation in Haskell. diff --git a/stack.yaml b/stack.yaml index a037a72..e99e8c3 100644 --- a/stack.yaml +++ b/stack.yaml @@ -1,4 +1,4 @@ -resolver: lts-16.1 +resolver: lts-16.2 packages: - .