From 2689ea2db941582eb90cf8a4ef67587f28b4c30b Mon Sep 17 00:00:00 2001 From: jneira Date: Thu, 11 Nov 2021 20:37:36 +0100 Subject: [PATCH 01/50] Use hackage version of czipwith --- cabal-ghc901.project | 8 +------- cabal.project | 2 +- stack-9.0.1.yaml | 4 ---- 3 files changed, 2 insertions(+), 12 deletions(-) diff --git a/cabal-ghc901.project b/cabal-ghc901.project index ebd06a33a5..7924e742d1 100644 --- a/cabal-ghc901.project +++ b/cabal-ghc901.project @@ -33,12 +33,6 @@ package * ghc-options: -haddock test-show-details: direct -source-repository-package - type: git - location: https://github.com/mithrandi/czipwith.git - tag: b6245884ae83e00dd2b5261762549b37390179f8 - -- https://github.com/lspitzner/czipwith/pull/2 - source-repository-package type: git location: https://github.com/anka-213/th-extras @@ -55,7 +49,7 @@ source-repository-package write-ghc-environment-files: never -index-state: 2021-10-04T02:41:06Z +index-state: 2021-11-11T19:25:51Z constraints: -- These plugins don't work on GHC9 yet diff --git a/cabal.project b/cabal.project index 08c0fbbdd5..ebcb150c1b 100644 --- a/cabal.project +++ b/cabal.project @@ -38,7 +38,7 @@ package * write-ghc-environment-files: never -index-state: 2021-10-04T02:41:06Z +index-state: 2021-11-11T19:25:51Z constraints: hyphenation +embed diff --git a/stack-9.0.1.yaml b/stack-9.0.1.yaml index 56656bc7fb..767023c089 100644 --- a/stack-9.0.1.yaml +++ b/stack-9.0.1.yaml @@ -57,10 +57,6 @@ extra-deps: - lsp-test-0.14.0.1 - sqlite-simple-0.4.18.0 -- github: mithrandi/czipwith - commit: b6245884ae83e00dd2b5261762549b37390179f8 -# https://github.com/lspitzner/czipwith/pull/2 - - github: anka-213/th-extras commit: 57a97b4df128eb7b360e8ab9c5759392de8d1659 # https://github.com/mokus0/th-extras/pull/8 From faafbf8d0a0d6ffc76771f84659e2fcda61b46b2 Mon Sep 17 00:00:00 2001 From: jneira Date: Thu, 11 Nov 2021 21:06:11 +0100 Subject: [PATCH 02/50] Update stack.yaml's --- stack-8.10.7.yaml | 2 +- stack-9.0.1.yaml | 10 +--------- 2 files changed, 2 insertions(+), 10 deletions(-) diff --git a/stack-8.10.7.yaml b/stack-8.10.7.yaml index 947620ba66..f547b801b0 100644 --- a/stack-8.10.7.yaml +++ b/stack-8.10.7.yaml @@ -1,4 +1,4 @@ -resolver: lts-18.10 +resolver: lts-18.16 packages: - . diff --git a/stack-9.0.1.yaml b/stack-9.0.1.yaml index 767023c089..0fbe8b9119 100644 --- a/stack-9.0.1.yaml +++ b/stack-9.0.1.yaml @@ -1,4 +1,4 @@ -resolver: nightly-2021-09-16 +resolver: nightly-2021-11-06 packages: - . @@ -36,12 +36,8 @@ extra-deps: - bytestring-encoding-0.1.0.0@sha256:460b49779fbf0112e8e2f1753c1ed9131eb18827600c298f4d6bb51c4e8c1c0d,1727 - dependent-map-0.4.0.0@sha256:ca2b131046f4340a1c35d138c5a003fe4a5be96b14efc26291ed35fd08c62221,1657 - dependent-sum-0.7.1.0@sha256:0e419237f5b86da3659772afff9cab355c0f8d5b3fdb15a5b30e673d8dc83941,2147 -- extra-1.7.9 - floskell-0.10.5 -- fourmolu-0.4.0.0 -- ghc-source-gen-0.4.1.0 - heapsize-0.3.0.1@sha256:0b69aa97a46d819b700ac7b145f3b5493c3565cf2c5b8298682238d405d0326e,1417 -- hie-bios-0.7.6 - hiedb-0.4.1.0 - hspec-2.7.10 - hspec-core-2.7.10 @@ -78,10 +74,6 @@ extra-deps: - prettyprinter-1.7.1@sha256:9c43c9d8c3cd9f445596e5a2379574bba87f935a4d1fa41b5407ee3cf4edc743,6987 - operational-0.2.4.0 -- github: diagrams/active - commit: ca23431a8dfa013992f9164ccc882a3277361f17 -# https://github.com/diagrams/active/pull/36 - # end of shake-bench dpendencies # due to floskell-0.10.5 and diagrams-core-1.5.0 From ae02ba39269657a709f621387fe9ef2fb4b96f98 Mon Sep 17 00:00:00 2001 From: jneira Date: Thu, 11 Nov 2021 21:07:16 +0100 Subject: [PATCH 03/50] Remove source czipwith --- configuration-ghc-901.nix | 7 ------- 1 file changed, 7 deletions(-) diff --git a/configuration-ghc-901.nix b/configuration-ghc-901.nix index 33c0cfeee4..0b2878408f 100644 --- a/configuration-ghc-901.nix +++ b/configuration-ghc-901.nix @@ -27,13 +27,6 @@ let sha256 = "1nyhc9mrnxsl21ksnpp0ryki4wgk49r581yy504g2gjq6x3bkb59"; }) { }; - czipwith = hself.callCabal2nix "czipwith" (pkgs.fetchFromGitHub { - owner = "mithrandi"; - repo = "czipwith"; - rev = "b6245884ae83e00dd2b5261762549b37390179f8"; - sha256 = "2uSoGyrxT/OstRcpx55kwP4JwjPbWLxD72LajeyQV0E="; - }) { }; - hie-bios = hself.callCabal2nix "hie-bios" (builtins.fetchTarball { url = "https://hackage.haskell.org/package/hie-bios-0.7.6/hie-bios-0.7.6.tar.gz"; From 4462be596edc1b2b5d6734e99ee98a41b9cf9839 Mon Sep 17 00:00:00 2001 From: jneira Date: Thu, 11 Nov 2021 21:07:55 +0100 Subject: [PATCH 04/50] Update index and clean cabal-ghc921.project --- cabal-ghc921.project | 211 +------------------------------------------ 1 file changed, 3 insertions(+), 208 deletions(-) diff --git a/cabal-ghc921.project b/cabal-ghc921.project index 9006511319..71df56b325 100644 --- a/cabal-ghc921.project +++ b/cabal-ghc921.project @@ -24,34 +24,17 @@ packages: ./plugins/hls-ormolu-plugin ./plugins/hls-call-hierarchy-plugin +with-compiler: ghc-9.2.1 + tests: true package * ghc-options: -haddock test-show-details: direct -source-repository-package - type: git - location: https://github.com/mithrandi/czipwith.git - tag: b6245884ae83e00dd2b5261762549b37390179f8 - -- https://github.com/lspitzner/czipwith/pull/2 - --- Head of hiedb -source-repository-package - type: git - location: https://github.com/wz1000/HieDb - tag: 45c4671db2da8ce5cd11e964573846cfbf3bbec8 - --- GHC 9.2 for ghc-check -source-repository-package - type: git - location: https://github.com/fendor/ghc-check - tag: 224f3901eaa1b32a27e097968afd4a3894efa77e - -- https://github.com/pepeiborra/ghc-check/pull/14/files - write-ghc-environment-files: never -index-state: 2021-09-29T21:38:47Z +index-state: 2021-11-11T19:25:51Z constraints: -- These plugins doesn't work on GHC92 yet @@ -78,191 +61,3 @@ allow-newer: diagrams:diagrams-core, Chart-diagrams:diagrams-core, SVGFonts:diagrams-core - -constraints: - Agda ==2.6.1.3, - Diff ==0.4.0, - EdisonAPI ==1.3.1, - EdisonCore ==1.3.2.1, - FPretty ==1.1, - HTTP ==4000.3.16, - HUnit ==1.6.2.0, - QuickCheck ==2.14.2, - Spock-core ==0.14.0.0, - aeson ==1.5.6.0, - aivika ==5.9.1, - aivika-transformers ==5.9.1, - alex ==3.2.6, - ansi-pretty ==0.1.2.2, - arith-encode ==1.0.2, - async ==2.2.3, - async-pool ==0.9.1, - attoparsec ==0.13.2.5 || ==0.14.1, - barbies-th ==0.1.8, - base-compat ==0.11.2, - base-compat-batteries ==0.11.2, - base16-bytestring ==1.0.1.0, - basement ==0.0.12, - bits ==0.5.3, - blaze-builder ==0.4.2.1, - blaze-textual ==0.2.1.0, - boomerang ==1.4.7, - bound ==2.0.3, - box-tuples ==0.2.0.4, - byteslice ==0.2.5.2, - bytesmith ==0.3.7.0, - bytestring-strict-builder ==0.4.5.4, - cabal-doctest ==1.0.8, - cantor-pairing ==0.2.0.1, - cassava ==0.5.2.0, - cborg ==0.2.5.0, - cereal ==0.5.8.1, - charset ==0.3.8, - chaselev-deque ==0.5.0.5, - classy-prelude ==1.5.0, - combinat ==0.2.10.0, - commonmark-extensions ==0.2.1.2, - conduit ==1.3.4.1, - constraints ==0.13, - constraints-extras ==0.3.1.0, - cql ==4.0.3, - critbit ==0.2.0.0, - cryptonite ==0.29, - data-default-instances-new-base ==0.0.2, - data-dword ==0.3.2, - data-r-tree ==0.6.0, - datetime ==0.3.1, - deferred-folds ==0.9.17, - dependent-sum-template ==0.1.0.3, - deriving-compat ==0.5.10, - diagrams-lib ==1.4.4, - doctest ==0.18.1, - dom-lt ==0.2.2.1, - drinkery ==0.4, - edit-distance ==0.2.2.1, - emacs-module ==0.1.1, - endo ==0.3.0.1, - entropy ==0.4.1.6, - enumeration ==0.2.0, - extra ==1.7.9, - fgl ==5.7.0.3, - filepattern ==0.1.2, - focus ==1.0.2, - free-algebras ==0.1.0.1, - free-functors ==1.2.1, - generic-data ==0.9.2.0, - generic-deriving ==1.14, - generic-lens ==2.2.0.0, - generic-lens-core ==2.2.0.0, - generic-optics ==2.2.0.0, - generics-sop ==0.5.1.1, - geniplate-mirror ==0.7.8, - ghc-events ==0.17.0, - happy ==1.20.0, - hashtables ==1.2.4.1, - haskeline ==0.7.5.0, - haskell-src-exts ==1.23.1, - haskell-src-meta ==0.8.7, - haxl ==2.3.0.0, - heterocephalus ==1.0.5.4, - hgeometry ==0.12.0.4, - hgeometry-ipe ==0.12.0.0, - hscolour ==1.24.4, - hslogger ==1.3.1.0, - hspec-core ==2.8.3, - hspec-discover ==2.8.3, - hspec-expectations ==0.8.2, - hspec-meta ==2.7.8, - hspec-wai ==0.11.1, - http-types ==0.12.3, - http2 ==3.0.2, - hvect ==0.4.0.0, - hxt ==9.3.1.22, - inj-base ==0.2.0.0, - inspection-testing ==0.4.6.0, - invariant ==0.5.4, - io-choice ==0.0.7, - iproute ==1.7.11, - language-c ==0.9.0.1, - language-haskell-extract ==0.2.4, - language-javascript ==0.7.1.0, - lens ==5.0.1, - lens-family-th ==0.5.2.0, - list-t ==1.0.4, - lockfree-queue ==0.2.3.1, - memory ==0.16.0, - microlens-ghc ==0.4.13, - monad-validate ==1.2.0.0, - monadplus ==1.4.2, - mono-traversable ==1.0.15.1, - mono-traversable-keys ==0.1.0, - mustache ==2.3.1, - network ==3.1.2.2, - newtype-generics ==0.6, - obdd ==0.8.2, - optics-th ==0.4, - packman ==0.5.0, - pandoc ==2.14.2, - parameterized-utils ==2.1.3.0, - partial-isomorphisms ==0.2.2.1, - pem ==0.2.4, - persistent ==2.13.0.3 || ==2.13.1.1, - plots ==0.1.1.2, - pointed ==5.0.2, - posix-api ==0.3.5.0, - primitive-extras ==0.10.1.1, - primitive-sort ==0.1.0.0, - primitive-unlifted ==0.1.3.0, - proto3-wire ==1.2.2, - quickcheck-instances ==0.3.25.2, - random ==1.2.0, - relude ==1.0.0.1, - row-types ==1.0.1.0, - safe ==0.3.19, - safecopy ==0.10.4.2, - salak ==0.3.6, - securemem ==0.1.10, - semialign ==1.2, - semigroupoids ==5.3.5, - serialise ==0.2.3.0, - servant ==0.18.3, - shake ==0.19.5, - shakespeare ==2.0.25, - singletons ==3.0, - singletons-base ==3.0, - siphash ==1.0.3, - snap-core ==1.0.4.2, - streaming-commons ==0.2.2.1, - streamly ==0.8.0, - subcategories ==0.1.1.0, - test-framework ==0.8.2.0, - text-format ==0.3.2, - text-short ==0.1.3, - text-show ==3.9, - th-desugar ==1.12, - th-extras ==0.0.0.4, - threads ==0.5.1.6, - tls ==1.5.5, - tpdb ==2.2.0, - tree-diff ==0.2, - true-name ==0.1.0.3, - uniplate ==1.6.13, - unordered-containers ==0.2.14.0, - validity ==0.11.0.1, - vector-builder ==0.3.8.2, - vector-circular ==0.1.3, - vector-th-unbox ==0.2.1.9, - vinyl ==0.13.3, - vty ==5.33, - wai-app-static ==3.1.7.2, - wai-extra ==3.1.6, - wai-middleware-static ==0.9.0, - warp ==3.3.17, - winery ==1.3.2, - witherable ==0.4.1, - x509 ==1.7.5, - x509-validation ==1.6.11, - xlsx ==0.8.4, - xml-hamlet ==0.5.0.1, - yaml ==0.11.5.0, - yesod-core ==1.6.21.0 From 169d0cb3bca29292ed026d789b1536c39692bc24 Mon Sep 17 00:00:00 2001 From: Javier Neira Date: Fri, 12 Nov 2021 07:44:33 +0100 Subject: [PATCH 05/50] extra-1.7.9 has a breaking change so no way --- stack-9.0.1.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/stack-9.0.1.yaml b/stack-9.0.1.yaml index 0fbe8b9119..616fd8b6ed 100644 --- a/stack-9.0.1.yaml +++ b/stack-9.0.1.yaml @@ -36,6 +36,7 @@ extra-deps: - bytestring-encoding-0.1.0.0@sha256:460b49779fbf0112e8e2f1753c1ed9131eb18827600c298f4d6bb51c4e8c1c0d,1727 - dependent-map-0.4.0.0@sha256:ca2b131046f4340a1c35d138c5a003fe4a5be96b14efc26291ed35fd08c62221,1657 - dependent-sum-0.7.1.0@sha256:0e419237f5b86da3659772afff9cab355c0f8d5b3fdb15a5b30e673d8dc83941,2147 +- extra-1.7.9 - floskell-0.10.5 - heapsize-0.3.0.1@sha256:0b69aa97a46d819b700ac7b145f3b5493c3565cf2c5b8298682238d405d0326e,1417 - hiedb-0.4.1.0 From a1afc5997280359fd189645b201ad734caebb834 Mon Sep 17 00:00:00 2001 From: Javier Neira Date: Wed, 17 Nov 2021 06:58:26 +0100 Subject: [PATCH 06/50] Increase resources for circleci As for November 16, circleci has set a timeout of 1 hour for jobs in free plans Trying to increase resources to make the build faster as suggested by its support center --- .circleci/config.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.circleci/config.yml b/.circleci/config.yml index ed50e17679..0e189909a4 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -2,6 +2,7 @@ defaults: &defaults working_directory: ~/build docker: - image: alanz/haskell-hie-ci + resource_class: large steps: - checkout - run: From 3f1ff77a370af553edff33c3850f76ba64528d55 Mon Sep 17 00:00:00 2001 From: jneira Date: Wed, 17 Nov 2021 08:53:15 +0100 Subject: [PATCH 07/50] Use more threads reduce build times --- .circleci/config.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 0e189909a4..95e6d55319 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -48,7 +48,7 @@ defaults: &defaults name: Stack setup command: | if [[ -z "$SKIP_CI" ]]; then - stack -j2 --stack-yaml=${STACK_FILE} setup + stack -j4 --stack-yaml=${STACK_FILE} setup fi - run: @@ -56,7 +56,7 @@ defaults: &defaults # need j1, else ghc-lib-parser triggers OOM command: | if [[ -z "$SKIP_CI" ]]; then - stack -j1 --stack-yaml=${STACK_FILE} install --no-terminal + stack -j4 --stack-yaml=${STACK_FILE} install --no-terminal fi no_output_timeout: 30m @@ -64,7 +64,7 @@ defaults: &defaults name: Build Testsuite without running it command: | if [[ -z "$SKIP_CI" ]]; then - stack -j1 --stack-yaml=${STACK_FILE} build --test --no-run-tests --no-terminal + stack -j4 --stack-yaml=${STACK_FILE} build --test --no-run-tests --no-terminal fi no_output_timeout: 30m From 4307cc5f6de14444a4104227a533680edbbb4332 Mon Sep 17 00:00:00 2001 From: jneira Date: Wed, 17 Nov 2021 10:36:56 +0100 Subject: [PATCH 08/50] Correct runs-on field --- .github/workflows/nix.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/nix.yml b/.github/workflows/nix.yml index c1f4d3710b..e38e94b37d 100644 --- a/.github/workflows/nix.yml +++ b/.github/workflows/nix.yml @@ -68,7 +68,7 @@ jobs: # 2. Nix files are changed (runs on PR) build: needs: pre_job - runs-on: matrix.os + runs-on: ${{ matrix.os }} env: HAS_TOKEN: ${{ secrets.HLS_CACHIX_AUTH_TOKEN != '' }} if: (needs.pre_job.outputs.should_skip_build != 'true' && needs.pre_job.outputs.should_skip_pr != 'true') || (github.repository_owner == 'haskell' && github.ref == 'refs/heads/master') From 00f4fe4d74501ab547037d5c3d7c50e9e45e6769 Mon Sep 17 00:00:00 2001 From: jneira Date: Thu, 11 Nov 2021 21:06:11 +0100 Subject: [PATCH 09/50] Update stack.yaml's --- stack-9.0.1.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/stack-9.0.1.yaml b/stack-9.0.1.yaml index 616fd8b6ed..0fbe8b9119 100644 --- a/stack-9.0.1.yaml +++ b/stack-9.0.1.yaml @@ -36,7 +36,6 @@ extra-deps: - bytestring-encoding-0.1.0.0@sha256:460b49779fbf0112e8e2f1753c1ed9131eb18827600c298f4d6bb51c4e8c1c0d,1727 - dependent-map-0.4.0.0@sha256:ca2b131046f4340a1c35d138c5a003fe4a5be96b14efc26291ed35fd08c62221,1657 - dependent-sum-0.7.1.0@sha256:0e419237f5b86da3659772afff9cab355c0f8d5b3fdb15a5b30e673d8dc83941,2147 -- extra-1.7.9 - floskell-0.10.5 - heapsize-0.3.0.1@sha256:0b69aa97a46d819b700ac7b145f3b5493c3565cf2c5b8298682238d405d0326e,1417 - hiedb-0.4.1.0 From ba43bab7e6deb4e675480546d2891f1bcc0c1eb0 Mon Sep 17 00:00:00 2001 From: jneira Date: Thu, 11 Nov 2021 08:09:55 +0100 Subject: [PATCH 10/50] Dont fail fast if we are checking --- .github/workflows/hackage.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/hackage.yml b/.github/workflows/hackage.yml index 09785cce48..fc0d95222e 100644 --- a/.github/workflows/hackage.yml +++ b/.github/workflows/hackage.yml @@ -9,6 +9,7 @@ jobs: check-and-upload-tarballs: runs-on: ubuntu-latest strategy: + fail-fast: ${{ !contains(github.head_ref, 'check') }} matrix: package: ["hie-compat", "hls-graph", "shake-bench", "hls-plugin-api", "ghcide", "hls-test-utils", From 757e394c9b245405097b28eb7e0abdf5bd936bdc Mon Sep 17 00:00:00 2001 From: jneira Date: Thu, 11 Nov 2021 08:24:04 +0100 Subject: [PATCH 11/50] Use ref_name to check it is a check --- .github/workflows/hackage.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/hackage.yml b/.github/workflows/hackage.yml index fc0d95222e..11e159e599 100644 --- a/.github/workflows/hackage.yml +++ b/.github/workflows/hackage.yml @@ -9,7 +9,7 @@ jobs: check-and-upload-tarballs: runs-on: ubuntu-latest strategy: - fail-fast: ${{ !contains(github.head_ref, 'check') }} + fail-fast: ${{ !contains(github.ref_name, 'check') }} matrix: package: ["hie-compat", "hls-graph", "shake-bench", "hls-plugin-api", "ghcide", "hls-test-utils", @@ -120,7 +120,7 @@ jobs: path: ${{ steps.generate-dist-tarball.outputs.path }} upload-candidate: - if: ${{ !contains(github.head_ref, 'check') }} + if: ${{ !contains(github.ref_name, 'check') }} needs: check-and-upload-tarballs runs-on: ubuntu-latest steps: From ff324f530988bb4929430e804641f3b543e0e29a Mon Sep 17 00:00:00 2001 From: jneira Date: Thu, 11 Nov 2021 08:43:41 +0100 Subject: [PATCH 12/50] Bump patch version of brittany plugin --- plugins/hls-brittany-plugin/hls-brittany-plugin.cabal | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/hls-brittany-plugin/hls-brittany-plugin.cabal b/plugins/hls-brittany-plugin/hls-brittany-plugin.cabal index fb7e57cfbe..1a5a9911a2 100644 --- a/plugins/hls-brittany-plugin/hls-brittany-plugin.cabal +++ b/plugins/hls-brittany-plugin/hls-brittany-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-brittany-plugin -version: 1.0.1.0 +version: 1.0.1.1 synopsis: Integration with the Brittany code formatter description: Please see the README on GitHub at From b25ec7117d77c80df59cbd21eba25ce9cbaeab52 Mon Sep 17 00:00:00 2001 From: jneira Date: Thu, 11 Nov 2021 09:46:34 +0100 Subject: [PATCH 13/50] Allow newer base/th for czipwith --- .github/workflows/hackage.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/hackage.yml b/.github/workflows/hackage.yml index 11e159e599..11be1be2e7 100644 --- a/.github/workflows/hackage.yml +++ b/.github/workflows/hackage.yml @@ -98,7 +98,7 @@ jobs: cd $(ls -d ./incoming/${{ matrix.package }}-*) echo "packages: . ../../* ../../plugins/*" > cabal.project # TODO: remove when not needed - echo "allow-newer: Chart-diagrams:diagrams-core, SVGFonts:diagrams-core" >> cabal.project + echo "allow-newer: Chart-diagrams:diagrams-core, SVGFonts:diagrams-core, czipwith:base, czipwith:template-haskell" >> cabal.project - name: "Build all package components in isolation" if: steps.get-hackage-version.outputs.exists != 'true' From 497b9aaea35e205bd0e617ae53f175c311756ad8 Mon Sep 17 00:00:00 2001 From: jneira Date: Thu, 11 Nov 2021 11:53:34 +0100 Subject: [PATCH 14/50] Add enough allow-newers to allow build the project Having all subpackages included in the `packages` field --- .github/workflows/hackage.yml | 15 +++++++++++++++ cabal-ghc901.project | 21 +++++++++++++++++---- 2 files changed, 32 insertions(+), 4 deletions(-) diff --git a/.github/workflows/hackage.yml b/.github/workflows/hackage.yml index 11be1be2e7..1f11962315 100644 --- a/.github/workflows/hackage.yml +++ b/.github/workflows/hackage.yml @@ -100,6 +100,21 @@ jobs: # TODO: remove when not needed echo "allow-newer: Chart-diagrams:diagrams-core, SVGFonts:diagrams-core, czipwith:base, czipwith:template-haskell" >> cabal.project + - name: "Add temporary needed allow-newer" + if: steps.get-hackage-version.outputs.exists != 'true' + run: | + # TODO: remove when not needed + echo "allow-newer: Chart-diagrams:diagrams-core, SVGFonts:diagrams-core" >> cabal.project + + - name: "Add temporary needed allow-newer for ghc-9.0" + if: steps.get-hackage-version.outputs.exists != 'true' && matrix.ghc == '9.0.1' + run: | + # TODO: remove when not needed + # For brittany + echo "allow-newer: czipwith:base, czipwith:template-haskell, brittany:base, brittany:ghc, brittany:ghc-boot-th, butcher:base, multistate:base, czipwith:base, czipwith:template-haskell" >> cabal.project + # For floskell and stylish-haskell + echo "floskell:base,floskell:ghc-prim,stylish-haskell:Cabal" >> cabal.project + - name: "Build all package components in isolation" if: steps.get-hackage-version.outputs.exists != 'true' run: | diff --git a/cabal-ghc901.project b/cabal-ghc901.project index 7924e742d1..2c80c30220 100644 --- a/cabal-ghc901.project +++ b/cabal-ghc901.project @@ -6,11 +6,11 @@ packages: ./ghcide ./hls-plugin-api ./hls-test-utils - -- ./plugins/hls-tactics-plugin - -- ./plugins/hls-brittany-plugin - -- ./plugins/hls-stylish-haskell-plugin + ./plugins/hls-tactics-plugin + ./plugins/hls-brittany-plugin + ./plugins/hls-stylish-haskell-plugin ./plugins/hls-fourmolu-plugin - -- ./plugins/hls-class-plugin + ./plugins/hls-class-plugin ./plugins/hls-eval-plugin ./plugins/hls-explicit-imports-plugin ./plugins/hls-refine-imports-plugin @@ -55,9 +55,22 @@ constraints: -- These plugins don't work on GHC9 yet haskell-language-server +ignore-plugins-ghc-bounds -brittany -class -stylishhaskell -tactic +-- although we are not building all plugins cabal solver phase is run for all packages +-- this way we track explicitly all transitive dependencies which need support for ghc-9 allow-newer: + brittany:base, + brittany:ghc, + brittany:ghc-boot-th, + -- for brittany + butcher:base, + multistate:base, + data-tree-print:base, + + stylish-haskell:Cabal, + floskell:base, floskell:ghc-prim, + -- for shake-bench Chart-diagrams:diagrams-core, SVGFonts:diagrams-core From f2585ee5a6ef1a3615de3e98b0cee98ab3699dbf Mon Sep 17 00:00:00 2001 From: jneira Date: Thu, 11 Nov 2021 12:42:57 +0100 Subject: [PATCH 15/50] Correct allow-newer's --- .github/workflows/hackage.yml | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/.github/workflows/hackage.yml b/.github/workflows/hackage.yml index 1f11962315..dc40521538 100644 --- a/.github/workflows/hackage.yml +++ b/.github/workflows/hackage.yml @@ -97,23 +97,21 @@ jobs: run: | cd $(ls -d ./incoming/${{ matrix.package }}-*) echo "packages: . ../../* ../../plugins/*" > cabal.project - # TODO: remove when not needed - echo "allow-newer: Chart-diagrams:diagrams-core, SVGFonts:diagrams-core, czipwith:base, czipwith:template-haskell" >> cabal.project - name: "Add temporary needed allow-newer" if: steps.get-hackage-version.outputs.exists != 'true' run: | # TODO: remove when not needed - echo "allow-newer: Chart-diagrams:diagrams-core, SVGFonts:diagrams-core" >> cabal.project + echo "allow-newer: Chart-diagrams:diagrams-core, SVGFonts:diagrams-core," >> cabal.project - name: "Add temporary needed allow-newer for ghc-9.0" if: steps.get-hackage-version.outputs.exists != 'true' && matrix.ghc == '9.0.1' run: | # TODO: remove when not needed # For brittany - echo "allow-newer: czipwith:base, czipwith:template-haskell, brittany:base, brittany:ghc, brittany:ghc-boot-th, butcher:base, multistate:base, czipwith:base, czipwith:template-haskell" >> cabal.project + echo " brittany:base, brittany:ghc, brittany:ghc-boot-th, butcher:base, multistate:base, czipwith:base, czipwith:template-haskell, data-tree-print:base," >> cabal.project # For floskell and stylish-haskell - echo "floskell:base,floskell:ghc-prim,stylish-haskell:Cabal" >> cabal.project + echo " floskell:base, floskell:ghc-prim, stylish-haskell:Cabal," >> cabal.project - name: "Build all package components in isolation" if: steps.get-hackage-version.outputs.exists != 'true' From bf0298f44e639256dfd41331b7dedb3cd036120e Mon Sep 17 00:00:00 2001 From: jneira Date: Thu, 11 Nov 2021 12:55:59 +0100 Subject: [PATCH 16/50] Add missing cd's --- .github/workflows/hackage.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/hackage.yml b/.github/workflows/hackage.yml index dc40521538..70f08f0dd5 100644 --- a/.github/workflows/hackage.yml +++ b/.github/workflows/hackage.yml @@ -102,12 +102,14 @@ jobs: if: steps.get-hackage-version.outputs.exists != 'true' run: | # TODO: remove when not needed + cd $(ls -d ./incoming/${{ matrix.package }}-*) echo "allow-newer: Chart-diagrams:diagrams-core, SVGFonts:diagrams-core," >> cabal.project - name: "Add temporary needed allow-newer for ghc-9.0" if: steps.get-hackage-version.outputs.exists != 'true' && matrix.ghc == '9.0.1' run: | # TODO: remove when not needed + cd $(ls -d ./incoming/${{ matrix.package }}-*) # For brittany echo " brittany:base, brittany:ghc, brittany:ghc-boot-th, butcher:base, multistate:base, czipwith:base, czipwith:template-haskell, data-tree-print:base," >> cabal.project # For floskell and stylish-haskell From bd839a862fadac1224747d7dd4efaaa9fbfc2d75 Mon Sep 17 00:00:00 2001 From: jneira Date: Thu, 11 Nov 2021 13:04:06 +0100 Subject: [PATCH 17/50] Bump up ghcide to 1.5.0 --- ghcide/ghcide.cabal | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ghcide/ghcide.cabal b/ghcide/ghcide.cabal index 78ccbe2a99..82628ee50b 100644 --- a/ghcide/ghcide.cabal +++ b/ghcide/ghcide.cabal @@ -2,7 +2,7 @@ cabal-version: 2.4 build-type: Simple category: Development name: ghcide -version: 1.4.2.4 +version: 1.5.0 license: Apache-2.0 license-file: LICENSE author: Digital Asset and Ghcide contributors From 231b0bec457a84295ad9b0fe4b6163da16c4a5f6 Mon Sep 17 00:00:00 2001 From: jneira Date: Thu, 11 Nov 2021 13:24:02 +0100 Subject: [PATCH 18/50] Exclude pkgs not buildable with 9.0.1 --- .github/workflows/hackage.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.github/workflows/hackage.yml b/.github/workflows/hackage.yml index 70f08f0dd5..12adb4083b 100644 --- a/.github/workflows/hackage.yml +++ b/.github/workflows/hackage.yml @@ -23,6 +23,15 @@ jobs: "hls-call-hierarchy-plugin", "haskell-language-server"] ghc: ["9.0.1", "8.10.7", "8.8.4", "8.6.5"] + exclude: + - ghc: "9.0.1" + package: "hls-brittany-plugin" + - ghc: "9.0.1" + package: "hls-stylish-haskell-plugin" + - ghc: "9.0.1" + package: "hls-class-plugin" + - ghc: "9.0.1" + package: "hls-tactics-plugin" steps: From 0a1a145cf0ecace6ef5eddd5ddfa4e737a051b82 Mon Sep 17 00:00:00 2001 From: jneira Date: Thu, 11 Nov 2021 13:35:51 +0100 Subject: [PATCH 19/50] Bum up plugins with changes versions --- .../hls-call-hierarchy-plugin/hls-call-hierarchy-plugin.cabal | 2 +- plugins/hls-class-plugin/hls-class-plugin.cabal | 2 +- plugins/hls-hlint-plugin/hls-hlint-plugin.cabal | 2 +- plugins/hls-module-name-plugin/hls-module-name-plugin.cabal | 2 +- plugins/hls-ormolu-plugin/hls-ormolu-plugin.cabal | 2 +- .../hls-refine-imports-plugin/hls-refine-imports-plugin.cabal | 2 +- plugins/hls-retrie-plugin/hls-retrie-plugin.cabal | 2 +- plugins/hls-splice-plugin/hls-splice-plugin.cabal | 2 +- .../hls-stylish-haskell-plugin/hls-stylish-haskell-plugin.cabal | 2 +- plugins/hls-tactics-plugin/hls-tactics-plugin.cabal | 2 +- 10 files changed, 10 insertions(+), 10 deletions(-) diff --git a/plugins/hls-call-hierarchy-plugin/hls-call-hierarchy-plugin.cabal b/plugins/hls-call-hierarchy-plugin/hls-call-hierarchy-plugin.cabal index d54d0d5677..568caa4213 100644 --- a/plugins/hls-call-hierarchy-plugin/hls-call-hierarchy-plugin.cabal +++ b/plugins/hls-call-hierarchy-plugin/hls-call-hierarchy-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-call-hierarchy-plugin -version: 1.0.1.0 +version: 1.0.1.1 synopsis: Call hierarchy plugin for Haskell Language Server description: Please see the README on GitHub at diff --git a/plugins/hls-class-plugin/hls-class-plugin.cabal b/plugins/hls-class-plugin/hls-class-plugin.cabal index 766965e1a9..f83a250902 100644 --- a/plugins/hls-class-plugin/hls-class-plugin.cabal +++ b/plugins/hls-class-plugin/hls-class-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-class-plugin -version: 1.0.1.0 +version: 1.0.1.1 synopsis: Class/instance management plugin for Haskell Language Server diff --git a/plugins/hls-hlint-plugin/hls-hlint-plugin.cabal b/plugins/hls-hlint-plugin/hls-hlint-plugin.cabal index 316bdf0f36..e155170e0e 100644 --- a/plugins/hls-hlint-plugin/hls-hlint-plugin.cabal +++ b/plugins/hls-hlint-plugin/hls-hlint-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-hlint-plugin -version: 1.0.1.1 +version: 1.0.2.0 synopsis: Hlint integration plugin with Haskell Language Server description: Please see the README on GitHub at diff --git a/plugins/hls-module-name-plugin/hls-module-name-plugin.cabal b/plugins/hls-module-name-plugin/hls-module-name-plugin.cabal index 61b6a31a8f..e5744f78fc 100644 --- a/plugins/hls-module-name-plugin/hls-module-name-plugin.cabal +++ b/plugins/hls-module-name-plugin/hls-module-name-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-module-name-plugin -version: 1.0.0.1 +version: 1.0.0.2 synopsis: Module name plugin for Haskell Language Server description: Please see the README on GitHub at diff --git a/plugins/hls-ormolu-plugin/hls-ormolu-plugin.cabal b/plugins/hls-ormolu-plugin/hls-ormolu-plugin.cabal index 740eafdfa0..ed324f305f 100644 --- a/plugins/hls-ormolu-plugin/hls-ormolu-plugin.cabal +++ b/plugins/hls-ormolu-plugin/hls-ormolu-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-ormolu-plugin -version: 1.0.1.0 +version: 1.0.1.1 synopsis: Integration with the Ormolu code formatter description: Please see the README on GitHub at diff --git a/plugins/hls-refine-imports-plugin/hls-refine-imports-plugin.cabal b/plugins/hls-refine-imports-plugin/hls-refine-imports-plugin.cabal index 4a2b3a71b9..3deefa9aee 100644 --- a/plugins/hls-refine-imports-plugin/hls-refine-imports-plugin.cabal +++ b/plugins/hls-refine-imports-plugin/hls-refine-imports-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-refine-imports-plugin -version: 1.0.0.1 +version: 1.0.0.2 synopsis: Refine imports plugin for Haskell Language Server description: Please see the README on GitHub at diff --git a/plugins/hls-retrie-plugin/hls-retrie-plugin.cabal b/plugins/hls-retrie-plugin/hls-retrie-plugin.cabal index 411429f7e2..5c2c780bd8 100644 --- a/plugins/hls-retrie-plugin/hls-retrie-plugin.cabal +++ b/plugins/hls-retrie-plugin/hls-retrie-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.2 name: hls-retrie-plugin -version: 1.0.1.2 +version: 1.0.1.3 synopsis: Retrie integration plugin for Haskell Language Server description: Please see the README on GitHub at diff --git a/plugins/hls-splice-plugin/hls-splice-plugin.cabal b/plugins/hls-splice-plugin/hls-splice-plugin.cabal index 4f9d7600e5..fadeb19cc1 100644 --- a/plugins/hls-splice-plugin/hls-splice-plugin.cabal +++ b/plugins/hls-splice-plugin/hls-splice-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-splice-plugin -version: 1.0.0.4 +version: 1.0.0.5 synopsis: HLS Plugin to expand TemplateHaskell Splices and QuasiQuotes diff --git a/plugins/hls-stylish-haskell-plugin/hls-stylish-haskell-plugin.cabal b/plugins/hls-stylish-haskell-plugin/hls-stylish-haskell-plugin.cabal index c9c87210b6..be282cd5c8 100644 --- a/plugins/hls-stylish-haskell-plugin/hls-stylish-haskell-plugin.cabal +++ b/plugins/hls-stylish-haskell-plugin/hls-stylish-haskell-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-stylish-haskell-plugin -version: 1.0.0.2 +version: 1.0.0.3 synopsis: Integration with the Stylish Haskell code formatter description: Please see the README on GitHub at diff --git a/plugins/hls-tactics-plugin/hls-tactics-plugin.cabal b/plugins/hls-tactics-plugin/hls-tactics-plugin.cabal index d1c82d8a36..59cadec0ee 100644 --- a/plugins/hls-tactics-plugin/hls-tactics-plugin.cabal +++ b/plugins/hls-tactics-plugin/hls-tactics-plugin.cabal @@ -1,7 +1,7 @@ cabal-version: 2.4 category: Development name: hls-tactics-plugin -version: 1.4.0.0 +version: 1.5.0.0 synopsis: Wingman plugin for Haskell Language Server description: Please see the README on GitHub at From 0bad4dffd9af71aedb7c4c67b2b613840c2861e1 Mon Sep 17 00:00:00 2001 From: jneira Date: Thu, 11 Nov 2021 13:36:17 +0100 Subject: [PATCH 20/50] Bum up subpackages with changes versions --- hls-plugin-api/hls-plugin-api.cabal | 2 +- hls-test-utils/hls-test-utils.cabal | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/hls-plugin-api/hls-plugin-api.cabal b/hls-plugin-api/hls-plugin-api.cabal index 2101ffe199..153631a05c 100644 --- a/hls-plugin-api/hls-plugin-api.cabal +++ b/hls-plugin-api/hls-plugin-api.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-plugin-api -version: 1.2.0.1 +version: 1.2.0.2 synopsis: Haskell Language Server API for plugin communication description: Please see the README on GitHub at diff --git a/hls-test-utils/hls-test-utils.cabal b/hls-test-utils/hls-test-utils.cabal index dc25afb526..c53486f94a 100644 --- a/hls-test-utils/hls-test-utils.cabal +++ b/hls-test-utils/hls-test-utils.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-test-utils -version: 1.1.0.0 +version: 1.1.0.1 synopsis: Utilities used in the tests of Haskell Language Server description: Please see the README on GitHub at From cd9a061c9437d70125468383ebf4c69ceb8045cc Mon Sep 17 00:00:00 2001 From: jneira Date: Thu, 11 Nov 2021 13:36:33 +0100 Subject: [PATCH 21/50] Bum up hls version to 1.5.0 --- haskell-language-server.cabal | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/haskell-language-server.cabal b/haskell-language-server.cabal index 39936ae2f4..a10551812a 100644 --- a/haskell-language-server.cabal +++ b/haskell-language-server.cabal @@ -1,7 +1,7 @@ cabal-version: 2.4 category: Development name: haskell-language-server -version: 1.4.0.0 +version: 1.5.0.0 synopsis: LSP server for GHC description: Please see the README on GitHub at From 4fcc16d65d9cc8239f1d9e47df1117ca2e316b1d Mon Sep 17 00:00:00 2001 From: jneira Date: Thu, 11 Nov 2021 13:38:18 +0100 Subject: [PATCH 22/50] Bump up haddock plugin version --- .../hls-haddock-comments-plugin.cabal | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/hls-haddock-comments-plugin/hls-haddock-comments-plugin.cabal b/plugins/hls-haddock-comments-plugin/hls-haddock-comments-plugin.cabal index 2c7e20d74f..1d67151b60 100644 --- a/plugins/hls-haddock-comments-plugin/hls-haddock-comments-plugin.cabal +++ b/plugins/hls-haddock-comments-plugin/hls-haddock-comments-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-haddock-comments-plugin -version: 1.0.0.3 +version: 1.0.0.4 synopsis: Haddock comments plugin for Haskell Language Server description: Please see the README on GitHub at From 632714a377a449dcfbdaa4d966c07efd7e6f0b3a Mon Sep 17 00:00:00 2001 From: jneira Date: Thu, 11 Nov 2021 14:17:08 +0100 Subject: [PATCH 23/50] Allow ghcide 1.5 --- haskell-language-server.cabal | 2 +- hls-test-utils/hls-test-utils.cabal | 2 +- plugins/hls-brittany-plugin/hls-brittany-plugin.cabal | 2 +- .../hls-call-hierarchy-plugin/hls-call-hierarchy-plugin.cabal | 2 +- plugins/hls-class-plugin/hls-class-plugin.cabal | 2 +- .../hls-haddock-comments-plugin.cabal | 2 +- plugins/hls-hlint-plugin/hls-hlint-plugin.cabal | 2 +- plugins/hls-module-name-plugin/hls-module-name-plugin.cabal | 2 +- plugins/hls-ormolu-plugin/hls-ormolu-plugin.cabal | 2 +- .../hls-refine-imports-plugin/hls-refine-imports-plugin.cabal | 2 +- plugins/hls-retrie-plugin/hls-retrie-plugin.cabal | 2 +- plugins/hls-splice-plugin/hls-splice-plugin.cabal | 2 +- .../hls-stylish-haskell-plugin/hls-stylish-haskell-plugin.cabal | 2 +- plugins/hls-tactics-plugin/hls-tactics-plugin.cabal | 2 +- 14 files changed, 14 insertions(+), 14 deletions(-) diff --git a/haskell-language-server.cabal b/haskell-language-server.cabal index a10551812a..2035138fe6 100644 --- a/haskell-language-server.cabal +++ b/haskell-language-server.cabal @@ -58,7 +58,7 @@ library , cryptohash-sha1 , data-default , ghc - , ghcide ^>=1.4 + , ghcide ^>=1.4 || ^>=1.5 , gitrev , lsp , hie-bios diff --git a/hls-test-utils/hls-test-utils.cabal b/hls-test-utils/hls-test-utils.cabal index c53486f94a..32c3f2e805 100644 --- a/hls-test-utils/hls-test-utils.cabal +++ b/hls-test-utils/hls-test-utils.cabal @@ -41,7 +41,7 @@ library , directory , extra , filepath - , ghcide ^>=1.4 + , ghcide ^>=1.4 || ^>=1.5 , hls-graph , hls-plugin-api ^>=1.2 , hspec <2.8 diff --git a/plugins/hls-brittany-plugin/hls-brittany-plugin.cabal b/plugins/hls-brittany-plugin/hls-brittany-plugin.cabal index 1a5a9911a2..ba64f55660 100644 --- a/plugins/hls-brittany-plugin/hls-brittany-plugin.cabal +++ b/plugins/hls-brittany-plugin/hls-brittany-plugin.cabal @@ -25,7 +25,7 @@ library , filepath , ghc , ghc-boot-th - , ghcide >=1.2 && <1.5 + , ghcide >=1.2 && <1.6 , hls-plugin-api >=1.1 && <1.3 , lens , lsp-types diff --git a/plugins/hls-call-hierarchy-plugin/hls-call-hierarchy-plugin.cabal b/plugins/hls-call-hierarchy-plugin/hls-call-hierarchy-plugin.cabal index 568caa4213..5be56db221 100644 --- a/plugins/hls-call-hierarchy-plugin/hls-call-hierarchy-plugin.cabal +++ b/plugins/hls-call-hierarchy-plugin/hls-call-hierarchy-plugin.cabal @@ -30,7 +30,7 @@ library , containers , extra , ghc - , ghcide ^>=1.4.1 + , ghcide ^>=1.4.1 || ^>= 1.5.0 , hiedb , hls-plugin-api ^>=1.2 , lens diff --git a/plugins/hls-class-plugin/hls-class-plugin.cabal b/plugins/hls-class-plugin/hls-class-plugin.cabal index f83a250902..d7342d72c0 100644 --- a/plugins/hls-class-plugin/hls-class-plugin.cabal +++ b/plugins/hls-class-plugin/hls-class-plugin.cabal @@ -29,7 +29,7 @@ library , containers , ghc , ghc-exactprint - , ghcide >=1.2 && <1.5 + , ghcide >=1.2 && <1.6 , hls-plugin-api >=1.1 && <1.3 , lens , lsp diff --git a/plugins/hls-haddock-comments-plugin/hls-haddock-comments-plugin.cabal b/plugins/hls-haddock-comments-plugin/hls-haddock-comments-plugin.cabal index 1d67151b60..cc9f140a57 100644 --- a/plugins/hls-haddock-comments-plugin/hls-haddock-comments-plugin.cabal +++ b/plugins/hls-haddock-comments-plugin/hls-haddock-comments-plugin.cabal @@ -29,7 +29,7 @@ library , containers , ghc , ghc-exactprint - , ghcide >=1.2 && <1.5 + , ghcide >=1.2 && <1.6 , hls-plugin-api >=1.1 && <1.3 , lsp-types , text diff --git a/plugins/hls-hlint-plugin/hls-hlint-plugin.cabal b/plugins/hls-hlint-plugin/hls-hlint-plugin.cabal index e155170e0e..2dcd422132 100644 --- a/plugins/hls-hlint-plugin/hls-hlint-plugin.cabal +++ b/plugins/hls-hlint-plugin/hls-hlint-plugin.cabal @@ -55,7 +55,7 @@ library , extra , filepath , ghc-exactprint >=0.6.3.4 - , ghcide ^>=1.4 + , ghcide ^>=1.4 || ^>=1.5 , hashable , hlint , hls-plugin-api >=1.1 && <1.3 diff --git a/plugins/hls-module-name-plugin/hls-module-name-plugin.cabal b/plugins/hls-module-name-plugin/hls-module-name-plugin.cabal index e5744f78fc..3fa203c4c6 100644 --- a/plugins/hls-module-name-plugin/hls-module-name-plugin.cabal +++ b/plugins/hls-module-name-plugin/hls-module-name-plugin.cabal @@ -25,7 +25,7 @@ library , base >=4.12 && <5 , directory , filepath - , ghcide >=1.2 && <1.5 + , ghcide >=1.2 && <1.6 , hls-plugin-api >=1.1 && <1.3 , lsp , text diff --git a/plugins/hls-ormolu-plugin/hls-ormolu-plugin.cabal b/plugins/hls-ormolu-plugin/hls-ormolu-plugin.cabal index ed324f305f..bc416d5303 100644 --- a/plugins/hls-ormolu-plugin/hls-ormolu-plugin.cabal +++ b/plugins/hls-ormolu-plugin/hls-ormolu-plugin.cabal @@ -24,7 +24,7 @@ library , filepath , ghc , ghc-boot-th - , ghcide >=1.2 && <1.5 + , ghcide >=1.2 && <1.6 , hls-plugin-api >=1.1 && <1.3 , lens , lsp diff --git a/plugins/hls-refine-imports-plugin/hls-refine-imports-plugin.cabal b/plugins/hls-refine-imports-plugin/hls-refine-imports-plugin.cabal index 3deefa9aee..cee9508f3a 100644 --- a/plugins/hls-refine-imports-plugin/hls-refine-imports-plugin.cabal +++ b/plugins/hls-refine-imports-plugin/hls-refine-imports-plugin.cabal @@ -24,7 +24,7 @@ library , containers , deepseq , ghc - , ghcide ^>=1.4 + , ghcide ^>=1.4 || ^>=1.5 , hls-explicit-imports-plugin ^>=1.0.0.1 , hls-graph , hls-plugin-api >=1.1 && <1.3 diff --git a/plugins/hls-retrie-plugin/hls-retrie-plugin.cabal b/plugins/hls-retrie-plugin/hls-retrie-plugin.cabal index 5c2c780bd8..08662ede87 100644 --- a/plugins/hls-retrie-plugin/hls-retrie-plugin.cabal +++ b/plugins/hls-retrie-plugin/hls-retrie-plugin.cabal @@ -23,7 +23,7 @@ library , directory , extra , ghc - , ghcide >=1.2 && <1.5 + , ghcide >=1.2 && <1.6 , hashable , hls-plugin-api >=1.1 && <1.3 , lsp diff --git a/plugins/hls-splice-plugin/hls-splice-plugin.cabal b/plugins/hls-splice-plugin/hls-splice-plugin.cabal index fadeb19cc1..d7c4e99cf4 100644 --- a/plugins/hls-splice-plugin/hls-splice-plugin.cabal +++ b/plugins/hls-splice-plugin/hls-splice-plugin.cabal @@ -38,7 +38,7 @@ library , foldl , ghc , ghc-exactprint - , ghcide >=1.2 && <1.5 + , ghcide >=1.2 && <1.6 , hls-plugin-api >=1.1 && <1.3 , lens , lsp diff --git a/plugins/hls-stylish-haskell-plugin/hls-stylish-haskell-plugin.cabal b/plugins/hls-stylish-haskell-plugin/hls-stylish-haskell-plugin.cabal index be282cd5c8..d9eae4b04b 100644 --- a/plugins/hls-stylish-haskell-plugin/hls-stylish-haskell-plugin.cabal +++ b/plugins/hls-stylish-haskell-plugin/hls-stylish-haskell-plugin.cabal @@ -24,7 +24,7 @@ library , filepath , ghc , ghc-boot-th - , ghcide >=1.2 && <1.5 + , ghcide >=1.2 && <1.6 , hls-plugin-api >=1.1 && <1.3 , lsp-types , stylish-haskell ^>=0.12 || ^>=0.13 diff --git a/plugins/hls-tactics-plugin/hls-tactics-plugin.cabal b/plugins/hls-tactics-plugin/hls-tactics-plugin.cabal index 59cadec0ee..14f748a93d 100644 --- a/plugins/hls-tactics-plugin/hls-tactics-plugin.cabal +++ b/plugins/hls-tactics-plugin/hls-tactics-plugin.cabal @@ -82,7 +82,7 @@ library , ghc-boot-th , ghc-exactprint , ghc-source-gen ^>=0.4.1 - , ghcide ^>=1.4.1 + , ghcide ^>=1.4.1 || ^>=1.5 , hls-graph , hls-plugin-api >=1.1 && <1.3 , hyphenation From d848ea3ab8e13cd178c6235a430999fc667f5bb5 Mon Sep 17 00:00:00 2001 From: jneira Date: Thu, 11 Nov 2021 14:23:59 +0100 Subject: [PATCH 24/50] Use ghcide 1.5.0 in the rest of plugins --- plugins/hls-eval-plugin/hls-eval-plugin.cabal | 4 ++-- .../hls-explicit-imports-plugin.cabal | 4 ++-- plugins/hls-floskell-plugin/hls-floskell-plugin.cabal | 4 ++-- plugins/hls-fourmolu-plugin/hls-fourmolu-plugin.cabal | 4 ++-- plugins/hls-rename-plugin/hls-rename-plugin.cabal | 4 ++-- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/plugins/hls-eval-plugin/hls-eval-plugin.cabal b/plugins/hls-eval-plugin/hls-eval-plugin.cabal index e3114e1656..47952af8b3 100644 --- a/plugins/hls-eval-plugin/hls-eval-plugin.cabal +++ b/plugins/hls-eval-plugin/hls-eval-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-eval-plugin -version: 1.2.0.0 +version: 1.2.0.1 synopsis: Eval plugin for Haskell Language Server description: Please see the README on GitHub at @@ -65,7 +65,7 @@ library , ghc , ghc-boot-th , ghc-paths - , ghcide >=1.4.2.4 && <1.5 + , ghcide >=1.5.0 && <1.6 , hashable , hls-graph , hls-plugin-api ^>=1.2 diff --git a/plugins/hls-explicit-imports-plugin/hls-explicit-imports-plugin.cabal b/plugins/hls-explicit-imports-plugin/hls-explicit-imports-plugin.cabal index b74f2a556c..4d36654991 100644 --- a/plugins/hls-explicit-imports-plugin/hls-explicit-imports-plugin.cabal +++ b/plugins/hls-explicit-imports-plugin/hls-explicit-imports-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.2 name: hls-explicit-imports-plugin -version: 1.0.1.0 +version: 1.0.1.1 synopsis: Explicit imports plugin for Haskell Language Server description: Please see the README on GitHub at @@ -21,7 +21,7 @@ library , containers , deepseq , ghc - , ghcide ^>=1.4 + , ghcide ^>=1.4 || ^>=1.5 , hls-graph , hls-plugin-api >=1.1 && <1.3 , lsp diff --git a/plugins/hls-floskell-plugin/hls-floskell-plugin.cabal b/plugins/hls-floskell-plugin/hls-floskell-plugin.cabal index 89ef213b6f..3542b47896 100644 --- a/plugins/hls-floskell-plugin/hls-floskell-plugin.cabal +++ b/plugins/hls-floskell-plugin/hls-floskell-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-floskell-plugin -version: 1.0.0.1 +version: 1.0.0.2 synopsis: Integration with the Floskell code formatter description: Please see the README on GitHub at @@ -22,7 +22,7 @@ library build-depends: , base >=4.12 && <5 , floskell ^>=0.10 - , ghcide >=1.2 && <1.5 + , ghcide >=1.2 && <1.6 , hls-plugin-api >=1.1 && <1.3 , lsp-types , text diff --git a/plugins/hls-fourmolu-plugin/hls-fourmolu-plugin.cabal b/plugins/hls-fourmolu-plugin/hls-fourmolu-plugin.cabal index 3645687550..240935ec66 100644 --- a/plugins/hls-fourmolu-plugin/hls-fourmolu-plugin.cabal +++ b/plugins/hls-fourmolu-plugin/hls-fourmolu-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-fourmolu-plugin -version: 1.0.1.0 +version: 1.0.1.1 synopsis: Integration with the Fourmolu code formatter description: Please see the README on GitHub at @@ -26,7 +26,7 @@ library , fourmolu ^>=0.3 || ^>=0.4 , ghc , ghc-boot-th - , ghcide >=1.2 && <1.5 + , ghcide >=1.2 && <1.6 , hls-plugin-api >=1.1 && <1.3 , lens , lsp diff --git a/plugins/hls-rename-plugin/hls-rename-plugin.cabal b/plugins/hls-rename-plugin/hls-rename-plugin.cabal index 1d1499d44f..e08d0b86da 100644 --- a/plugins/hls-rename-plugin/hls-rename-plugin.cabal +++ b/plugins/hls-rename-plugin/hls-rename-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-rename-plugin -version: 1.0.0.0 +version: 1.0.0.1 synopsis: Rename plugin for Haskell Language Server description: Please see the README on GitHub at @@ -25,7 +25,7 @@ library , extra , ghc , ghc-exactprint - , ghcide >=1.4 && <1.5 + , ghcide >=1.4 && <1.6 , hiedb , hls-plugin-api ^>=1.2 , hls-retrie-plugin >=1.0.1.1 From cf960e71b1a859713e8a3e0a2235e20fb6f6755b Mon Sep 17 00:00:00 2001 From: jneira Date: Thu, 11 Nov 2021 14:28:11 +0100 Subject: [PATCH 25/50] Use ghcide 1.5.0 for pragmas --- plugins/hls-pragmas-plugin/hls-pragmas-plugin.cabal | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/hls-pragmas-plugin/hls-pragmas-plugin.cabal b/plugins/hls-pragmas-plugin/hls-pragmas-plugin.cabal index 2096fe4f9d..d1e70daaac 100644 --- a/plugins/hls-pragmas-plugin/hls-pragmas-plugin.cabal +++ b/plugins/hls-pragmas-plugin/hls-pragmas-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-pragmas-plugin -version: 1.0.1.0 +version: 1.0.1.1 synopsis: Pragmas plugin for Haskell Language Server description: Please see the README on GitHub at @@ -24,7 +24,7 @@ library , base >=4.12 && <5 , extra , fuzzy - , ghcide >=1.2 && <1.5 + , ghcide >=1.2 && <1.6 , hls-plugin-api >=1.1 && <1.3 , lens , lsp From dceed8c7966628e2a0cab11394e5d360b5fc8b67 Mon Sep 17 00:00:00 2001 From: jneira Date: Thu, 11 Nov 2021 14:38:32 +0100 Subject: [PATCH 26/50] Allow tactics 1.5.0 for hls --- haskell-language-server.cabal | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/haskell-language-server.cabal b/haskell-language-server.cabal index 2035138fe6..fe002a3fd8 100644 --- a/haskell-language-server.cabal +++ b/haskell-language-server.cabal @@ -230,7 +230,7 @@ common retrie common tactic if flag(tactic) && (impl(ghc < 9.0.1) || flag(ignore-plugins-ghc-bounds)) - build-depends: hls-tactics-plugin >=1.2.0.0 && <1.5 + build-depends: hls-tactics-plugin >=1.2.0.0 && <1.6 cpp-options: -Dtactic common hlint From 6e31525ba32c9ff0cc11f5b8ebd81f8644a648c9 Mon Sep 17 00:00:00 2001 From: jneira Date: Fri, 12 Nov 2021 08:32:31 +0100 Subject: [PATCH 27/50] Remove czipwith in hackage ci script --- .github/workflows/hackage.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/hackage.yml b/.github/workflows/hackage.yml index 12adb4083b..d11b37a342 100644 --- a/.github/workflows/hackage.yml +++ b/.github/workflows/hackage.yml @@ -120,7 +120,7 @@ jobs: # TODO: remove when not needed cd $(ls -d ./incoming/${{ matrix.package }}-*) # For brittany - echo " brittany:base, brittany:ghc, brittany:ghc-boot-th, butcher:base, multistate:base, czipwith:base, czipwith:template-haskell, data-tree-print:base," >> cabal.project + echo " brittany:base, brittany:ghc, brittany:ghc-boot-th, butcher:base, multistate:base, data-tree-print:base," >> cabal.project # For floskell and stylish-haskell echo " floskell:base, floskell:ghc-prim, stylish-haskell:Cabal," >> cabal.project From 4312a4c7cfb88f9eb5fad93c128aaad8b159d992 Mon Sep 17 00:00:00 2001 From: jneira Date: Fri, 12 Nov 2021 21:21:45 +0100 Subject: [PATCH 28/50] Disable 9.0.1 for hackage ci --- .github/workflows/hackage.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/hackage.yml b/.github/workflows/hackage.yml index d11b37a342..c0f47c2fe4 100644 --- a/.github/workflows/hackage.yml +++ b/.github/workflows/hackage.yml @@ -22,7 +22,7 @@ jobs: "hls-splice-plugin", "hls-tactics-plugin", "hls-call-hierarchy-plugin", "haskell-language-server"] - ghc: ["9.0.1", "8.10.7", "8.8.4", "8.6.5"] + ghc: ["8.10.7", "8.8.4", "8.6.5"] exclude: - ghc: "9.0.1" package: "hls-brittany-plugin" From d2f22cb771cda8e7a449664d78ebe3a1771821de Mon Sep 17 00:00:00 2001 From: jneira Date: Mon, 15 Nov 2021 11:39:34 +0100 Subject: [PATCH 29/50] Use bounds operator consistently --- plugins/hls-hlint-plugin/hls-hlint-plugin.cabal | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/hls-hlint-plugin/hls-hlint-plugin.cabal b/plugins/hls-hlint-plugin/hls-hlint-plugin.cabal index 2dcd422132..afe9c07c81 100644 --- a/plugins/hls-hlint-plugin/hls-hlint-plugin.cabal +++ b/plugins/hls-hlint-plugin/hls-hlint-plugin.cabal @@ -78,8 +78,8 @@ library else build-depends: , ghc - , ghc-lib ==9.0.* - , ghc-lib-parser-ex ==9.0.* + , ghc-lib ^>=9.0 + , ghc-lib-parser-ex ^>=9.0 cpp-options: -DHLINT_ON_GHC_LIB From 131eda9d80703db958df5c753b6ee3bffb7a0d07 Mon Sep 17 00:00:00 2001 From: jneira Date: Mon, 15 Nov 2021 11:52:37 +0100 Subject: [PATCH 30/50] Build formatters with newer ghc-lib-parser --- cabal-ghc901.project | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/cabal-ghc901.project b/cabal-ghc901.project index 2c80c30220..b5a36b75ac 100644 --- a/cabal-ghc901.project +++ b/cabal-ghc901.project @@ -53,7 +53,8 @@ index-state: 2021-11-11T19:25:51Z constraints: -- These plugins don't work on GHC9 yet - haskell-language-server +ignore-plugins-ghc-bounds -brittany -class -stylishhaskell -tactic + haskell-language-server +ignore-plugins-ghc-bounds -brittany -class -stylishhaskell -tactic, + ghc-lib-parser ^>= 9.0 -- although we are not building all plugins cabal solver phase is run for all packages -- this way we track explicitly all transitive dependencies which need support for ghc-9 @@ -67,10 +68,14 @@ allow-newer: data-tree-print:base, stylish-haskell:Cabal, + stylish-haskell:ghc-lib-parser, floskell:base, floskell:ghc-prim, + ormolu:ghc-lib-parser, + fourmolu:ghc-lib-parser, + -- for shake-bench Chart-diagrams:diagrams-core, SVGFonts:diagrams-core From bee9fd6415eec413c28cc63ba64eb59374350465 Mon Sep 17 00:00:00 2001 From: jneira Date: Mon, 15 Nov 2021 14:19:25 +0100 Subject: [PATCH 31/50] Only stylish-haskell needs newer ghc-lib --- cabal-ghc901.project | 3 --- 1 file changed, 3 deletions(-) diff --git a/cabal-ghc901.project b/cabal-ghc901.project index b5a36b75ac..5450124611 100644 --- a/cabal-ghc901.project +++ b/cabal-ghc901.project @@ -73,9 +73,6 @@ allow-newer: floskell:base, floskell:ghc-prim, - ormolu:ghc-lib-parser, - fourmolu:ghc-lib-parser, - -- for shake-bench Chart-diagrams:diagrams-core, SVGFonts:diagrams-core From 3616140a2f10e13478ea6c5cdc667f5f36058b58 Mon Sep 17 00:00:00 2001 From: jneira Date: Mon, 15 Nov 2021 23:36:58 +0100 Subject: [PATCH 32/50] Avoid ghc-9.0.1 in other way --- .github/workflows/hackage.yml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/.github/workflows/hackage.yml b/.github/workflows/hackage.yml index c0f47c2fe4..99ae684f3a 100644 --- a/.github/workflows/hackage.yml +++ b/.github/workflows/hackage.yml @@ -22,7 +22,7 @@ jobs: "hls-splice-plugin", "hls-tactics-plugin", "hls-call-hierarchy-plugin", "haskell-language-server"] - ghc: ["8.10.7", "8.8.4", "8.6.5"] + ghc: ["9.0.1", "8.10.7", "8.8.4", "8.6.5"] exclude: - ghc: "9.0.1" package: "hls-brittany-plugin" @@ -125,19 +125,20 @@ jobs: echo " floskell:base, floskell:ghc-prim, stylish-haskell:Cabal," >> cabal.project - name: "Build all package components in isolation" - if: steps.get-hackage-version.outputs.exists != 'true' + if: steps.get-hackage-version.outputs.exists != 'true' && matrix.ghc != "9.0.1" run: | cd $(ls -d ./incoming/${{ matrix.package }}-*) cabal build --enable-tests --enable-benchmarks - name: "Generate haddock for hackage" - if: steps.get-hackage-version.outputs.exists != 'true' + if: steps.get-hackage-version.outputs.exists != 'true' && matrix.ghc != "9.0.1" + continue-on-error: matrix.ghc == "9.0.1" run: | cd $(ls -d ./incoming/${{ matrix.package }}-*) cabal haddock --haddock-for-hackage - name: "Upload package dist tarball" - if: steps.get-hackage-version.outputs.exists != 'true' + if: steps.get-hackage-version.outputs.exists != 'true' && matrix.ghc =="8.10.7" uses: actions/upload-artifact@v2 with: name: ${{ matrix.package }} From d4bdb38dd7f02ed8ac3507fc47db737d85aa1826 Mon Sep 17 00:00:00 2001 From: jneira Date: Tue, 16 Nov 2021 08:56:42 +0100 Subject: [PATCH 33/50] Script needs a min time version --- GenChangelogs.hs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/GenChangelogs.hs b/GenChangelogs.hs index 0e8cb78f82..aef3005316 100755 --- a/GenChangelogs.hs +++ b/GenChangelogs.hs @@ -1,6 +1,6 @@ #!/usr/bin/env cabal {- cabal: -build-depends: base, process, text, github, time +build-depends: base, process, text, github, time >= 1.9 -} {-# LANGUAGE OverloadedStrings #-} From 7c476038f80f7f0b59aa196868b8b7d4e8e2b5e3 Mon Sep 17 00:00:00 2001 From: jneira Date: Tue, 16 Nov 2021 11:10:40 +0100 Subject: [PATCH 34/50] First draft of 1.5.0 changelog --- ChangeLog.md | 168 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 168 insertions(+) diff --git a/ChangeLog.md b/ChangeLog.md index cb8997cf09..bda0ebdae4 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -1,5 +1,171 @@ # Changelog for haskell-language-server +## 1.5.0 + +Time for another hls release: + +- @pepeiborra has worked hard to fix some 1.4.0 performance regressions and to make new improvements in the area +- We have fourmolu support for ghc-9.0.1 thanks to @georgefst +- We have got improvements over import suggestions thanks to @yoshitsugu and alexnaspo +- Completions also has been improved thanks to @pepeiborra +- There has been lot of documentation updates by several contributors, thanks to you all too + +### Deprecation notice for 1.5.0 + +- As we noted in the previous release we have dropped support for ghc versions 8.6.4, 8.10.2, 8.10.3, 8.10.4 in *this release* +- We will drop support for ghc version 8.10.5 *after this release* +- The advise is upgrade ghc to the last minor version: 8.6.5 or 8.10.7 +- You can read more about ghc deprecation policy and schedule [here](https://haskell-language-server.readthedocs.io/en/latest/supported-versions.html) + +### Pull requests merged for 1.5.0 + +- Update to latest prettyprinter API +([#2352](https://github.com/haskell/haskell-language-server/pull/2352)) by @fendor +- Show build graph statistics in ghcide-bench +([#2343](https://github.com/haskell/haskell-language-server/pull/2343)) by @pepeiborra +- contributing: add implicit-hie gen-hie > hie.yaml note +([#2341](https://github.com/haskell/haskell-language-server/pull/2341)) by @Anton-Latukha +- add dependabot: add Actions CI merge requests automation +([#2339](https://github.com/haskell/haskell-language-server/pull/2339)) by @Anton-Latukha +- Skip parsing without haddock for above GHC9.0 +([#2338](https://github.com/haskell/haskell-language-server/pull/2338)) by @yoshitsugu +- Give unique names to post-jobs +([#2337](https://github.com/haskell/haskell-language-server/pull/2337)) by @jneira +- Cancel prev runs for bench and nix +([#2335](https://github.com/haskell/haskell-language-server/pull/2335)) by @jneira +- Trace diagnostics +([#2333](https://github.com/haskell/haskell-language-server/pull/2333)) by @pepeiborra +- Include sortText in completions and improve suggestions +([#2332](https://github.com/haskell/haskell-language-server/pull/2332)) by @pepeiborra +- Not suggest exported imports +([#2329](https://github.com/haskell/haskell-language-server/pull/2329)) by @yoshitsugu +- Update troubleshooting section +([#2326](https://github.com/haskell/haskell-language-server/pull/2326)) by @jneira +- Remove automatic comment to [skip circleci] +([#2325](https://github.com/haskell/haskell-language-server/pull/2325)) by @jneira +- Add README.md in install/ subproject +([#2324](https://github.com/haskell/haskell-language-server/pull/2324)) by @sir4ur0n +- Improve the performance of GetModIfaceFromDisk in large repos and delete GetDependencies +([#2323](https://github.com/haskell/haskell-language-server/pull/2323)) by @pepeiborra +- Add support for install hls from hackage using ghc 9.0.1 +([#2322](https://github.com/haskell/haskell-language-server/pull/2322)) by @jneira +- Rename hlint test data files and add regression tests +([#2321](https://github.com/haskell/haskell-language-server/pull/2321)) by @jneira +- Suggest hiding imports when local definition exists +([#2320](https://github.com/haskell/haskell-language-server/pull/2320)) by @yoshitsugu +- Improve trace readability +([#2319](https://github.com/haskell/haskell-language-server/pull/2319)) by @pepeiborra +- Sir4ur0n/doc/cleanup hie +([#2311](https://github.com/haskell/haskell-language-server/pull/2311)) by @sir4ur0n +- Add option to effectively cancel prev runs +([#2310](https://github.com/haskell/haskell-language-server/pull/2310)) by @jneira +- Separate features from demos +([#2307](https://github.com/haskell/haskell-language-server/pull/2307)) by @jneira +- Prevent Tactics hover provider from blocking at startup +([#2306](https://github.com/haskell/haskell-language-server/pull/2306)) by @pepeiborra +- Fix defaultIdeOptions to use the initial config settings +([#2302](https://github.com/haskell/haskell-language-server/pull/2302)) by @pepeiborra +- Use new queue rules for mergify bot +([#2301](https://github.com/haskell/haskell-language-server/pull/2301)) by @jneira +- Fix reverse dep. tracking for alwaysRerun rules +([#2298](https://github.com/haskell/haskell-language-server/pull/2298)) by @pepeiborra +- Reorganize github workflows and use specific label [skip circleci] +([#2297](https://github.com/haskell/haskell-language-server/pull/2297)) by @jneira +- Enable func-test suite for windows +([#2296](https://github.com/haskell/haskell-language-server/pull/2296)) by @jneira +- Generate linkables in the Eval plugin +([#2295](https://github.com/haskell/haskell-language-server/pull/2295)) by @pepeiborra +- [hls-graph] clean up databaseDirtySet +([#2294](https://github.com/haskell/haskell-language-server/pull/2294)) by @pepeiborra +- Update link to supported platforms by ghcup +([#2293](https://github.com/haskell/haskell-language-server/pull/2293)) by @chshersh +- Make circleci honour [skip ci] wherever is placed in the pr info (title, description) +([#2289](https://github.com/haskell/haskell-language-server/pull/2289)) by @jneira +- Note in the install script that listed ghcs are the supported ones +([#2286](https://github.com/haskell/haskell-language-server/pull/2286)) by @jneira +- Move hlint tests to its own package (and other clean ups) +([#2284](https://github.com/haskell/haskell-language-server/pull/2284)) by @jneira +- Trace rebuilds +([#2283](https://github.com/haskell/haskell-language-server/pull/2283)) by @pepeiborra +- Fix excessive interface recompilation caused by the Tactics plugin +([#2282](https://github.com/haskell/haskell-language-server/pull/2282)) by @pepeiborra +- Preserve dirty set and add dirtiness assertion +([#2279](https://github.com/haskell/haskell-language-server/pull/2279)) by @pepeiborra +- Ignore null WatchedFile events +([#2278](https://github.com/haskell/haskell-language-server/pull/2278)) by @pepeiborra +- Trace log events and fix ghcide logger +([#2277](https://github.com/haskell/haskell-language-server/pull/2277)) by @pepeiborra +- Point to GitHub from Contributing.md +([#2275](https://github.com/haskell/haskell-language-server/pull/2275)) by @georgefst +- installation.md: add Fedora copr repo +([#2274](https://github.com/haskell/haskell-language-server/pull/2274)) by @juhp +- avoid double rebuilds for FOIs +([#2266](https://github.com/haskell/haskell-language-server/pull/2266)) by @pepeiborra +- Update installation on ArchLinux - new package +([#2265](https://github.com/haskell/haskell-language-server/pull/2265)) by @marcin-rzeznicki +- Garbage collection of dirty keys +([#2263](https://github.com/haskell/haskell-language-server/pull/2263)) by @pepeiborra +- Add lsp-mode links +([#2260](https://github.com/haskell/haskell-language-server/pull/2260)) by @jneira +- Add more features and demos in docs +([#2257](https://github.com/haskell/haskell-language-server/pull/2257)) by @jneira +- Add nix installation section +([#2256](https://github.com/haskell/haskell-language-server/pull/2256)) by @jneira +- Bump Fourmolu to 0.4 +([#2254](https://github.com/haskell/haskell-language-server/pull/2254)) by @georgefst +- Remove custom version of operational +([#2249](https://github.com/haskell/haskell-language-server/pull/2249)) by @jneira +- Generate custom source tarball +([#2248](https://github.com/haskell/haskell-language-server/pull/2248)) by @jneira +- Enable the ghcide test plugin in HLS test suites +([#2243](https://github.com/haskell/haskell-language-server/pull/2243)) by @pepeiborra +- Partial sort of fuzzy filtering results +([#2240](https://github.com/haskell/haskell-language-server/pull/2240)) by @pepeiborra +- Fix build with fbghc +([#2234](https://github.com/haskell/haskell-language-server/pull/2234)) by @pepeiborra +- Tweaks to GHC support docs +([#2232](https://github.com/haskell/haskell-language-server/pull/2232)) by @michaelpj +- Add ghc deprecation policy to documentation +([#2231](https://github.com/haskell/haskell-language-server/pull/2231)) by @jneira +- Add ghcup compile option +([#2230](https://github.com/haskell/haskell-language-server/pull/2230)) by @jneira +- Parallel fuzzy filtering +([#2225](https://github.com/haskell/haskell-language-server/pull/2225)) by @pepeiborra +- Revert "Inline Text.Fuzzy to add INLINABLE pragmas" +([#2223](https://github.com/haskell/haskell-language-server/pull/2223)) by @pepeiborra +- feat(flake): expose hie-bios +([#2221](https://github.com/haskell/haskell-language-server/pull/2221)) by @teto +- flake: remove the 'follows' directive +([#2218](https://github.com/haskell/haskell-language-server/pull/2218)) by @teto +- Return completions lazily for massive savings +([#2217](https://github.com/haskell/haskell-language-server/pull/2217)) by @pepeiborra +- Inline Text.Fuzzy to add INLINABLE pragmas +([#2215](https://github.com/haskell/haskell-language-server/pull/2215)) by @pepeiborra +- Add chat on irc badge +([#2214](https://github.com/haskell/haskell-language-server/pull/2214)) by @jneira +- ghcide: Add flags to toggle building each executable +([#2212](https://github.com/haskell/haskell-language-server/pull/2212)) by @hololeap +- Add matrix haskell-tooling channel +([#2210](https://github.com/haskell/haskell-language-server/pull/2210)) by @jneira +- Relax upper bounds over ormolu and stylish-haskell +([#2207](https://github.com/haskell/haskell-language-server/pull/2207)) by @jneira +- Add missing config options in documentation +([#2203](https://github.com/haskell/haskell-language-server/pull/2203)) by @jneira +- Add gitlab CI +([#2200](https://github.com/haskell/haskell-language-server/pull/2200)) by @hasufell +- Apply workaround for 8.8.4 and windows to enable it in ci +([#2199](https://github.com/haskell/haskell-language-server/pull/2199)) by @jneira +- Drop ghc support for 8.6.4, 8.10.2, 8.10.3, 8.10.4 +([#2197](https://github.com/haskell/haskell-language-server/pull/2197)) by @jneira +- Consider all root paths when suggesting module name change. +([#2195](https://github.com/haskell/haskell-language-server/pull/2195)) by @cdsmith +- enable completions of local imports +([#2190](https://github.com/haskell/haskell-language-server/pull/2190)) by @alexnaspo +- Drop ghc-api-compat from dependency closure +([#2128](https://github.com/haskell/haskell-language-server/pull/2128)) by @fendor +- Reimplement shake (continued) +([#2060](https://github.com/haskell/haskell-language-server/pull/2060)) by @pepeiborra + ## 1.4.0 After a month of vacation a new hls release has arrived: @@ -27,6 +193,8 @@ After a month of vacation a new hls release has arrived: ### Pull requests merged for 1.4.0 +- Prepare 1.4.0 +([#2182](https://github.com/haskell/haskell-language-server/pull/2182)) by @jneira - Update flake to fix nix builds ([#2188](https://github.com/haskell/haskell-language-server/pull/2188)) by @jneira - Completions for project identifiers From 0fae1623f8c0ee087214877d2b790e05fe2b3f8f Mon Sep 17 00:00:00 2001 From: jneira Date: Tue, 16 Nov 2021 11:17:26 +0100 Subject: [PATCH 35/50] Comment out hackage for 9.0.1 --- .github/workflows/hackage.yml | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/.github/workflows/hackage.yml b/.github/workflows/hackage.yml index 99ae684f3a..547f5509af 100644 --- a/.github/workflows/hackage.yml +++ b/.github/workflows/hackage.yml @@ -22,7 +22,11 @@ jobs: "hls-splice-plugin", "hls-tactics-plugin", "hls-call-hierarchy-plugin", "haskell-language-server"] - ghc: ["9.0.1", "8.10.7", "8.8.4", "8.6.5"] + # Uncomment 9.0.1 when ghcide is buildable + ghc: [ # "9.0.1", + "8.10.7", + "8.8.4", + "8.6.5"] exclude: - ghc: "9.0.1" package: "hls-brittany-plugin" @@ -125,13 +129,13 @@ jobs: echo " floskell:base, floskell:ghc-prim, stylish-haskell:Cabal," >> cabal.project - name: "Build all package components in isolation" - if: steps.get-hackage-version.outputs.exists != 'true' && matrix.ghc != "9.0.1" + if: steps.get-hackage-version.outputs.exists != 'true' run: | cd $(ls -d ./incoming/${{ matrix.package }}-*) cabal build --enable-tests --enable-benchmarks - name: "Generate haddock for hackage" - if: steps.get-hackage-version.outputs.exists != 'true' && matrix.ghc != "9.0.1" + if: steps.get-hackage-version.outputs.exists != 'true' continue-on-error: matrix.ghc == "9.0.1" run: | cd $(ls -d ./incoming/${{ matrix.package }}-*) From 883e6abb23e5ddaf178458903032c2507a6d3d32 Mon Sep 17 00:00:00 2001 From: jneira Date: Tue, 16 Nov 2021 11:23:56 +0100 Subject: [PATCH 36/50] allow newer ghc-lib-parser --- .github/workflows/hackage.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/hackage.yml b/.github/workflows/hackage.yml index 547f5509af..6f0c5b19e5 100644 --- a/.github/workflows/hackage.yml +++ b/.github/workflows/hackage.yml @@ -126,7 +126,7 @@ jobs: # For brittany echo " brittany:base, brittany:ghc, brittany:ghc-boot-th, butcher:base, multistate:base, data-tree-print:base," >> cabal.project # For floskell and stylish-haskell - echo " floskell:base, floskell:ghc-prim, stylish-haskell:Cabal," >> cabal.project + echo " floskell:base, floskell:ghc-prim, stylish-haskell:Cabal,stylish-haskell:ghc-lib-parser," >> cabal.project - name: "Build all package components in isolation" if: steps.get-hackage-version.outputs.exists != 'true' From ea606a5011a93e4116162cf79a04b94c5c50c17d Mon Sep 17 00:00:00 2001 From: jneira Date: Tue, 16 Nov 2021 11:27:58 +0100 Subject: [PATCH 37/50] Remove redundant entry --- .github/workflows/hackage.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/hackage.yml b/.github/workflows/hackage.yml index 6f0c5b19e5..485f9a9d00 100644 --- a/.github/workflows/hackage.yml +++ b/.github/workflows/hackage.yml @@ -136,7 +136,6 @@ jobs: - name: "Generate haddock for hackage" if: steps.get-hackage-version.outputs.exists != 'true' - continue-on-error: matrix.ghc == "9.0.1" run: | cd $(ls -d ./incoming/${{ matrix.package }}-*) cabal haddock --haddock-for-hackage From 5d761f783ae4b9cb8661f23b4c252844ceb7c86d Mon Sep 17 00:00:00 2001 From: jneira Date: Tue, 16 Nov 2021 11:30:31 +0100 Subject: [PATCH 38/50] Correct condition --- .github/workflows/hackage.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/hackage.yml b/.github/workflows/hackage.yml index 485f9a9d00..95cfce44e1 100644 --- a/.github/workflows/hackage.yml +++ b/.github/workflows/hackage.yml @@ -141,7 +141,7 @@ jobs: cabal haddock --haddock-for-hackage - name: "Upload package dist tarball" - if: steps.get-hackage-version.outputs.exists != 'true' && matrix.ghc =="8.10.7" + if: steps.get-hackage-version.outputs.exists != 'true' && matrix.ghc == '8.10.7' uses: actions/upload-artifact@v2 with: name: ${{ matrix.package }} From 77c3865f5609b3c7c57732122e77f84fc11941f0 Mon Sep 17 00:00:00 2001 From: jneira Date: Tue, 16 Nov 2021 11:43:34 +0100 Subject: [PATCH 39/50] Cancel previous hackage jobs --- .github/workflows/hackage.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/hackage.yml b/.github/workflows/hackage.yml index 95cfce44e1..9e09249d6d 100644 --- a/.github/workflows/hackage.yml +++ b/.github/workflows/hackage.yml @@ -1,5 +1,10 @@ name: Hackage +# See: https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#concurrency. +concurrency: + group: ${{ github.head_ref }}-${{ github.workflow }} + cancel-in-progress: true + on: push: branches: From 4aedaab9e9d6c37c863d6d4748820e1737a6ab39 Mon Sep 17 00:00:00 2001 From: jneira Date: Wed, 17 Nov 2021 08:48:08 +0100 Subject: [PATCH 40/50] Add link to pepe's talk slides --- ChangeLog.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/ChangeLog.md b/ChangeLog.md index bda0ebdae4..5272ead4c1 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -4,11 +4,12 @@ Time for another hls release: -- @pepeiborra has worked hard to fix some 1.4.0 performance regressions and to make new improvements in the area +- @pepeiborra has done an epic work to improve performance, redefining some of the core pieces of HLS + - You can take an overall look to improvements in [these slides](https://drive.google.com/file/d/16FpmiHXX_rd2gAf5XVgWAIr4kg-AkUqX/view) - We have fourmolu support for ghc-9.0.1 thanks to @georgefst -- We have got improvements over import suggestions thanks to @yoshitsugu and alexnaspo -- Completions also has been improved thanks to @pepeiborra -- There has been lot of documentation updates by several contributors, thanks to you all too +- We have got improvements over import suggestions thanks to @yoshitsugu and @alexnaspo +- Completions also has been improved in general thanks to @pepeiborra +- There have been lot of documentation updates by several contributors, thanks also to all of you ### Deprecation notice for 1.5.0 From a445d20c1527f09329f1de8ce1ca4ff8428405b1 Mon Sep 17 00:00:00 2001 From: jneira Date: Wed, 17 Nov 2021 09:04:13 +0100 Subject: [PATCH 41/50] Use th-extras master --- cabal-ghc901.project | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/cabal-ghc901.project b/cabal-ghc901.project index 5450124611..a661c6db7f 100644 --- a/cabal-ghc901.project +++ b/cabal-ghc901.project @@ -35,10 +35,9 @@ package * source-repository-package type: git - location: https://github.com/anka-213/th-extras - tag: 57a97b4df128eb7b360e8ab9c5759392de8d1659 --- https://github.com/mokus0/th-extras/pull/8 --- https://github.com/mokus0/th-extras/issues/7 + location: https://github.com/mokus0/th-extras + tag: 0d050b24ec5ef37c825b6f28ebd46787191e2a2d +-- https://github.com/mokus0/th-extras/issues/10 source-repository-package type: git From 44f46cc9fbe9d8a8728a537b0ffaec8729e36bd4 Mon Sep 17 00:00:00 2001 From: jneira Date: Wed, 17 Nov 2021 09:04:33 +0100 Subject: [PATCH 42/50] Use th-extras master and uncomment packages --- stack-9.0.1.yaml | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/stack-9.0.1.yaml b/stack-9.0.1.yaml index 0fbe8b9119..5a20db9350 100644 --- a/stack-9.0.1.yaml +++ b/stack-9.0.1.yaml @@ -9,7 +9,7 @@ packages: - ./hls-test-utils - ./shake-bench - ./plugins/hls-call-hierarchy-plugin - # - ./plugins/hls-class-plugin + - ./plugins/hls-class-plugin - ./plugins/hls-haddock-comments-plugin - ./plugins/hls-eval-plugin - ./plugins/hls-explicit-imports-plugin @@ -18,9 +18,9 @@ packages: - ./plugins/hls-rename-plugin - ./plugins/hls-retrie-plugin - ./plugins/hls-splice-plugin - # - ./plugins/hls-tactics-plugin - # - ./plugins/hls-brittany-plugin - # - ./plugins/hls-stylish-haskell-plugin + - ./plugins/hls-tactics-plugin + - ./plugins/hls-brittany-plugin + - ./plugins/hls-stylish-haskell-plugin - ./plugins/hls-floskell-plugin - ./plugins/hls-fourmolu-plugin - ./plugins/hls-pragmas-plugin @@ -53,10 +53,9 @@ extra-deps: - lsp-test-0.14.0.1 - sqlite-simple-0.4.18.0 -- github: anka-213/th-extras - commit: 57a97b4df128eb7b360e8ab9c5759392de8d1659 -# https://github.com/mokus0/th-extras/pull/8 -# https://github.com/mokus0/th-extras/issues/7 +- github: mokus0/th-extras + commit: 0d050b24ec5ef37c825b6f28ebd46787191e2a2d +# https://github.com/mokus0/th-extras/issues/10 - github: anka-213/dependent-sum commit: 8cf4c7fbc3bfa2be475a17bb7c94a1e1e9a830b5 @@ -76,7 +75,7 @@ extra-deps: # end of shake-bench dpendencies -# due to floskell-0.10.5 and diagrams-core-1.5.0 +# due to floskell, stylish-haskell, brittany and shake-bench allow-newer: true configure-options: @@ -91,16 +90,19 @@ flags: haskell-language-server: pedantic: true + ignore-plugins-ghc-bounds: true class: false tactic: false # Dependencies fail - stylishHaskell: false brittany: false + retrie: BuildExecutable: false + # Stack doesn't support automatic flags. hls-hlint-plugin: hlint33: true + hyphenation: embed: true From 62683adf5728382da8e1f933747230b7c2f8dea1 Mon Sep 17 00:00:00 2001 From: jneira Date: Wed, 17 Nov 2021 12:11:09 +0100 Subject: [PATCH 43/50] add extra-1.7.9 --- stack-9.0.1.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/stack-9.0.1.yaml b/stack-9.0.1.yaml index 5a20db9350..c43f9a389a 100644 --- a/stack-9.0.1.yaml +++ b/stack-9.0.1.yaml @@ -36,6 +36,7 @@ extra-deps: - bytestring-encoding-0.1.0.0@sha256:460b49779fbf0112e8e2f1753c1ed9131eb18827600c298f4d6bb51c4e8c1c0d,1727 - dependent-map-0.4.0.0@sha256:ca2b131046f4340a1c35d138c5a003fe4a5be96b14efc26291ed35fd08c62221,1657 - dependent-sum-0.7.1.0@sha256:0e419237f5b86da3659772afff9cab355c0f8d5b3fdb15a5b30e673d8dc83941,2147 +- extra-1.7.9 - floskell-0.10.5 - heapsize-0.3.0.1@sha256:0b69aa97a46d819b700ac7b145f3b5493c3565cf2c5b8298682238d405d0326e,1417 - hiedb-0.4.1.0 From 21db7ae0228944d243ccd3cf30a60ebf316e1590 Mon Sep 17 00:00:00 2001 From: jneira Date: Wed, 17 Nov 2021 12:27:15 +0100 Subject: [PATCH 44/50] Add required extra-deps --- stack-9.0.1.yaml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/stack-9.0.1.yaml b/stack-9.0.1.yaml index c43f9a389a..9da5cc6b78 100644 --- a/stack-9.0.1.yaml +++ b/stack-9.0.1.yaml @@ -33,11 +33,17 @@ ghc-options: extra-deps: - blaze-textual-0.2.2.1 +- brittany-0.13.1.2 +- butcher-1.3.3.2 - bytestring-encoding-0.1.0.0@sha256:460b49779fbf0112e8e2f1753c1ed9131eb18827600c298f4d6bb51c4e8c1c0d,1727 +- czipwith-1.0.1.4 +- data-tree-print-0.1.0.2 - dependent-map-0.4.0.0@sha256:ca2b131046f4340a1c35d138c5a003fe4a5be96b14efc26291ed35fd08c62221,1657 - dependent-sum-0.7.1.0@sha256:0e419237f5b86da3659772afff9cab355c0f8d5b3fdb15a5b30e673d8dc83941,2147 - extra-1.7.9 - floskell-0.10.5 +- generic-lens-2.2.0.0 +- generic-lens-core-2.2.0.0 - heapsize-0.3.0.1@sha256:0b69aa97a46d819b700ac7b145f3b5493c3565cf2c5b8298682238d405d0326e,1417 - hiedb-0.4.1.0 - hspec-2.7.10 @@ -46,6 +52,7 @@ extra-deps: - implicit-hie-0.1.2.6 - implicit-hie-cradle-0.3.0.5 - monad-dijkstra-0.1.1.2 +- multistate-0.8.0.3 - refinery-0.4.0.0 - retrie-1.0.0.0 - some-1.0.2 @@ -53,6 +60,7 @@ extra-deps: - lsp-types-1.3.0.1 - lsp-test-0.14.0.1 - sqlite-simple-0.4.18.0 +- stylish-haskell-0.13.0.0 - github: mokus0/th-extras commit: 0d050b24ec5ef37c825b6f28ebd46787191e2a2d From 24eea8bed4c7838dc982d1185fe95f40876c79d2 Mon Sep 17 00:00:00 2001 From: jneira Date: Wed, 17 Nov 2021 13:55:15 +0100 Subject: [PATCH 45/50] Comment unbuildable packages again --- stack-9.0.1.yaml | 29 +++++++++-------------------- 1 file changed, 9 insertions(+), 20 deletions(-) diff --git a/stack-9.0.1.yaml b/stack-9.0.1.yaml index 9da5cc6b78..4d6fcbb6e7 100644 --- a/stack-9.0.1.yaml +++ b/stack-9.0.1.yaml @@ -9,7 +9,7 @@ packages: - ./hls-test-utils - ./shake-bench - ./plugins/hls-call-hierarchy-plugin - - ./plugins/hls-class-plugin + # - ./plugins/hls-class-plugin - ./plugins/hls-haddock-comments-plugin - ./plugins/hls-eval-plugin - ./plugins/hls-explicit-imports-plugin @@ -18,9 +18,9 @@ packages: - ./plugins/hls-rename-plugin - ./plugins/hls-retrie-plugin - ./plugins/hls-splice-plugin - - ./plugins/hls-tactics-plugin - - ./plugins/hls-brittany-plugin - - ./plugins/hls-stylish-haskell-plugin + # - ./plugins/hls-tactics-plugin + # - ./plugins/hls-brittany-plugin + # - ./plugins/hls-stylish-haskell-plugin - ./plugins/hls-floskell-plugin - ./plugins/hls-fourmolu-plugin - ./plugins/hls-pragmas-plugin @@ -33,17 +33,10 @@ ghc-options: extra-deps: - blaze-textual-0.2.2.1 -- brittany-0.13.1.2 -- butcher-1.3.3.2 - bytestring-encoding-0.1.0.0@sha256:460b49779fbf0112e8e2f1753c1ed9131eb18827600c298f4d6bb51c4e8c1c0d,1727 -- czipwith-1.0.1.4 -- data-tree-print-0.1.0.2 - dependent-map-0.4.0.0@sha256:ca2b131046f4340a1c35d138c5a003fe4a5be96b14efc26291ed35fd08c62221,1657 - dependent-sum-0.7.1.0@sha256:0e419237f5b86da3659772afff9cab355c0f8d5b3fdb15a5b30e673d8dc83941,2147 -- extra-1.7.9 - floskell-0.10.5 -- generic-lens-2.2.0.0 -- generic-lens-core-2.2.0.0 - heapsize-0.3.0.1@sha256:0b69aa97a46d819b700ac7b145f3b5493c3565cf2c5b8298682238d405d0326e,1417 - hiedb-0.4.1.0 - hspec-2.7.10 @@ -52,7 +45,6 @@ extra-deps: - implicit-hie-0.1.2.6 - implicit-hie-cradle-0.3.0.5 - monad-dijkstra-0.1.1.2 -- multistate-0.8.0.3 - refinery-0.4.0.0 - retrie-1.0.0.0 - some-1.0.2 @@ -60,11 +52,11 @@ extra-deps: - lsp-types-1.3.0.1 - lsp-test-0.14.0.1 - sqlite-simple-0.4.18.0 -- stylish-haskell-0.13.0.0 -- github: mokus0/th-extras - commit: 0d050b24ec5ef37c825b6f28ebd46787191e2a2d -# https://github.com/mokus0/th-extras/issues/10 +- github: anka-213/th-extras + commit: 57a97b4df128eb7b360e8ab9c5759392de8d1659 +# https://github.com/mokus0/th-extras/pull/8 +# https://github.com/mokus0/th-extras/issues/7 - github: anka-213/dependent-sum commit: 8cf4c7fbc3bfa2be475a17bb7c94a1e1e9a830b5 @@ -84,7 +76,7 @@ extra-deps: # end of shake-bench dpendencies -# due to floskell, stylish-haskell, brittany and shake-bench +# due to floskell-0.10.5 and diagrams-core-1.5.0 allow-newer: true configure-options: @@ -99,7 +91,6 @@ flags: haskell-language-server: pedantic: true - ignore-plugins-ghc-bounds: true class: false tactic: false # Dependencies fail stylishHaskell: false @@ -107,11 +98,9 @@ flags: retrie: BuildExecutable: false - # Stack doesn't support automatic flags. hls-hlint-plugin: hlint33: true - hyphenation: embed: true From 477e95a0fd502a90d53f6105de9b6354620da336 Mon Sep 17 00:00:00 2001 From: jneira Date: Wed, 17 Nov 2021 13:56:21 +0100 Subject: [PATCH 46/50] Add ignore-plugins-ghc-bounds --- stack-9.0.1.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/stack-9.0.1.yaml b/stack-9.0.1.yaml index 4d6fcbb6e7..30d2010f88 100644 --- a/stack-9.0.1.yaml +++ b/stack-9.0.1.yaml @@ -91,6 +91,7 @@ flags: haskell-language-server: pedantic: true + ignore-plugins-ghc-bounds: true class: false tactic: false # Dependencies fail stylishHaskell: false From 8034c17fcf4950851e2ff2daeb63d619a1c7ff3d Mon Sep 17 00:00:00 2001 From: jneira Date: Wed, 17 Nov 2021 14:01:05 +0100 Subject: [PATCH 47/50] Add #2354 --- ChangeLog.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ChangeLog.md b/ChangeLog.md index 5272ead4c1..4bc5b3c71c 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -20,6 +20,8 @@ Time for another hls release: ### Pull requests merged for 1.5.0 +- More completion fixes +([#2354](https://github.com/haskell/haskell-language-server/pull/2354)) by @pepeiborra - Update to latest prettyprinter API ([#2352](https://github.com/haskell/haskell-language-server/pull/2352)) by @fendor - Show build graph statistics in ghcide-bench From 5a762993be1a8ff779e61ba849ae1ad2b51f2084 Mon Sep 17 00:00:00 2001 From: jneira Date: Wed, 17 Nov 2021 14:09:53 +0100 Subject: [PATCH 48/50] Complete ghc deprecation notice --- ChangeLog.md | 6 ++++-- docs/supported-versions.md | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/ChangeLog.md b/ChangeLog.md index 4bc5b3c71c..e302eea5dc 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -10,12 +10,14 @@ Time for another hls release: - We have got improvements over import suggestions thanks to @yoshitsugu and @alexnaspo - Completions also has been improved in general thanks to @pepeiborra - There have been lot of documentation updates by several contributors, thanks also to all of you +- In this release we still don't have full support for all plugins and ghc-9.0.1 + - Missing plugins for ghc-9.0.1 are: hls-class-plugin, hls-tactics-plugin (wingman), hls-brittany-plugin and hls-stylish-haskell-plugin ### Deprecation notice for 1.5.0 - As we noted in the previous release we have dropped support for ghc versions 8.6.4, 8.10.2, 8.10.3, 8.10.4 in *this release* -- We will drop support for ghc version 8.10.5 *after this release* -- The advise is upgrade ghc to the last minor version: 8.6.5 or 8.10.7 +- We will drop support for ghc versions 8.10.5 and 8.8.3 *after this release* +- The advise is upgrade ghc to the last minor version: 8.6.5, 8.8.4 or 8.10.7 - You can read more about ghc deprecation policy and schedule [here](https://haskell-language-server.readthedocs.io/en/latest/supported-versions.html) ### Pull requests merged for 1.5.0 diff --git a/docs/supported-versions.md b/docs/supported-versions.md index 700b5f0de8..927f26cbbe 100644 --- a/docs/supported-versions.md +++ b/docs/supported-versions.md @@ -10,13 +10,13 @@ The current support for different GHC versions is given in the following table. | 9.0.1 | [current](https://github.com/haskell/haskell-language-server/releases/latest) ([partial](https://github.com/haskell/haskell-language-server/issues/297)) | | | 8.10.7 | [current](https://github.com/haskell/haskell-language-server/releases/latest) | | | 8.10.6 | [current](https://github.com/haskell/haskell-language-server/releases/latest) | will be deprecated after LTS and HLS full support for ghc-9.0 | -| 8.10.5 | [current](https://github.com/haskell/haskell-language-server/releases/latest) | deprecated, will be removed after 1.5.0 | +| 8.10.5 | [1.5.0](https://github.com/haskell/haskell-language-server/releases/tag/1.5.0) | deprecated | | 8.10.4 | [1.4.0](https://github.com/haskell/haskell-language-server/releases/tag/1.4.0) | deprecated | | 8.10.3 | [1.4.0](https://github.com/haskell/haskell-language-server/releases/tag/1.4.0) | deprecated | | 8.10.2 | [1.4.0](https://github.com/haskell/haskell-language-server/releases/tag/1.4.0) | deprecated | | 8.10.1 | [0.9.0](https://github.com/haskell/haskell-language-server/releases/tag/0.9.0) | deprecated | | 8.8.4 | [current](https://github.com/haskell/haskell-language-server/releases/latest) | will be deprecated after LTS and HLS full support for ghc-9.2 | -| 8.8.3 | [current](https://github.com/haskell/haskell-language-server/releases/latest) | deprecated, will be removed after 1.5.0 | +| 8.8.3 | [1.5.0](https://github.com/haskell/haskell-language-server/releases/1.5.0) | deprecated | | 8.8.2 | [1.2.0](https://github.com/haskell/haskell-language-server/releases/tag/1.2.0) | deprecated | | 8.6.5 | [current](https://github.com/haskell/haskell-language-server/releases/latest) | will be deprecated after LTS and HLS full suppot for ghc-9.2 | | 8.6.4 | [1.4.0](https://github.com/haskell/haskell-language-server/releases/tag/1.4.0) | deprecated | From 4872fa9bc37540d5bc54911e55f9d9bd9923ca7e Mon Sep 17 00:00:00 2001 From: jneira Date: Wed, 17 Nov 2021 14:14:56 +0100 Subject: [PATCH 49/50] Add extra-1.7.9 --- docs/supported-versions.md | 2 +- stack-9.0.1.yaml | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/supported-versions.md b/docs/supported-versions.md index 927f26cbbe..f3466f2a19 100644 --- a/docs/supported-versions.md +++ b/docs/supported-versions.md @@ -52,7 +52,7 @@ We will warn users about the upcoming deprecation of a GHC version in the notes ### Why deprecate older versions of GHC? -`haskell-language-server`(HLS) is highly tied to the ghc api.This imposes a high maintenance cost: +`haskell-language-server`(HLS) is highly tied to the ghc api. This imposes a high maintenance cost: - The codebase is littered with conditional logic, - We own auxiliary packages to support older versions of ghc. diff --git a/stack-9.0.1.yaml b/stack-9.0.1.yaml index 30d2010f88..7044e94b39 100644 --- a/stack-9.0.1.yaml +++ b/stack-9.0.1.yaml @@ -36,6 +36,7 @@ extra-deps: - bytestring-encoding-0.1.0.0@sha256:460b49779fbf0112e8e2f1753c1ed9131eb18827600c298f4d6bb51c4e8c1c0d,1727 - dependent-map-0.4.0.0@sha256:ca2b131046f4340a1c35d138c5a003fe4a5be96b14efc26291ed35fd08c62221,1657 - dependent-sum-0.7.1.0@sha256:0e419237f5b86da3659772afff9cab355c0f8d5b3fdb15a5b30e673d8dc83941,2147 +- extra-1.7.9 - floskell-0.10.5 - heapsize-0.3.0.1@sha256:0b69aa97a46d819b700ac7b145f3b5493c3565cf2c5b8298682238d405d0326e,1417 - hiedb-0.4.1.0 From b7b9c75ef55d8ef9ecbb1c6167e04a713d8e82ca Mon Sep 17 00:00:00 2001 From: jneira Date: Wed, 17 Nov 2021 19:40:36 +0100 Subject: [PATCH 50/50] Add #2346 to Changelog --- ChangeLog.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ChangeLog.md b/ChangeLog.md index e302eea5dc..81540161bd 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -26,6 +26,8 @@ Time for another hls release: ([#2354](https://github.com/haskell/haskell-language-server/pull/2354)) by @pepeiborra - Update to latest prettyprinter API ([#2352](https://github.com/haskell/haskell-language-server/pull/2352)) by @fendor +- Use hackage version of czipwith +([#2346](https://github.com/haskell/haskell-language-server/pull/2346)) by @jneira - Show build graph statistics in ghcide-bench ([#2343](https://github.com/haskell/haskell-language-server/pull/2343)) by @pepeiborra - contributing: add implicit-hie gen-hie > hie.yaml note