diff --git a/.github/workflows/aeson-typescript.yml b/.github/workflows/aeson-typescript.yml index 9c63d79..e719130 100644 --- a/.github/workflows/aeson-typescript.yml +++ b/.github/workflows/aeson-typescript.yml @@ -18,6 +18,7 @@ jobs: - "9.2.8" - "9.4.7" - "9.6.3" + - "9.8.1" steps: - uses: actions/checkout@v2 @@ -71,7 +72,9 @@ jobs: - ghc: "9.4.7" yaml: "stack-9.4.7.yaml" - ghc: "9.6.3" - yaml: "stack.yaml" + yaml: "stack-9.6.3.yaml" + - ghc: "9.8.1" + yaml: "stack-9.8.1.yaml" steps: - uses: actions/checkout@v3 diff --git a/CHANGELOG.md b/CHANGELOG.md index 729808f..5cecaec 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +* GHC 9.8 support + ## 0.6.2.0 * Expose generic type constructors `T4` through `T10`. (We only exposed `T`, `T1`, `T2`, and `T3` before.) diff --git a/src/Data/Aeson/TypeScript/Transform.hs b/src/Data/Aeson/TypeScript/Transform.hs index f5494e1..7e02879 100644 --- a/src/Data/Aeson/TypeScript/Transform.hs +++ b/src/Data/Aeson/TypeScript/Transform.hs @@ -45,7 +45,9 @@ transformTypeFamilies eo@(ExtraTypeScriptOptions {..}) (AppT (ConT name) typ) name' <- lift $ newName (nameBase typeFamilyName <> "'") f <- lift $ newName "f" -#if MIN_VERSION_template_haskell(2,17,0) +#if MIN_VERSION_template_haskell(2,21,0) + let inst1 = DataD [] name' [PlainTV f BndrReq] Nothing [] [] +#elif MIN_VERSION_template_haskell(2,17,0) let inst1 = DataD [] name' [PlainTV f ()] Nothing [] [] #else let inst1 = DataD [] name' [PlainTV f] Nothing [] [] diff --git a/stack-9.6.3.yaml b/stack-9.6.3.yaml new file mode 100644 index 0000000..fa1a123 --- /dev/null +++ b/stack-9.6.3.yaml @@ -0,0 +1,5 @@ + +resolver: lts-22.6 + +packages: +- . diff --git a/stack-9.6.3.yaml.lock b/stack-9.6.3.yaml.lock new file mode 100644 index 0000000..1b74b0a --- /dev/null +++ b/stack-9.6.3.yaml.lock @@ -0,0 +1,12 @@ +# This file was autogenerated by Stack. +# You should not edit this file by hand. +# For more information, please see the documentation at: +# https://docs.haskellstack.org/en/stable/lock_files + +packages: [] +snapshots: +- completed: + sha256: 1b4c2669e26fa828451830ed4725e4d406acc25a1fa24fcc039465dd13d7a575 + size: 714100 + url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/22/6.yaml + original: lts-22.6 diff --git a/stack-9.8.1.yaml b/stack-9.8.1.yaml new file mode 100644 index 0000000..2f1a36f --- /dev/null +++ b/stack-9.8.1.yaml @@ -0,0 +1,5 @@ + +resolver: nightly-2024-01-26 + +packages: +- . diff --git a/stack-9.8.1.yaml.lock b/stack-9.8.1.yaml.lock new file mode 100644 index 0000000..3f8e18f --- /dev/null +++ b/stack-9.8.1.yaml.lock @@ -0,0 +1,12 @@ +# This file was autogenerated by Stack. +# You should not edit this file by hand. +# For more information, please see the documentation at: +# https://docs.haskellstack.org/en/stable/lock_files + +packages: [] +snapshots: +- completed: + sha256: 876a5c75d90718add42e1ad36d66000bf35050ce1c66748119897a32df613186 + size: 563963 + url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/nightly/2024/1/26.yaml + original: nightly-2024-01-26 diff --git a/stack.yaml b/stack.yaml index bfc9a75..fa1a123 100644 --- a/stack.yaml +++ b/stack.yaml @@ -1,5 +1,5 @@ -resolver: nightly-2023-11-14 +resolver: lts-22.6 packages: - . diff --git a/stack.yaml.lock b/stack.yaml.lock index dd4da80..1b74b0a 100644 --- a/stack.yaml.lock +++ b/stack.yaml.lock @@ -6,7 +6,7 @@ packages: [] snapshots: - completed: - sha256: 0eaacfc9de6b0ab46ab6026166d2ba7718ab06a8612086b3ee21d7667e682df0 - size: 698974 - url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/nightly/2023/11/14.yaml - original: nightly-2023-11-14 + sha256: 1b4c2669e26fa828451830ed4725e4d406acc25a1fa24fcc039465dd13d7a575 + size: 714100 + url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/22/6.yaml + original: lts-22.6