From c48f5a643de5ca600c654c0925977b007fb8fd84 Mon Sep 17 00:00:00 2001 From: Michael Peyton Jones Date: Wed, 13 Dec 2023 10:14:39 +0000 Subject: [PATCH 01/15] Floskell buildable on 9.6 --- docs/support/plugin-support.md | 2 +- haskell-language-server.cabal | 2 +- plugins/hls-floskell-plugin/hls-floskell-plugin.cabal | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/support/plugin-support.md b/docs/support/plugin-support.md index 553fa7c901..d9c8a16349 100644 --- a/docs/support/plugin-support.md +++ b/docs/support/plugin-support.md @@ -61,7 +61,7 @@ For example, a plugin to provide a formatter which has itself been abandoned has | `hls-rename-plugin` | 2 | 9.8 | | `hls-stylish-haskell-plugin` | 2 | 9.8 | | `hls-overloaded-record-dot-plugin` | 2 | | -| `hls-floskell-plugin` | 3 | 9.6, 9.8 | +| `hls-floskell-plugin` | 3 | 9.8 | | `hls-stan-plugin` | 3 | 9.2.(4-8) | | `hls-retrie-plugin` | 3 | 9.8 | | `hls-splice-plugin` | 3 | 9.8 | diff --git a/haskell-language-server.cabal b/haskell-language-server.cabal index 4af9b48c79..14547bba10 100644 --- a/haskell-language-server.cabal +++ b/haskell-language-server.cabal @@ -309,7 +309,7 @@ common overloadedRecordDot -- formatters common floskell - if flag(floskell) && impl(ghc < 9.5) + if flag(floskell) && impl(ghc < 9.7) build-depends: hls-floskell-plugin == 2.5.0.0 cpp-options: -Dhls_floskell diff --git a/plugins/hls-floskell-plugin/hls-floskell-plugin.cabal b/plugins/hls-floskell-plugin/hls-floskell-plugin.cabal index 605b74cfdf..9f0b1712ee 100644 --- a/plugins/hls-floskell-plugin/hls-floskell-plugin.cabal +++ b/plugins/hls-floskell-plugin/hls-floskell-plugin.cabal @@ -21,14 +21,14 @@ source-repository head location: https://github.com/haskell/haskell-language-server.git library - -- Plugins that need exactprint have not been updated for 9.8 yet - if impl(ghc >= 9.5) + -- floskell does not support GHC 9.8 yet + if impl(ghc >= 9.7) buildable: False exposed-modules: Ide.Plugin.Floskell hs-source-dirs: src build-depends: , base >=4.12 && <5 - , floskell ^>=0.10 + , floskell ^>=0.10.8 , ghcide == 2.5.0.0 , hls-plugin-api == 2.5.0.0 , lsp-types ^>=2.1 @@ -39,7 +39,7 @@ library default-language: Haskell2010 test-suite tests - if impl(ghc >= 9.5) + if impl(ghc >= 9.7) buildable: False type: exitcode-stdio-1.0 default-language: Haskell2010 From d7dcb139e337615b18e0c63b9af6295c100fcf73 Mon Sep 17 00:00:00 2001 From: Michael Peyton Jones Date: Wed, 13 Dec 2023 10:31:06 +0000 Subject: [PATCH 02/15] Ormolu supports 9.8 --- docs/support/plugin-support.md | 2 +- haskell-language-server.cabal | 2 +- plugins/hls-ormolu-plugin/hls-ormolu-plugin.cabal | 5 ----- 3 files changed, 2 insertions(+), 7 deletions(-) diff --git a/docs/support/plugin-support.md b/docs/support/plugin-support.md index d9c8a16349..fda146c1f8 100644 --- a/docs/support/plugin-support.md +++ b/docs/support/plugin-support.md @@ -57,7 +57,7 @@ For example, a plugin to provide a formatter which has itself been abandoned has | `hls-hlint-plugin` | 2 | 9.8 | | `hls-module-name-plugin` | 2 | | | `hls-qualify-imported-names-plugin` | 2 | | -| `hls-ormolu-plugin` | 2 | 9.8 | +| `hls-ormolu-plugin` | 2 | | | `hls-rename-plugin` | 2 | 9.8 | | `hls-stylish-haskell-plugin` | 2 | 9.8 | | `hls-overloaded-record-dot-plugin` | 2 | | diff --git a/haskell-language-server.cabal b/haskell-language-server.cabal index 14547bba10..276b4ba316 100644 --- a/haskell-language-server.cabal +++ b/haskell-language-server.cabal @@ -319,7 +319,7 @@ common fourmolu cpp-options: -Dhls_fourmolu common ormolu - if flag(ormolu) && impl(ghc < 9.7) + if flag(ormolu) build-depends: hls-ormolu-plugin == 2.5.0.0 cpp-options: -Dhls_ormolu diff --git a/plugins/hls-ormolu-plugin/hls-ormolu-plugin.cabal b/plugins/hls-ormolu-plugin/hls-ormolu-plugin.cabal index 59faf98e75..71d9fccd4b 100644 --- a/plugins/hls-ormolu-plugin/hls-ormolu-plugin.cabal +++ b/plugins/hls-ormolu-plugin/hls-ormolu-plugin.cabal @@ -23,9 +23,6 @@ source-repository head location: https://github.com/haskell/haskell-language-server.git library - -- Plugins that need exactprint have not been updated for 9.8 yet - if impl(ghc >= 9.7) - buildable: False exposed-modules: Ide.Plugin.Ormolu hs-source-dirs: src build-depends: @@ -47,8 +44,6 @@ library default-language: Haskell2010 test-suite tests - if impl(ghc >= 9.7) - buildable: False type: exitcode-stdio-1.0 default-language: Haskell2010 hs-source-dirs: test From 2d8be024f31a71d420718845b708d217dad5156e Mon Sep 17 00:00:00 2001 From: Michael Peyton Jones Date: Wed, 13 Dec 2023 10:59:02 +0000 Subject: [PATCH 03/15] Fourmolu supports 9.8 --- docs/support/plugin-support.md | 2 +- haskell-language-server.cabal | 2 +- .../hls-fourmolu-plugin/hls-fourmolu-plugin.cabal | 13 +------------ 3 files changed, 3 insertions(+), 14 deletions(-) diff --git a/docs/support/plugin-support.md b/docs/support/plugin-support.md index fda146c1f8..017bcd24a4 100644 --- a/docs/support/plugin-support.md +++ b/docs/support/plugin-support.md @@ -52,7 +52,7 @@ For example, a plugin to provide a formatter which has itself been abandoned has | `hls-eval-plugin` | 2 | | | `hls-explicit-fixity-plugin` | 2 | | | `hls-explicit-record-fields-plugin` | 2 | | -| `hls-fourmolu-plugin` | 2 | 9.8 | +| `hls-fourmolu-plugin` | 2 | | | `hls-gadt-plugin` | 2 | 9.8 | | `hls-hlint-plugin` | 2 | 9.8 | | `hls-module-name-plugin` | 2 | | diff --git a/haskell-language-server.cabal b/haskell-language-server.cabal index 276b4ba316..34143073bd 100644 --- a/haskell-language-server.cabal +++ b/haskell-language-server.cabal @@ -314,7 +314,7 @@ common floskell cpp-options: -Dhls_floskell common fourmolu - if flag(fourmolu) && (impl(ghc < 9.8.0) || flag(ignore-plugins-ghc-bounds)) + if flag(fourmolu) build-depends: hls-fourmolu-plugin == 2.5.0.0 cpp-options: -Dhls_fourmolu diff --git a/plugins/hls-fourmolu-plugin/hls-fourmolu-plugin.cabal b/plugins/hls-fourmolu-plugin/hls-fourmolu-plugin.cabal index a5abfe47ea..80d2ac18df 100644 --- a/plugins/hls-fourmolu-plugin/hls-fourmolu-plugin.cabal +++ b/plugins/hls-fourmolu-plugin/hls-fourmolu-plugin.cabal @@ -23,11 +23,6 @@ source-repository head location: git://github.com/haskell/haskell-language-server.git library - -- Plugins that need exactprint have not been updated for 9.8 yet - if impl(ghc >= 9.8) - buildable: False - else - buildable: True exposed-modules: Ide.Plugin.Fourmolu hs-source-dirs: src @@ -48,10 +43,8 @@ library if impl(ghc >= 9.0) && impl(ghc < 9.2) build-depends: fourmolu ^>= 0.11 - elif impl(ghc >= 9.2) && impl(ghc < 9.8) + else build-depends: fourmolu ^>= 0.14 - else - buildable: False -- fourmolu 0.9.0 fails to build on Windows CI for reasons unknown if impl(ghc >= 9.2) && os(windows) && impl(ghc < 9.4) @@ -59,10 +52,6 @@ library default-language: Haskell2010 test-suite tests - if impl(ghc >= 9.8) - buildable: False - else - buildable: True type: exitcode-stdio-1.0 default-language: Haskell2010 hs-source-dirs: test From c6b6f086ed567991f84e090316bc152e4f293ba4 Mon Sep 17 00:00:00 2001 From: Michael Peyton Jones Date: Wed, 13 Dec 2023 11:03:23 +0000 Subject: [PATCH 04/15] Fix some conditional logic --- haskell-language-server.cabal | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/haskell-language-server.cabal b/haskell-language-server.cabal index 34143073bd..6e7e9d5831 100644 --- a/haskell-language-server.cabal +++ b/haskell-language-server.cabal @@ -309,7 +309,7 @@ common overloadedRecordDot -- formatters common floskell - if flag(floskell) && impl(ghc < 9.7) + if flag(floskell) && (impl(ghc < 9.7) || flag(ignore-plugins-ghc-bounds)) build-depends: hls-floskell-plugin == 2.5.0.0 cpp-options: -Dhls_floskell @@ -556,7 +556,7 @@ test-suite func-test if flag(eval) cpp-options: -Dhls_eval -- formatters - if flag(floskell) && (impl(ghc < 9.2.1) || flag(ignore-plugins-ghc-bounds)) + if flag(floskell) cpp-options: -Dhls_floskell if flag(fourmolu) cpp-options: -Dhls_fourmolu From 0f9e874af40bbef9560c6bcce046590513e1359f Mon Sep 17 00:00:00 2001 From: Michael Peyton Jones Date: Wed, 13 Dec 2023 11:18:58 +0000 Subject: [PATCH 05/15] Fix stack --- stack.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stack.yaml b/stack.yaml index 504971dca4..3475018c59 100644 --- a/stack.yaml +++ b/stack.yaml @@ -20,7 +20,7 @@ packages: - ./plugins/hls-explicit-fixity-plugin - ./plugins/hls-explicit-imports-plugin - ./plugins/hls-explicit-record-fields-plugin - # - ./plugins/hls-floskell-plugin + - ./plugins/hls-floskell-plugin - ./plugins/hls-fourmolu-plugin - ./plugins/hls-gadt-plugin - ./plugins/hls-hlint-plugin From f9f8b097cc1c458217ed9cd615f88b5301b3d426 Mon Sep 17 00:00:00 2001 From: Michael Peyton Jones Date: Wed, 13 Dec 2023 11:19:34 +0000 Subject: [PATCH 06/15] Fix a cabal file --- .../hls-overloaded-record-dot-plugin.cabal | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/hls-overloaded-record-dot-plugin/hls-overloaded-record-dot-plugin.cabal b/plugins/hls-overloaded-record-dot-plugin/hls-overloaded-record-dot-plugin.cabal index 1c9a8b5486..13b4f17da4 100644 --- a/plugins/hls-overloaded-record-dot-plugin/hls-overloaded-record-dot-plugin.cabal +++ b/plugins/hls-overloaded-record-dot-plugin/hls-overloaded-record-dot-plugin.cabal @@ -22,11 +22,11 @@ common warnings ghc-options: -Wall library + import: warnings if impl(ghc < 9.2) buildable: False else buildable: True - import: warnings exposed-modules: Ide.Plugin.OverloadedRecordDot build-depends: , base >=4.16 && <5 From 3084ece0ab1a8dcdfeb1e2bbd777c120c8412c63 Mon Sep 17 00:00:00 2001 From: Michael Peyton Jones Date: Wed, 13 Dec 2023 11:33:30 +0000 Subject: [PATCH 07/15] more fix stack --- stack.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stack.yaml b/stack.yaml index 3475018c59..603fe410e8 100644 --- a/stack.yaml +++ b/stack.yaml @@ -43,7 +43,7 @@ allow-newer: true extra-deps: - Cabal-syntax-3.10.1.0@sha256:bb835ebab577fd0f9c11dab96210dbb8d68ffc62652576f4b092563c345930e7,7434 -# - floskell-0.10.7 +- floskell-0.10.8 - hiedb-0.4.4.0 - hie-bios-0.13.1 - implicit-hie-0.1.4.0 From c5ad42a59523b0dbd60f3cbb0a707ed5f2f6714f Mon Sep 17 00:00:00 2001 From: Michael Peyton Jones Date: Wed, 13 Dec 2023 11:48:14 +0000 Subject: [PATCH 08/15] More --- stack.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/stack.yaml b/stack.yaml index 603fe410e8..9f2368d7b4 100644 --- a/stack.yaml +++ b/stack.yaml @@ -55,6 +55,7 @@ extra-deps: - lsp-2.3.0.0 - lsp-test-0.16.0.1 - lsp-types-2.1.0.0 +- monad-dijsktra-0.1.1.4 # stan dependencies not found in the stackage snapshot - stan-0.1.0.2 From c692ab95d4937f84a3e12c584346f6476f57e721 Mon Sep 17 00:00:00 2001 From: Michael Peyton Jones Date: Wed, 13 Dec 2023 12:00:45 +0000 Subject: [PATCH 09/15] Grumble spelling --- stack.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stack.yaml b/stack.yaml index 9f2368d7b4..4fbccfc440 100644 --- a/stack.yaml +++ b/stack.yaml @@ -55,7 +55,7 @@ extra-deps: - lsp-2.3.0.0 - lsp-test-0.16.0.1 - lsp-types-2.1.0.0 -- monad-dijsktra-0.1.1.4 +- monad-dijkstra-0.1.1.4 # stan dependencies not found in the stackage snapshot - stan-0.1.0.2 From ae0913a907072a839e2fb83b26b96781f5a5ff40 Mon Sep 17 00:00:00 2001 From: Michael Peyton Jones Date: Wed, 13 Dec 2023 12:15:32 +0000 Subject: [PATCH 10/15] More stack --- stack.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stack.yaml b/stack.yaml index 4fbccfc440..39a74bf6ca 100644 --- a/stack.yaml +++ b/stack.yaml @@ -43,7 +43,7 @@ allow-newer: true extra-deps: - Cabal-syntax-3.10.1.0@sha256:bb835ebab577fd0f9c11dab96210dbb8d68ffc62652576f4b092563c345930e7,7434 -- floskell-0.10.8 +- floskell-0.11 - hiedb-0.4.4.0 - hie-bios-0.13.1 - implicit-hie-0.1.4.0 From f6fce516e153f83729052b79c7676bef5b4a55cf Mon Sep 17 00:00:00 2001 From: Michael Peyton Jones Date: Wed, 13 Dec 2023 12:20:39 +0000 Subject: [PATCH 11/15] Argh --- stack.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stack.yaml b/stack.yaml index 39a74bf6ca..4e4f91f883 100644 --- a/stack.yaml +++ b/stack.yaml @@ -43,7 +43,7 @@ allow-newer: true extra-deps: - Cabal-syntax-3.10.1.0@sha256:bb835ebab577fd0f9c11dab96210dbb8d68ffc62652576f4b092563c345930e7,7434 -- floskell-0.11 +- floskell-0.11.0 - hiedb-0.4.4.0 - hie-bios-0.13.1 - implicit-hie-0.1.4.0 From a3a12e4c3c8ff8baa182c3caac040cf700dd7123 Mon Sep 17 00:00:00 2001 From: Michael Peyton Jones Date: Wed, 13 Dec 2023 12:29:12 +0000 Subject: [PATCH 12/15] Bump index-state, remove some allow-newers --- cabal.project | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/cabal.project b/cabal.project index 8bc0031e75..d68a81b15e 100644 --- a/cabal.project +++ b/cabal.project @@ -35,7 +35,7 @@ packages: ./plugins/hls-refactor-plugin ./plugins/hls-overloaded-record-dot-plugin -index-state: 2023-12-10T23:30:17Z +index-state: 2023-12-13T00:00:00Z tests: True test-show-details: direct @@ -96,12 +96,6 @@ if impl(ghc >= 9.7) ghc-trace-events:text, -- https://github.com/haskell-primitive/primitive-unlifted/issues/39 primitive-unlifted:bytestring, - -- https://github.com/obsidiansystems/constraints-extras/issues/54 - constraints-extras:base, - constraints-extras:template-haskell, -- https://github.com/obsidiansystems/commutative-semigroups/issues/13 commutative-semigroups:base, commutative-semigroups:template-haskell, - -- https://github.com/kcsongor/generic-lens/issues/158 - generic-lens:text, - generic-lens-core:text, From 3d714e22e9d1bbd5d2d380b0b0c6ea6cb5fb9910 Mon Sep 17 00:00:00 2001 From: Michael Peyton Jones Date: Wed, 13 Dec 2023 13:03:29 +0000 Subject: [PATCH 13/15] boo --- stack.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/stack.yaml b/stack.yaml index 4e4f91f883..3a8ff5bc13 100644 --- a/stack.yaml +++ b/stack.yaml @@ -56,6 +56,8 @@ extra-deps: - lsp-test-0.16.0.1 - lsp-types-2.1.0.0 - monad-dijkstra-0.1.1.4 +- attoparsec-aeson-2.2.0.1 +- integer-conversion-0.1.0.1 # stan dependencies not found in the stackage snapshot - stan-0.1.0.2 From 823c833d143c604c9c9d23537ccfae2e34c7a81a Mon Sep 17 00:00:00 2001 From: Michael Peyton Jones Date: Wed, 13 Dec 2023 13:30:31 +0000 Subject: [PATCH 14/15] More --- stack.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/stack.yaml b/stack.yaml index 3a8ff5bc13..0eda80e64a 100644 --- a/stack.yaml +++ b/stack.yaml @@ -58,6 +58,7 @@ extra-deps: - monad-dijkstra-0.1.1.4 - attoparsec-aeson-2.2.0.1 - integer-conversion-0.1.0.1 +- aeson-2.2.1.0 # stan dependencies not found in the stackage snapshot - stan-0.1.0.2 From b52c6275f93ef57aa6bb02172fd68d029461fc71 Mon Sep 17 00:00:00 2001 From: Michael Peyton Jones Date: Wed, 13 Dec 2023 14:39:10 +0000 Subject: [PATCH 15/15] Redo stack deps entirely --- stack.yaml | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/stack.yaml b/stack.yaml index 0eda80e64a..922b55f461 100644 --- a/stack.yaml +++ b/stack.yaml @@ -42,26 +42,23 @@ ghc-options: allow-newer: true extra-deps: -- Cabal-syntax-3.10.1.0@sha256:bb835ebab577fd0f9c11dab96210dbb8d68ffc62652576f4b092563c345930e7,7434 -- floskell-0.11.0 +- floskell-0.10.8 +- retrie-1.2.2 - hiedb-0.4.4.0 -- hie-bios-0.13.1 - implicit-hie-0.1.4.0 -- algebraic-graphs-0.6.1 -- retrie-1.2.2 -- hw-fingertree-0.1.2.1 -- hw-prim-0.6.3.2 -- ansi-terminal-0.11.5 +- hie-bios-0.13.1 - lsp-2.3.0.0 - lsp-test-0.16.0.1 - lsp-types-2.1.0.0 -- monad-dijkstra-0.1.1.4 -- attoparsec-aeson-2.2.0.1 +- attoparsec-aeson-2.1.0.0 +- hw-fingertree-0.1.2.1 - integer-conversion-0.1.0.1 -- aeson-2.2.1.0 +- monad-dijkstra-0.1.1.4 +- hw-prim-0.6.3.2 +- optparse-applicative-0.17.1.0 -# stan dependencies not found in the stackage snapshot -- stan-0.1.0.2 +# stan and friends +- stan-0.1.1.0 - clay-0.14.0 - colourista-0.1.0.2 - dir-traverse-0.2.3.0