From 3f3883131df4670d358659966e16e73c9384bb0e Mon Sep 17 00:00:00 2001 From: Francesco Gazzetta Date: Wed, 27 May 2026 17:47:35 +0200 Subject: [PATCH 1/2] Allow aeson 2.3 --- aeson-pretty.cabal | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aeson-pretty.cabal b/aeson-pretty.cabal index 41590ae..92d2c8b 100644 --- a/aeson-pretty.cabal +++ b/aeson-pretty.cabal @@ -41,7 +41,7 @@ library Data.Aeson.Encode.Pretty build-depends: - aeson ^>=1.1 || ^>=1.2 || ^>=1.3 || ^>=1.4 || ^>=1.5 || ^>=2.0 || ^>=2.1 || ^>=2.2, + aeson ^>=1.1 || ^>=1.2 || ^>=1.3 || ^>=1.4 || ^>=1.5 || ^>=2.0 || ^>=2.1 || ^>=2.2 || ^>=2.3, base >= 4.5, base-compat >= 0.9, bytestring >= 0.9, From 2f2c7a610d8bdc56ffed74b52b3243c9732657e2 Mon Sep 17 00:00:00 2001 From: Martijn Bastiaan Date: Sun, 7 Jun 2026 21:16:22 +0200 Subject: [PATCH 2/2] Update CI, bump version, drop support for 6+ year old Aesons --- .github/workflows/ci.yml | 26 +++++++++++++------------- CHANGELOG.markdown | 6 +++++- aeson-pretty.cabal | 4 ++-- cli-tool/Main.hs | 6 +++++- 4 files changed, 25 insertions(+), 17 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7df0039..2a0d852 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -15,15 +15,15 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: ["ubuntu-22.04"] - ghc: ["9.6.2", "9.4.3", "9.2.8", "9.0.2", "8.10.7", "8.8.4", "8.6.5", "8.4.4", "8.2.2"] + os: ["ubuntu-24.04"] + ghc: ["9.14.1", "9.12.4", "9.10.3", "9.8.4", "9.6.7", "9.4.8", "9.2.8", "9.0.2", "8.10.7", "8.8.4", "8.6.5", "8.4.4", "8.2.2"] fail-fast: false steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v6 - name: Setup Haskell - uses: haskell/actions/setup@v2 + uses: haskell-actions/setup@v2 id: setup-haskell with: ghc-version: ${{ matrix.ghc }} @@ -35,7 +35,7 @@ jobs: mv cabal.project.freeze frozen - name: Cache dependencies - uses: actions/cache@v3 + uses: actions/cache@v5 with: path: ${{ steps.setup-haskell.outputs.cabal-store }} key: ${{ runner.os }}-ghc-${{ matrix.ghc }}-${{ hashFiles('frozen') }} @@ -53,16 +53,16 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: ["ubuntu-22.04"] - ghc: ["8.2.2"] - aeson: ["1.1", "1.2", "1.3", "1.4", "1.5", "2.0", "2.1", "2.2"] + os: ["ubuntu-24.04"] + ghc: ["9.0.2"] + aeson: ["1.5", "2.0", "2.1", "2.2", "2.3"] fail-fast: false steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v6 - name: Setup Haskell - uses: haskell/actions/setup@v2 + uses: haskell-actions/setup@v2 id: setup-haskell with: ghc-version: ${{ matrix.ghc }} @@ -74,7 +74,7 @@ jobs: mv cabal.project.freeze frozen - name: Cache dependencies - uses: actions/cache@v3 + uses: actions/cache@v5 with: path: ${{ steps.setup-haskell.outputs.cabal-store }} key: ${{ runner.os }}-aeson-${{ matrix.aeson }}-${{ hashFiles('frozen') }} @@ -95,10 +95,10 @@ jobs: aesons, ghcs ] - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v6 - name: Check dependencies for failures run: | diff --git a/CHANGELOG.markdown b/CHANGELOG.markdown index c3ed688..2fb07b8 100644 --- a/CHANGELOG.markdown +++ b/CHANGELOG.markdown @@ -1,7 +1,11 @@ # aeson-pretty changelog -## 0.8.10 +## 0.8.11 + * Dropped support for Aeson 1.4 and older + * Added support for Aeson 2.3 * Added support for Aeson 2.2 + +## 0.8.10 * Added support for Aeson 2.1 ## 0.8.9 diff --git a/aeson-pretty.cabal b/aeson-pretty.cabal index 92d2c8b..d9ee707 100644 --- a/aeson-pretty.cabal +++ b/aeson-pretty.cabal @@ -1,6 +1,6 @@ cabal-version: 2.0 name: aeson-pretty -version: 0.8.10 +version: 0.8.11 license: BSD3 license-file: LICENSE category: Text, Web, JSON, Pretty Printer @@ -41,7 +41,7 @@ library Data.Aeson.Encode.Pretty build-depends: - aeson ^>=1.1 || ^>=1.2 || ^>=1.3 || ^>=1.4 || ^>=1.5 || ^>=2.0 || ^>=2.1 || ^>=2.2 || ^>=2.3, + aeson >=1.5 && <2.4, base >= 4.5, base-compat >= 0.9, bytestring >= 0.9, diff --git a/cli-tool/Main.hs b/cli-tool/Main.hs index b7d1923..b0c1323 100644 --- a/cli-tool/Main.hs +++ b/cli-tool/Main.hs @@ -1,4 +1,4 @@ -{-# LANGUAGE DeriveDataTypeable, RecordWildCards, OverloadedStrings #-} +{-# LANGUAGE CPP, DeriveDataTypeable, RecordWildCards, OverloadedStrings #-} module Main (main) where import Prelude hiding (interact, concat, unlines, null) @@ -16,7 +16,11 @@ data Options = Opts { compact :: Bool , indent :: Int , sort :: Bool } +#if __GLASGOW_HASKELL__ >= 912 + deriving (Data) +#else deriving (Data, Typeable) +#endif opts :: Options opts = Opts