diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 8b6f15746f..d8db594e5d 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -30,7 +30,7 @@ jobs: strategy: fail-fast: false matrix: - ghc: ["9.6.2", "9.4.6", "9.4.5", "9.2.8", "9.0.2", "8.10.7"] + ghc: ["9.6.2", "9.4.7", "9.4.6", "9.4.5", "9.2.8", "9.0.2", "8.10.7"] platform: [ { image: "debian:9" , installCmd: "sed -i s/deb.debian.org/archive.debian.org/g /etc/apt/sources.list && sed -i 's|security.debian.org|archive.debian.org/|g' /etc/apt/sources.list && sed -i /-updates/d /etc/apt/sources.list && apt-get update && apt-get install -y" , toolRequirements: "libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5 libtinfo5 patchelf" @@ -163,6 +163,15 @@ jobs: , ARTIFACT: "x86_64-linux-unknown" , ADD_CABAL_ARGS: "--enable-split-sections" } + - ghc: 9.4.7 + platform: + { image: "fedora:27" + , installCmd: "dnf install -y" + , toolRequirements: "autoconf automake binutils bzip2 coreutils curl elfutils-devel elfutils-libs findutils gcc gcc-c++ git gmp gmp-devel jq lbzip2 make ncurses ncurses-compat-libs ncurses-devel openssh-clients patch perl pxz python3 sqlite sudo wget which xz zlib-devel patchelf" + , DISTRO: "Unknown" + , ARTIFACT: "x86_64-linux-unknown" + , ADD_CABAL_ARGS: "--enable-split-sections" + } - ghc: 9.6.2 platform: { image: "rockylinux:8" @@ -231,7 +240,7 @@ jobs: strategy: fail-fast: true matrix: - ghc: ["9.6.2", "9.4.6", "9.4.5", "9.2.8", "9.0.2", "8.10.7"] + ghc: ["9.6.2", "9.4.7", "9.4.6", "9.4.5", "9.2.8", "9.0.2", "8.10.7"] steps: - uses: docker://arm64v8/ubuntu:focal name: Cleanup (aarch64 linux) @@ -291,7 +300,7 @@ jobs: strategy: fail-fast: false matrix: - ghc: ["9.6.2", "9.4.6", "9.4.5", "9.2.8", "9.0.2", "8.10.7"] + ghc: ["9.6.2", "9.4.7", "9.4.6", "9.4.5", "9.2.8", "9.0.2", "8.10.7"] steps: - name: Checkout code uses: actions/checkout@v3 @@ -336,7 +345,7 @@ jobs: strategy: fail-fast: false matrix: - ghc: ["9.6.2", "9.4.6", "9.4.5", "9.2.8", "8.10.7"] + ghc: ["9.6.2", "9.4.7", "9.4.6", "9.4.5", "9.2.8", "8.10.7"] steps: - name: Checkout code uses: actions/checkout@v3 @@ -390,7 +399,7 @@ jobs: strategy: fail-fast: false matrix: - ghc: ["9.6.2", "9.4.6", "9.4.5", "9.2.8", "9.0.2", "8.10.7"] + ghc: ["9.6.2", "9.4.7", "9.4.6", "9.4.5", "9.2.8", "9.0.2", "8.10.7"] steps: - name: install windows deps shell: pwsh diff --git a/.gitignore b/.gitignore index 55f013b8d0..29ead939cc 100644 --- a/.gitignore +++ b/.gitignore @@ -46,3 +46,5 @@ result-doc out/ store/ gh-release-artifacts/ + +.hls/ diff --git a/ChangeLog.md b/ChangeLog.md index f6f3391bca..3711a55763 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -1,5 +1,27 @@ # Changelog for haskell-language-server +## 2.2.0.0 + +* Binaries for GHC 9.4.7 +* Forward compatibility with latest VSCode client changes + +### Pull Requests + +- hls-cabal-fmt-plugin: Use the file contents of the LSP request + ([#3776](https://github.com/haskell/haskell-language-server/pull/3776)) by @fendor +- Adapt to lsp changes for workspace/configuration + ([#3773](https://github.com/haskell/haskell-language-server/pull/3773)) by @michaelpj +- Rework "Configuration" and "Manually testing HLS" documentations + ([#3772](https://github.com/haskell/haskell-language-server/pull/3772)) by @sir4ur0n +- Fix `main-is` completion suggestions not being relative to `hs-source-dirs` + ([#3766](https://github.com/haskell/haskell-language-server/pull/3766)) by @VeryMilkyJoe +- Remove suggestion of stanzas inside of stanza context + ([#3761](https://github.com/haskell/haskell-language-server/pull/3761)) by @VeryMilkyJoe +- Pedantic ghcide + ([#3751](https://github.com/haskell/haskell-language-server/pull/3751)) by @joyfulmantis +- Fix #3574 and support resolve in explicit records + ([#3750](https://github.com/haskell/haskell-language-server/pull/3750)) by @joyfulmantis + ## 2.1.0.0 * Binaries for GHC 9.4.6 diff --git a/RELEASING.md b/RELEASING.md index 594b7a136c..c1039dc668 100644 --- a/RELEASING.md +++ b/RELEASING.md @@ -8,18 +8,18 @@ - Look for `TODO:` to find locations that require extra care for GHC versions. - [ ] check all plugins still work if release includes code changes - [ ] bump package versions in all `*.cabal` files (same version as hls) - - HLS uses a lockstep versioning. The core packages and all plugins use the same version number, and only support exactly the this version. + - HLS uses lockstep versioning. The core packages and all plugins use the same version number, and only support exactly this version. - Exceptions: - `hie-compat` requires no automatic version bump. - `shake-bench` is an internal testing tool, not exposed to the outside world. Thus, no version bump required for releases. - For updating cabal files, the following script can be used: - ```sh # Update all `version:` fields - sed -ri "s/^version:( +)2.1.0.0/version:\12.2.0.0/" **/*.cabal + sed -ri "s/^version:( +)2.2.0.0/version:\12.3.0.0/" **/*.cabal # Update all constraints expected to be in the form `== `. # We usually don't force an exact version, so this is relatively unambiguous. # We could introduce some more ad-hoc parsing, if there is still ambiguity. - sed -ri "s/== 2.1.0.0/== 2.2.0.0/" **/*.cabal + sed -ri "s/== 2.2.0.0/== 2.3.0.0/" **/*.cabal ``` - It still requires manual verification and review - [ ] generate and update changelog diff --git a/ghcide-bench/ghcide-bench.cabal b/ghcide-bench/ghcide-bench.cabal index d52848a069..c036a8a465 100644 --- a/ghcide-bench/ghcide-bench.cabal +++ b/ghcide-bench/ghcide-bench.cabal @@ -2,7 +2,7 @@ cabal-version: 3.0 build-type: Simple category: Development name: ghcide-bench -version: 2.1.0.0 +version: 2.2.0.0 license: Apache-2.0 license-file: LICENSE author: The Haskell IDE team diff --git a/ghcide/ghcide.cabal b/ghcide/ghcide.cabal index 17bb93f16d..9b7d502a4c 100644 --- a/ghcide/ghcide.cabal +++ b/ghcide/ghcide.cabal @@ -2,7 +2,7 @@ cabal-version: 3.0 build-type: Simple category: Development name: ghcide -version: 2.1.0.0 +version: 2.2.0.0 license: Apache-2.0 license-file: LICENSE author: Digital Asset and Ghcide contributors @@ -70,7 +70,7 @@ library haddock-library >= 1.8 && < 1.12, hashable, hie-compat ^>= 0.3.0.0, - hls-plugin-api == 2.1.0.0, + hls-plugin-api == 2.2.0.0, lens, list-t, hiedb == 0.4.3.*, @@ -86,7 +86,7 @@ library row-types, text-rope, safe-exceptions, - hls-graph == 2.1.0.0, + hls-graph == 2.2.0.0, sorted-list, sqlite-simple, stm, diff --git a/haskell-language-server.cabal b/haskell-language-server.cabal index c38b4a147d..99b2462b79 100644 --- a/haskell-language-server.cabal +++ b/haskell-language-server.cabal @@ -1,7 +1,7 @@ cabal-version: 3.0 category: Development name: haskell-language-server -version: 2.1.0.0 +version: 2.2.0.0 synopsis: LSP server for GHC description: Please see the README on GitHub at @@ -213,144 +213,144 @@ flag cabalfmt common cabalfmt if flag(cabalfmt) - build-depends: hls-cabal-fmt-plugin == 2.1.0.0 + build-depends: hls-cabal-fmt-plugin == 2.2.0.0 cpp-options: -Dhls_cabalfmt common cabal if flag(cabal) - build-depends: hls-cabal-plugin == 2.1.0.0 + build-depends: hls-cabal-plugin == 2.2.0.0 cpp-options: -Dhls_cabal common class if flag(class) - build-depends: hls-class-plugin == 2.1.0.0 + build-depends: hls-class-plugin == 2.2.0.0 cpp-options: -Dhls_class common callHierarchy if flag(callHierarchy) - build-depends: hls-call-hierarchy-plugin == 2.1.0.0 + build-depends: hls-call-hierarchy-plugin == 2.2.0.0 cpp-options: -Dhls_callHierarchy common haddockComments if flag(haddockComments) && (impl(ghc < 9.2.1) || flag(ignore-plugins-ghc-bounds)) - build-depends: hls-haddock-comments-plugin == 2.1.0.0 + build-depends: hls-haddock-comments-plugin == 2.2.0.0 cpp-options: -Dhls_haddockComments common eval if flag(eval) - build-depends: hls-eval-plugin == 2.1.0.0 + build-depends: hls-eval-plugin == 2.2.0.0 cpp-options: -Dhls_eval common importLens if flag(importLens) - build-depends: hls-explicit-imports-plugin == 2.1.0.0 + build-depends: hls-explicit-imports-plugin == 2.2.0.0 cpp-options: -Dhls_importLens common rename if flag(rename) - build-depends: hls-rename-plugin == 2.1.0.0 + build-depends: hls-rename-plugin == 2.2.0.0 cpp-options: -Dhls_rename common retrie if flag(retrie) - build-depends: hls-retrie-plugin == 2.1.0.0 + build-depends: hls-retrie-plugin == 2.2.0.0 cpp-options: -Dhls_retrie common tactic if flag(tactic) && (impl(ghc < 9.2.1) || flag(ignore-plugins-ghc-bounds)) - build-depends: hls-tactics-plugin == 2.1.0.0 + build-depends: hls-tactics-plugin == 2.2.0.0 cpp-options: -Dhls_tactic common hlint if flag(hlint) - build-depends: hls-hlint-plugin == 2.1.0.0 + build-depends: hls-hlint-plugin == 2.2.0.0 cpp-options: -Dhls_hlint common stan if flag(stan) && (impl(ghc >= 8.10) && impl(ghc < 9.0)) - build-depends: hls-stan-plugin == 2.1.0.0 + build-depends: hls-stan-plugin == 2.2.0.0 cpp-options: -Dhls_stan common moduleName if flag(moduleName) - build-depends: hls-module-name-plugin == 2.1.0.0 + build-depends: hls-module-name-plugin == 2.2.0.0 cpp-options: -Dhls_moduleName common pragmas if flag(pragmas) - build-depends: hls-pragmas-plugin == 2.1.0.0 + build-depends: hls-pragmas-plugin == 2.2.0.0 cpp-options: -Dhls_pragmas common splice if flag(splice) - build-depends: hls-splice-plugin == 2.1.0.0 + build-depends: hls-splice-plugin == 2.2.0.0 cpp-options: -Dhls_splice common alternateNumberFormat if flag(alternateNumberFormat) - build-depends: hls-alternate-number-format-plugin == 2.1.0.0 + build-depends: hls-alternate-number-format-plugin == 2.2.0.0 cpp-options: -Dhls_alternateNumberFormat common qualifyImportedNames if flag(qualifyImportedNames) - build-depends: hls-qualify-imported-names-plugin == 2.1.0.0 + build-depends: hls-qualify-imported-names-plugin == 2.2.0.0 cpp-options: -Dhls_qualifyImportedNames common codeRange if flag(codeRange) - build-depends: hls-code-range-plugin == 2.1.0.0 + build-depends: hls-code-range-plugin == 2.2.0.0 cpp-options: -Dhls_codeRange common changeTypeSignature if flag(changeTypeSignature) - build-depends: hls-change-type-signature-plugin == 2.1.0.0 + build-depends: hls-change-type-signature-plugin == 2.2.0.0 cpp-options: -Dhls_changeTypeSignature common gadt if flag(gadt) - build-depends: hls-gadt-plugin == 2.1.0.0 + build-depends: hls-gadt-plugin == 2.2.0.0 cpp-options: -Dhls_gadt common explicitFixity if flag(explicitFixity) - build-depends: hls-explicit-fixity-plugin == 2.1.0.0 + build-depends: hls-explicit-fixity-plugin == 2.2.0.0 cpp-options: -DexplicitFixity common explicitFields if flag(explicitFields) - build-depends: hls-explicit-record-fields-plugin == 2.1.0.0 + build-depends: hls-explicit-record-fields-plugin == 2.2.0.0 cpp-options: -DexplicitFields common overloadedRecordDot if flag(overloadedRecordDot) && (impl(ghc >= 9.2.0) || flag(ignore-plugins-ghc-bounds)) - build-depends: hls-overloaded-record-dot-plugin == 2.1.0.0 + build-depends: hls-overloaded-record-dot-plugin == 2.2.0.0 cpp-options: -Dhls_overloaded_record_dot -- formatters common floskell if flag(floskell) && impl(ghc < 9.5) - build-depends: hls-floskell-plugin == 2.1.0.0 + build-depends: hls-floskell-plugin == 2.2.0.0 cpp-options: -Dhls_floskell common fourmolu if flag(fourmolu) - build-depends: hls-fourmolu-plugin == 2.1.0.0 + build-depends: hls-fourmolu-plugin == 2.2.0.0 cpp-options: -Dhls_fourmolu common ormolu if flag(ormolu) && impl(ghc < 9.7) - build-depends: hls-ormolu-plugin == 2.1.0.0 + build-depends: hls-ormolu-plugin == 2.2.0.0 cpp-options: -Dhls_ormolu common stylishHaskell if flag(stylishHaskell) - build-depends: hls-stylish-haskell-plugin == 2.1.0.0 + build-depends: hls-stylish-haskell-plugin == 2.2.0.0 cpp-options: -Dhls_stylishHaskell common refactor if flag(refactor) - build-depends: hls-refactor-plugin == 2.1.0.0 + build-depends: hls-refactor-plugin == 2.2.0.0 cpp-options: -Dhls_refactor library @@ -405,12 +405,12 @@ library , cryptohash-sha1 , data-default , ghc - , ghcide == 2.1.0.0 + , ghcide == 2.2.0.0 , githash >=0.1.6.1 , lsp >= 2.2.0.0 , hie-bios , hiedb - , hls-plugin-api == 2.1.0.0 + , hls-plugin-api == 2.2.0.0 , optparse-applicative , optparse-simple , process @@ -549,7 +549,7 @@ test-suite func-test , lens-aeson , ghcide , ghcide-test-utils - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 , lsp-types , aeson , hls-plugin-api diff --git a/hls-graph/hls-graph.cabal b/hls-graph/hls-graph.cabal index ca6a786475..7593238b58 100644 --- a/hls-graph/hls-graph.cabal +++ b/hls-graph/hls-graph.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-graph -version: 2.1.0.0 +version: 2.2.0.0 synopsis: Haskell Language Server internal graph API description: Please see the README on GitHub at diff --git a/hls-plugin-api/hls-plugin-api.cabal b/hls-plugin-api/hls-plugin-api.cabal index a3ae1b5c5e..379a8750a9 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: 2.1.0.0 +version: 2.2.0.0 synopsis: Haskell Language Server API for plugin communication description: Please see the README on GitHub at @@ -59,7 +59,7 @@ library , filepath , ghc , hashable - , hls-graph == 2.1.0.0 + , hls-graph == 2.2.0.0 , lens , lens-aeson , lsp ^>=2.2 diff --git a/hls-test-utils/hls-test-utils.cabal b/hls-test-utils/hls-test-utils.cabal index 279bdfb2c9..9d7840a4dd 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: 2.1.0.0 +version: 2.2.0.0 synopsis: Utilities used in the tests of Haskell Language Server description: Please see the README on GitHub at @@ -41,9 +41,9 @@ library , directory , extra , filepath - , ghcide == 2.1.0.0 + , ghcide == 2.2.0.0 , hls-graph - , hls-plugin-api == 2.1.0.0 + , hls-plugin-api == 2.2.0.0 , lens , lsp ^>=2.2 , lsp-test ^>=0.16 diff --git a/plugins/hls-alternate-number-format-plugin/hls-alternate-number-format-plugin.cabal b/plugins/hls-alternate-number-format-plugin/hls-alternate-number-format-plugin.cabal index 81d95b16fc..f31dbf9487 100644 --- a/plugins/hls-alternate-number-format-plugin/hls-alternate-number-format-plugin.cabal +++ b/plugins/hls-alternate-number-format-plugin/hls-alternate-number-format-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-alternate-number-format-plugin -version: 2.1.0.0 +version: 2.2.0.0 synopsis: Provide Alternate Number Formats plugin for Haskell Language Server description: Please see the README on GitHub at @@ -32,10 +32,10 @@ library , base >=4.12 && < 5 , containers , extra - , ghcide == 2.1.0.0 + , ghcide == 2.2.0.0 , ghc-boot-th , hls-graph - , hls-plugin-api == 2.1.0.0 + , hls-plugin-api == 2.2.0.0 , hie-compat , lens , lsp ^>=2.2.0.0 @@ -64,7 +64,7 @@ test-suite tests , base >=4.12 && < 5 , filepath , hls-alternate-number-format-plugin - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 , lsp , QuickCheck , regex-tdfa diff --git a/plugins/hls-cabal-fmt-plugin/hls-cabal-fmt-plugin.cabal b/plugins/hls-cabal-fmt-plugin/hls-cabal-fmt-plugin.cabal index 132e51d187..bf2cba3902 100644 --- a/plugins/hls-cabal-fmt-plugin/hls-cabal-fmt-plugin.cabal +++ b/plugins/hls-cabal-fmt-plugin/hls-cabal-fmt-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-cabal-fmt-plugin -version: 2.1.0.0 +version: 2.2.0.0 synopsis: Integration with the cabal-fmt code formatter description: Please see the README on GitHub at @@ -33,8 +33,8 @@ library , base >=4.12 && <5 , directory , filepath - , ghcide == 2.1.0.0 - , hls-plugin-api == 2.1.0.0 + , ghcide == 2.2.0.0 + , hls-plugin-api == 2.2.0.0 , lens , lsp-types , mtl @@ -56,7 +56,7 @@ test-suite tests , directory , filepath , hls-cabal-fmt-plugin - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 if flag(isolateTests) build-tool-depends: cabal-fmt:cabal-fmt ^>=0.1.6 diff --git a/plugins/hls-cabal-plugin/hls-cabal-plugin.cabal b/plugins/hls-cabal-plugin/hls-cabal-plugin.cabal index 9a92021541..fd5dc997c2 100644 --- a/plugins/hls-cabal-plugin/hls-cabal-plugin.cabal +++ b/plugins/hls-cabal-plugin/hls-cabal-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 3.0 name: hls-cabal-plugin -version: 2.1.0.0 +version: 2.2.0.0 synopsis: Cabal integration plugin with Haskell Language Server description: Please see the README on GitHub at @@ -49,10 +49,10 @@ library , directory , filepath , extra >=1.7.4 - , ghcide == 2.1.0.0 + , ghcide == 2.2.0.0 , hashable - , hls-plugin-api == 2.1.0.0 - , hls-graph == 2.1.0.0 + , hls-plugin-api == 2.2.0.0 + , hls-graph == 2.2.0.0 , lens , lsp ^>=2.2 , lsp-types ^>=2.0.2 @@ -84,7 +84,7 @@ test-suite tests , filepath , ghcide , hls-cabal-plugin - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 , lens , lsp , 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 79228b57d8..0abd917540 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: 2.1.0.0 +version: 2.2.0.0 synopsis: Call hierarchy plugin for Haskell Language Server description: Please see the README on GitHub at @@ -33,9 +33,9 @@ library , base >=4.12 && <5 , containers , extra - , ghcide == 2.1.0.0 + , ghcide == 2.2.0.0 , hiedb - , hls-plugin-api == 2.1.0.0 + , hls-plugin-api == 2.2.0.0 , lens , lsp >=2.2.0.0 , sqlite-simple @@ -59,7 +59,7 @@ test-suite tests , extra , filepath , hls-call-hierarchy-plugin - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 , ghcide-test-utils , lens , lsp diff --git a/plugins/hls-change-type-signature-plugin/hls-change-type-signature-plugin.cabal b/plugins/hls-change-type-signature-plugin/hls-change-type-signature-plugin.cabal index 8e30a0a9c2..8d25f02b0d 100644 --- a/plugins/hls-change-type-signature-plugin/hls-change-type-signature-plugin.cabal +++ b/plugins/hls-change-type-signature-plugin/hls-change-type-signature-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-change-type-signature-plugin -version: 2.1.0.0 +version: 2.2.0.0 synopsis: Change a declarations type signature with a Code Action description: Please see the README on GitHub at @@ -28,8 +28,8 @@ library hs-source-dirs: src build-depends: , base >=4.12 && < 5 - , ghcide == 2.1.0.0 - , hls-plugin-api == 2.1.0.0 + , ghcide == 2.2.0.0 + , hls-plugin-api == 2.2.0.0 , lsp-types , regex-tdfa , syb @@ -61,7 +61,7 @@ test-suite tests , base >=4.12 && < 5 , filepath , hls-change-type-signature-plugin - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 , lsp , QuickCheck , regex-tdfa diff --git a/plugins/hls-class-plugin/hls-class-plugin.cabal b/plugins/hls-class-plugin/hls-class-plugin.cabal index ac231638b3..aaa2a5fec1 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: 2.1.0.0 +version: 2.2.0.0 synopsis: Class/instance management plugin for Haskell Language Server @@ -39,10 +39,10 @@ library , deepseq , extra , ghc - , ghcide == 2.1.0.0 + , ghcide == 2.2.0.0 , ghc-boot-th , hls-graph - , hls-plugin-api == 2.1.0.0 + , hls-plugin-api == 2.2.0.0 , lens , lsp , mtl @@ -75,7 +75,7 @@ test-suite tests , ghcide , hls-class-plugin , hls-plugin-api - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 , lens , lsp-types , row-types diff --git a/plugins/hls-code-range-plugin/hls-code-range-plugin.cabal b/plugins/hls-code-range-plugin/hls-code-range-plugin.cabal index 5a9a858053..fa50ccb7e5 100644 --- a/plugins/hls-code-range-plugin/hls-code-range-plugin.cabal +++ b/plugins/hls-code-range-plugin/hls-code-range-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-code-range-plugin -version: 2.1.0.0 +version: 2.2.0.0 synopsis: HLS Plugin to support smart selection range and Folding range @@ -37,9 +37,9 @@ library , containers , deepseq , extra - , ghcide == 2.1.0.0 + , ghcide == 2.2.0.0 , hashable - , hls-plugin-api == 2.1.0.0 + , hls-plugin-api == 2.2.0.0 , lens , lsp , mtl @@ -62,10 +62,10 @@ test-suite tests , bytestring , containers , filepath - , ghcide == 2.1.0.0 + , ghcide == 2.2.0.0 , hls-code-range-plugin , hls-plugin-api - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 , lens , lsp , lsp-test diff --git a/plugins/hls-eval-plugin/hls-eval-plugin.cabal b/plugins/hls-eval-plugin/hls-eval-plugin.cabal index 905ed97673..58b6743218 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: 2.1.0.0 +version: 2.2.0.0 synopsis: Eval plugin for Haskell Language Server description: Please see the README on GitHub at @@ -67,10 +67,10 @@ library , ghc , ghc-boot-th , ghc-paths - , ghcide == 2.1.0.0 + , ghcide == 2.2.0.0 , hashable , hls-graph - , hls-plugin-api == 2.1.0.0 + , hls-plugin-api == 2.2.0.0 , lens , lsp , lsp-types @@ -112,7 +112,7 @@ test-suite tests , filepath , hls-eval-plugin , hls-plugin-api - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 , lens , lsp-types , text diff --git a/plugins/hls-explicit-fixity-plugin/hls-explicit-fixity-plugin.cabal b/plugins/hls-explicit-fixity-plugin/hls-explicit-fixity-plugin.cabal index 166af462cd..665196f821 100644 --- a/plugins/hls-explicit-fixity-plugin/hls-explicit-fixity-plugin.cabal +++ b/plugins/hls-explicit-fixity-plugin/hls-explicit-fixity-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-explicit-fixity-plugin -version: 2.1.0.0 +version: 2.2.0.0 synopsis: Show fixity explicitly while hovering description: Please see the README on GitHub at @@ -30,9 +30,9 @@ library , deepseq , extra , ghc - , ghcide == 2.1.0.0 + , ghcide == 2.2.0.0 , hashable - , hls-plugin-api == 2.1.0.0 + , hls-plugin-api == 2.2.0.0 , lsp >=2.2 , text , transformers @@ -55,5 +55,5 @@ test-suite tests , base , filepath , hls-explicit-fixity-plugin - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 , text 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 6f2fed8e6b..8d91af76c2 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: 2.1.0.0 +version: 2.2.0.0 synopsis: Explicit imports plugin for Haskell Language Server description: Please see the README on GitHub at @@ -38,9 +38,9 @@ library , containers , deepseq , ghc - , ghcide == 2.1.0.0 + , ghcide == 2.2.0.0 , hls-graph - , hls-plugin-api == 2.1.0.0 + , hls-plugin-api == 2.2.0.0 , lens , lsp , mtl diff --git a/plugins/hls-explicit-record-fields-plugin/hls-explicit-record-fields-plugin.cabal b/plugins/hls-explicit-record-fields-plugin/hls-explicit-record-fields-plugin.cabal index 612e97e12f..a7e11cb9e6 100644 --- a/plugins/hls-explicit-record-fields-plugin/hls-explicit-record-fields-plugin.cabal +++ b/plugins/hls-explicit-record-fields-plugin/hls-explicit-record-fields-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 3.0 name: hls-explicit-record-fields-plugin -version: 2.1.0.0 +version: 2.2.0.0 synopsis: Explicit record fields plugin for Haskell Language Server description: Please see the README on GitHub at @@ -35,8 +35,8 @@ library build-depends: , base >=4.12 && <5 , ghc - , ghcide == 2.1.0.0 - , hls-plugin-api == 2.1.0.0 + , ghcide == 2.2.0.0 + , hls-plugin-api == 2.2.0.0 , lsp , lens , hls-graph diff --git a/plugins/hls-floskell-plugin/hls-floskell-plugin.cabal b/plugins/hls-floskell-plugin/hls-floskell-plugin.cabal index 22c42d126a..8a0c0e6710 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: 2.1.0.0 +version: 2.2.0.0 synopsis: Integration with the Floskell code formatter description: Please see the README on GitHub at @@ -28,8 +28,8 @@ library build-depends: , base >=4.12 && <5 , floskell ^>=0.10 - , ghcide == 2.1.0.0 - , hls-plugin-api == 2.1.0.0 + , ghcide == 2.2.0.0 + , hls-plugin-api == 2.2.0.0 , lsp-types ^>=2.0.2.0 , mtl , text @@ -49,4 +49,4 @@ test-suite tests , base , filepath , hls-floskell-plugin - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 diff --git a/plugins/hls-fourmolu-plugin/hls-fourmolu-plugin.cabal b/plugins/hls-fourmolu-plugin/hls-fourmolu-plugin.cabal index c1b4ed1974..8944252459 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: 2.1.0.0 +version: 2.2.0.0 synopsis: Integration with the Fourmolu code formatter description: Please see the README on GitHub at @@ -35,8 +35,8 @@ library , fourmolu ^>=0.3 || ^>=0.4 || ^>= 0.6 || ^>= 0.7 || ^>= 0.8 || ^>= 0.9 || ^>= 0.10 || ^>= 0.11 || ^>= 0.12 || ^>= 0.13 , ghc , ghc-boot-th - , ghcide == 2.1.0.0 - , hls-plugin-api == 2.1.0.0 + , ghcide == 2.2.0.0 + , hls-plugin-api == 2.2.0.0 , lens , lsp , mtl @@ -65,5 +65,5 @@ test-suite tests , filepath , hls-fourmolu-plugin , hls-plugin-api - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 , lsp-test diff --git a/plugins/hls-gadt-plugin/hls-gadt-plugin.cabal b/plugins/hls-gadt-plugin/hls-gadt-plugin.cabal index 9973dee05e..43e1ef88e4 100644 --- a/plugins/hls-gadt-plugin/hls-gadt-plugin.cabal +++ b/plugins/hls-gadt-plugin/hls-gadt-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-gadt-plugin -version: 2.1.0.0 +version: 2.2.0.0 synopsis: Convert to GADT syntax plugin description: Please see the README on GitHub at @@ -30,10 +30,10 @@ library , containers , extra , ghc - , ghcide == 2.1.0.0 + , ghcide == 2.2.0.0 , ghc-boot-th , ghc-exactprint - , hls-plugin-api == 2.1.0.0 + , hls-plugin-api == 2.2.0.0 , hls-refactor-plugin , lens , lsp >=2.2.0.0 @@ -59,7 +59,7 @@ test-suite tests , base , filepath , hls-gadt-plugin - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 , lens , lsp , lsp-test 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 8f67ca315e..c8eadd6ad7 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: 2.1.0.0 +version: 2.2.0.0 synopsis: Haddock comments plugin for Haskell Language Server description: Please see the README on GitHub at @@ -40,8 +40,8 @@ library , containers , ghc , ghc-exactprint < 1 - , ghcide == 2.1.0.0 - , hls-plugin-api == 2.1.0.0 + , ghcide == 2.2.0.0 + , hls-plugin-api == 2.2.0.0 , hls-refactor-plugin , lsp-types , text @@ -68,5 +68,5 @@ test-suite tests , base , filepath , hls-haddock-comments-plugin - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 , text diff --git a/plugins/hls-hlint-plugin/hls-hlint-plugin.cabal b/plugins/hls-hlint-plugin/hls-hlint-plugin.cabal index 0035934ef2..d48f4f7b9c 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: 2.1.0.0 +version: 2.2.0.0 synopsis: Hlint integration plugin with Haskell Language Server description: Please see the README on GitHub at @@ -45,10 +45,10 @@ library , extra , filepath , ghc-exactprint >=0.6.3.4 - , ghcide == 2.1.0.0 + , ghcide == 2.2.0.0 , hashable , hlint < 3.7 - , hls-plugin-api == 2.1.0.0 + , hls-plugin-api == 2.2.0.0 , lens , lsp , mtl @@ -89,7 +89,7 @@ test-suite tests , filepath , hls-hlint-plugin , hls-plugin-api - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 , lens , lsp-types , row-types 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 167575e510..f2b3107975 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: 2.1.0.0 +version: 2.2.0.0 synopsis: Module name plugin for Haskell Language Server description: Please see the README on GitHub at @@ -33,8 +33,8 @@ library , containers , directory , filepath - , ghcide == 2.1.0.0 - , hls-plugin-api == 2.1.0.0 + , ghcide == 2.2.0.0 + , hls-plugin-api == 2.2.0.0 , lsp , text , transformers @@ -53,4 +53,4 @@ test-suite tests , base , filepath , hls-module-name-plugin - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 diff --git a/plugins/hls-ormolu-plugin/hls-ormolu-plugin.cabal b/plugins/hls-ormolu-plugin/hls-ormolu-plugin.cabal index b0e90c21b9..4faf7185fe 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: 2.1.0.0 +version: 2.2.0.0 synopsis: Integration with the Ormolu code formatter description: Please see the README on GitHub at @@ -33,8 +33,8 @@ library , filepath , ghc , ghc-boot-th - , ghcide == 2.1.0.0 - , hls-plugin-api == 2.1.0.0 + , ghcide == 2.2.0.0 + , hls-plugin-api == 2.2.0.0 , lens , lsp , mtl @@ -55,7 +55,7 @@ test-suite tests , base , filepath , hls-ormolu-plugin - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 , lsp-types , text , ormolu 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 2ccf3af986..42a846769b 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 @@ -1,6 +1,6 @@ cabal-version: 3.0 name: hls-overloaded-record-dot-plugin -version: 2.1.0.0 +version: 2.2.0.0 synopsis: Overloaded record dot plugin for Haskell Language Server description: Please see the README on GitHub at diff --git a/plugins/hls-pragmas-plugin/hls-pragmas-plugin.cabal b/plugins/hls-pragmas-plugin/hls-pragmas-plugin.cabal index 3017eb3944..2e2e2ac9e0 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: 2.1.0.0 +version: 2.2.0.0 synopsis: Pragmas plugin for Haskell Language Server description: Please see the README on GitHub at @@ -30,8 +30,8 @@ library , extra , fuzzy , ghc - , ghcide == 2.1.0.0 - , hls-plugin-api == 2.1.0.0 + , ghcide == 2.2.0.0 + , hls-plugin-api == 2.2.0.0 , lens , lsp , text @@ -53,7 +53,7 @@ test-suite tests , base , filepath , hls-pragmas-plugin - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 , lens , lsp-types , text diff --git a/plugins/hls-qualify-imported-names-plugin/hls-qualify-imported-names-plugin.cabal b/plugins/hls-qualify-imported-names-plugin/hls-qualify-imported-names-plugin.cabal index 2c78974a2e..e88a7d36b8 100644 --- a/plugins/hls-qualify-imported-names-plugin/hls-qualify-imported-names-plugin.cabal +++ b/plugins/hls-qualify-imported-names-plugin/hls-qualify-imported-names-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.2 name: hls-qualify-imported-names-plugin -version: 2.1.0.0 +version: 2.2.0.0 synopsis: A Haskell Language Server plugin that qualifies imported names description: Please see the README on GitHub at @@ -30,9 +30,9 @@ library , containers , deepseq , ghc - , ghcide == 2.1.0.0 + , ghcide == 2.2.0.0 , hls-graph - , hls-plugin-api == 2.1.0.0 + , hls-plugin-api == 2.2.0.0 , lens , lsp , text @@ -56,4 +56,4 @@ test-suite tests , text , filepath , hls-qualify-imported-names-plugin - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 diff --git a/plugins/hls-refactor-plugin/hls-refactor-plugin.cabal b/plugins/hls-refactor-plugin/hls-refactor-plugin.cabal index 42cd50c7ad..f05df8239b 100644 --- a/plugins/hls-refactor-plugin/hls-refactor-plugin.cabal +++ b/plugins/hls-refactor-plugin/hls-refactor-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 3.0 name: hls-refactor-plugin -version: 2.1.0.0 +version: 2.2.0.0 synopsis: Exactprint refactorings for Haskell Language Server description: Please see the README on GitHub at @@ -68,8 +68,8 @@ library , ghc-boot , regex-tdfa , text-rope - , ghcide == 2.1.0.0 - , hls-plugin-api == 2.1.0.0 + , ghcide == 2.2.0.0 + , hls-plugin-api == 2.2.0.0 , lsp , text , transformers @@ -103,7 +103,7 @@ test-suite tests , base , filepath , hls-refactor-plugin - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 , lens , lsp-types , text diff --git a/plugins/hls-rename-plugin/hls-rename-plugin.cabal b/plugins/hls-rename-plugin/hls-rename-plugin.cabal index 899da77f12..41c1dc2ff5 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: 2.1.0.0 +version: 2.2.0.0 synopsis: Rename plugin for Haskell Language Server description: Please see the README on GitHub at @@ -29,11 +29,11 @@ library , extra , ghc , ghc-exactprint - , ghcide == 2.1.0.0 + , ghcide == 2.2.0.0 , hashable , hiedb , hie-compat - , hls-plugin-api == 2.1.0.0 + , hls-plugin-api == 2.2.0.0 , hls-refactor-plugin , lens , lsp @@ -60,4 +60,4 @@ test-suite tests , filepath , hls-plugin-api , hls-rename-plugin - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 diff --git a/plugins/hls-retrie-plugin/hls-retrie-plugin.cabal b/plugins/hls-retrie-plugin/hls-retrie-plugin.cabal index 48473d85e7..a5a680fa63 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: 2.1.0.0 +version: 2.2.0.0 synopsis: Retrie integration plugin for Haskell Language Server description: Please see the README on GitHub at @@ -28,9 +28,9 @@ library , directory , extra , ghc - , ghcide == 2.1.0.0 + , ghcide == 2.2.0.0 , hashable - , hls-plugin-api == 2.1.0.0 + , hls-plugin-api == 2.2.0.0 , hls-refactor-plugin , lens , lsp @@ -65,5 +65,5 @@ test-suite tests , hls-plugin-api , hls-refactor-plugin , hls-retrie-plugin - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 , text diff --git a/plugins/hls-splice-plugin/hls-splice-plugin.cabal b/plugins/hls-splice-plugin/hls-splice-plugin.cabal index 96a5131a01..e7306ca85c 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: 2.1.0.0 +version: 2.2.0.0 synopsis: HLS Plugin to expand TemplateHaskell Splices and QuasiQuotes @@ -42,8 +42,8 @@ library , foldl , ghc , ghc-exactprint - , ghcide == 2.1.0.0 - , hls-plugin-api == 2.1.0.0 + , ghcide == 2.2.0.0 + , hls-plugin-api == 2.2.0.0 , hls-refactor-plugin , lens , lsp @@ -70,6 +70,6 @@ test-suite tests , base , filepath , hls-splice-plugin - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 , text , row-types diff --git a/plugins/hls-stan-plugin/hls-stan-plugin.cabal b/plugins/hls-stan-plugin/hls-stan-plugin.cabal index 1c88ae4a5c..a9dfad2634 100644 --- a/plugins/hls-stan-plugin/hls-stan-plugin.cabal +++ b/plugins/hls-stan-plugin/hls-stan-plugin.cabal @@ -1,6 +1,6 @@ cabal-version: 2.4 name: hls-stan-plugin -version: 2.1.0.0 +version: 2.2.0.0 synopsis: Stan integration plugin with Haskell Language Server description: Please see the README on GitHub at @@ -74,7 +74,7 @@ test-suite test , filepath , hls-stan-plugin , hls-plugin-api - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 , lens , lsp-types , text 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 f3d58aab1a..89cc73db85 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: 2.1.0.0 +version: 2.2.0.0 synopsis: Integration with the Stylish Haskell code formatter description: Please see the README on GitHub at @@ -28,8 +28,8 @@ library , filepath , ghc , ghc-boot-th - , ghcide == 2.1.0.0 - , hls-plugin-api == 2.1.0.0 + , ghcide == 2.2.0.0 + , hls-plugin-api == 2.2.0.0 , lsp-types , mtl , stylish-haskell ^>=0.12 || ^>=0.13 || ^>=0.14.2 @@ -47,4 +47,4 @@ test-suite tests , base , filepath , hls-stylish-haskell-plugin - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 diff --git a/plugins/hls-tactics-plugin/hls-tactics-plugin.cabal b/plugins/hls-tactics-plugin/hls-tactics-plugin.cabal index 536defbe6e..935b08bece 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: 2.1.0.0 +version: 2.2.0.0 synopsis: Wingman plugin for Haskell Language Server description: Please see the README on GitHub at @@ -99,9 +99,9 @@ library , ghc-boot-th , ghc-exactprint , ghc-source-gen ^>=0.4.1 - , ghcide == 2.1.0.0 + , ghcide == 2.2.0.0 , hls-graph - , hls-plugin-api == 2.1.0.0 + , hls-plugin-api == 2.2.0.0 , hls-refactor-plugin , hyphenation , lens @@ -185,7 +185,7 @@ test-suite tests , ghcide , hls-plugin-api , hls-tactics-plugin - , hls-test-utils == 2.1.0.0 + , hls-test-utils == 2.2.0.0 , hspec , hspec-expectations , lens