diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..dfd0e30 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,10 @@ +# Set update schedule for GitHub Actions + +version: 2 +updates: + + - package-ecosystem: "github-actions" + directory: "/" + schedule: + # Check for updates to GitHub Actions every week + interval: "weekly" diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..27520cd --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,51 @@ +name: CI + +# Trigger the workflow on push or pull request, but only for the main branch +on: + pull_request: + push: + branches: ["master"] + +jobs: + generate-matrix: + name: "Generate matrix from cabal" + outputs: + matrix: ${{ steps.set-matrix.outputs.matrix }} + runs-on: ubuntu-latest + steps: + - name: Extract the tested GHC versions + id: set-matrix + uses: kleidukos/get-tested@v0.1.6.0 + with: + cabal-file: wreq.cabal + ubuntu: true + version: 0.1.6.0 + tests: + name: ${{ matrix.ghc }} on ${{ matrix.os }} + needs: generate-matrix + runs-on: ${{ matrix.os }} + strategy: + matrix: ${{ fromJSON(needs.generate-matrix.outputs.matrix) }} + steps: + - name: Checkout base repo + uses: actions/checkout@v4 + - name: Set up Haskell + id: setup-haskell + uses: haskell-actions/setup@v2 + with: + ghc-version: ${{ matrix.ghc }} + cabal-version: 'latest' + - name: Configure + run: cabal configure --enable-tests + - name: Freeze + run: cabal freeze + - name: Cache + uses: actions/cache@v4.0.1 + with: + path: ${{ steps.setup-haskell.outputs.cabal-store }} + key: ${{ runner.os }}-ghc-${{ matrix.ghc }}-cabal-${{ hashFiles('**/plan.json') }} + restore-keys: ${{ runner.os }}-ghc-${{ matrix.ghc }}- + - name: Build + run: cabal new-build + - name: Test + run: cabal new-test all diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..b24d9c2 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +dist-newstyle +cabal.project.local diff --git a/wreq.cabal b/wreq.cabal index 71d3971..7d4f944 100644 --- a/wreq.cabal +++ b/wreq.cabal @@ -37,7 +37,7 @@ maintainer: bos@serpentine.com copyright: 2014 Bryan O'Sullivan category: Web build-type: Custom -tested-with: GHC==9.2.8 +tested-with: GHC ==9.2.8 || ==9.4.8 || ==9.6.4 extra-source-files: README.md TODO.md @@ -110,7 +110,7 @@ library bytestring >= 0.9, case-insensitive, containers, - cryptonite, + crypton, exceptions >= 0.5, ghc-prim, hashable,