Skip to content

Commit

Permalink
Prepare 1.2.0 June release (#1912)
Browse files Browse the repository at this point in the history
* Fix changelog generator

* Prepare 1.2.0

* Update plugin versions

* Fix hls plugin dependency

* Update changelog

* Fix a wrong link

* Bump other packages versions

* Revert version changes of unreleased packages

* Fix ghcide bound for hls

* Update version dependencies
  • Loading branch information
Ailrun authored Jun 12, 2021
1 parent 7ba6279 commit 7d7c2ef
Show file tree
Hide file tree
Showing 24 changed files with 251 additions and 39 deletions.
212 changes: 212 additions & 0 deletions ChangeLog.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,217 @@
# Changelog for haskell-language-server

## 1.2.0

We have finally released a new version of Haskell Language Server!
Thanks for all contributors, many bugs has been fixed, and many features has landed.
Here are the summary of changes:

- Basic support for GHC 9.0.1 is added.
It does not support all plugins yet, but core GHCIDE features will work. For the detailed information that which plugins work, please refer [this list](https://github.com/haskell/haskell-language-server/issues/297#issuecomment-855522891).
- Support for GHC 8.10.5 is added.
Note that macOS version is unfortunately not included in this release because of [a GHC issue with `network` package](https://gitlab.haskell.org/ghc/ghc/-/issues/19968).
- HLS wrapper and GHCIDE session loader uses the same logic with implicit-hie.
This fixes [a build issue](https://github.com/haskell/haskell-language-server/issues/1782) of a stack project with implicit `hie.yaml` .
- Wingman plugin has added numerous features and fixed many bugs:
- It now supports tactic metaprogramming!
For list of commands, see [this document](https://github.com/haskell/haskell-language-server/blob/master/plugins/hls-tactics-plugin/COMMANDS.md#wingman-metaprogram-command-reference).
![https://github.com/haskell/haskell-language-server/blob/master/plugins/hls-tactics-plugin/COMMANDS.md#wingman-metaprogram-command-reference](https://user-images.githubusercontent.com/307223/118190278-bdf24f80-b3f7-11eb-8838-b08a2582d7f1.gif)
- "Refine hole" and "Split all function arguments" code actions are publicly opened.
- "Empty case split" code lens is added.
- The name generator is fixed [to avoid dangerous summon rituals](https://github.com/haskell/haskell-language-server/pull/1760).
- Many bugs related to type families and GADTs are fixed.
- We support [nix flake](https://nixos.wiki/wiki/Flakes), an upcoming way to manage dependencies in nix.
- Every plugin (other than example plugins) now lives in its own package.

### Pull requests merged for 1.2.0

- Cleanup stack build output in circleci
([#1905](https://github.com/haskell/haskell-language-server/pull/1905)) by @jhrcek
- Remove FeatureSet
([#1902](https://github.com/haskell/haskell-language-server/pull/1902)) by @isovector
- Correct a typo in ConfigUtils.hs
([#1900](https://github.com/haskell/haskell-language-server/pull/1900)) by @felixonmars
- Add GHC 8.10.5 support
([#1899](https://github.com/haskell/haskell-language-server/pull/1899)) by @Ailrun
- Fix getCurrentDirectory calls in ghcide
([#1897](https://github.com/haskell/haskell-language-server/pull/1897)) by @pepeiborra
- Wingman: FIx evidence when using GADT constructors
([#1889](https://github.com/haskell/haskell-language-server/pull/1889)) by @isovector
- [explicit-imports] Take in a predicate to filter modules
([#1888](https://github.com/haskell/haskell-language-server/pull/1888)) by @pepeiborra
- Fix unification pertaining to evidence
([#1885](https://github.com/haskell/haskell-language-server/pull/1885)) by @isovector
- Let Wingman peek through type families
([#1881](https://github.com/haskell/haskell-language-server/pull/1881)) by @isovector
- Use file watches for all workspace files
([#1880](https://github.com/haskell/haskell-language-server/pull/1880)) by @pepeiborra
- Update IRC details in README.md
([#1877](https://github.com/haskell/haskell-language-server/pull/1877)) by @fendor
- Fix nix build for #1858
([#1870](https://github.com/haskell/haskell-language-server/pull/1870)) by @berberman
- Wingman metaprogram command documentation
([#1867](https://github.com/haskell/haskell-language-server/pull/1867)) by @isovector
- Catamorphism and collapse tactics
([#1865](https://github.com/haskell/haskell-language-server/pull/1865)) by @isovector
- Fix condition of nix build job
([#1864](https://github.com/haskell/haskell-language-server/pull/1864)) by @berberman
- Technology preview: Keep track of changes to minimize rebuilds
([#1862](https://github.com/haskell/haskell-language-server/pull/1862)) by @pepeiborra
- Trace more Shake evaluation details
([#1861](https://github.com/haskell/haskell-language-server/pull/1861)) by @pepeiborra
- No need to delete the same key twice
([#1860](https://github.com/haskell/haskell-language-server/pull/1860)) by @pepeiborra
- Use cabal-install if nix is failing in CI
([#1859](https://github.com/haskell/haskell-language-server/pull/1859)) by @berberman
- Use last apply-refact and several stack.yaml updates
([#1858](https://github.com/haskell/haskell-language-server/pull/1858)) by @jneira
- Split ghcide actions into different descriptors
([#1857](https://github.com/haskell/haskell-language-server/pull/1857)) by @berberman
- Allow module-local and imported functions in Wingman metaprograms
([#1856](https://github.com/haskell/haskell-language-server/pull/1856)) by @isovector
- Update mergify.yml
([#1853](https://github.com/haskell/haskell-language-server/pull/1853)) by @Ailrun
- Fix flake compat
([#1852](https://github.com/haskell/haskell-language-server/pull/1852)) by @berberman
- Fix record layout
([#1851](https://github.com/haskell/haskell-language-server/pull/1851)) by @isovector
- Avoid package-qualified import in Fourmolu plugin
([#1848](https://github.com/haskell/haskell-language-server/pull/1848)) by @georgefst
- Skip cachix jobs if token is unset
([#1845](https://github.com/haskell/haskell-language-server/pull/1845)) by @berberman
- Refine should either do intros or split, not both
([#1842](https://github.com/haskell/haskell-language-server/pull/1842)) by @isovector
- Add hspec upper bound
([#1837](https://github.com/haskell/haskell-language-server/pull/1837)) by @jneira
- Extract last 2 plugins and clean up others
([#1836](https://github.com/haskell/haskell-language-server/pull/1836)) by @Ailrun
- Extract pragmas plugin
([#1833](https://github.com/haskell/haskell-language-server/pull/1833)) by @Ailrun
- Extract floskell plugin as a standalone plugin
([#1829](https://github.com/haskell/haskell-language-server/pull/1829)) by @Ailrun
- nix: refactor with flakes
([#1827](https://github.com/haskell/haskell-language-server/pull/1827)) by @berberman
- Bump up hls-splice-plugin to 1.0.0.2 (backport #1825)
([#1826](https://github.com/haskell/haskell-language-server/pull/1826)) by @mergify[bot]
- Bump up hls-splice-plugin to 1.0.0.2
([#1825](https://github.com/haskell/haskell-language-server/pull/1825)) by @jneira
- Apply formats again
([#1824](https://github.com/haskell/haskell-language-server/pull/1824)) by @Ailrun
- Extract fourmolu plugin into a standalone package
([#1823](https://github.com/haskell/haskell-language-server/pull/1823)) by @gustavoavena
- Ignore filemode in diff
([#1819](https://github.com/haskell/haskell-language-server/pull/1819)) by @Ailrun
- ghc-api cleanups cleanup
([#1816](https://github.com/haskell/haskell-language-server/pull/1816)) by @pepeiborra
- Add a hook for modifying the dynflags from a plugin
([#1814](https://github.com/haskell/haskell-language-server/pull/1814)) by @isovector
- Prepare ghcide release v1.3.0.0
([#1811](https://github.com/haskell/haskell-language-server/pull/1811)) by @pepeiborra
- Remove hls-ghc-x.y from install script and wrapper
([#1805](https://github.com/haskell/haskell-language-server/pull/1805)) by @berberman
- Fix unwanted import refinement
([#1801](https://github.com/haskell/haskell-language-server/pull/1801)) by @rayshih
- Canonicalize hiedb path before comparing
([#1800](https://github.com/haskell/haskell-language-server/pull/1800)) by @pepeiborra
- Pin nix-pre-commit-hooks (backport #1780)
([#1798](https://github.com/haskell/haskell-language-server/pull/1798)) by @mergify[bot]
- Add upper bound to hlint (backport #1795)
([#1797](https://github.com/haskell/haskell-language-server/pull/1797)) by @mergify[bot]
- Add bounds for base in hls-stylish-haskell-plugin (backport #1794)
([#1796](https://github.com/haskell/haskell-language-server/pull/1796)) by @mergify[bot]
- Add upper bound to hlint
([#1795](https://github.com/haskell/haskell-language-server/pull/1795)) by @jneira
- Add bounds for base in hls-stylish-haskell-plugin
([#1794](https://github.com/haskell/haskell-language-server/pull/1794)) by @berberman
- Add bounds for base in hls-test-utils (backport #1791)
([#1793](https://github.com/haskell/haskell-language-server/pull/1793)) by @mergify[bot]
- Replace faulty signature test
([#1792](https://github.com/haskell/haskell-language-server/pull/1792)) by @kderme
- Add bounds for base in hls-test-utils
([#1791](https://github.com/haskell/haskell-language-server/pull/1791)) by @berberman
- Fix backport conflict of refine-import plugin
([#1790](https://github.com/haskell/haskell-language-server/pull/1790)) by @Ailrun
- Fix progress counting
([#1789](https://github.com/haskell/haskell-language-server/pull/1789)) by @pepeiborra
- Loosen dependency bounds (backport #1787)
([#1788](https://github.com/haskell/haskell-language-server/pull/1788)) by @mergify[bot]
- Loosen dependency bounds
([#1787](https://github.com/haskell/haskell-language-server/pull/1787)) by @berberman
- clean up ghc-api pragmas
([#1785](https://github.com/haskell/haskell-language-server/pull/1785)) by @pepeiborra
- Progress reporting improvements
([#1784](https://github.com/haskell/haskell-language-server/pull/1784)) by @pepeiborra
- Unify session loading using implicit-hie
([#1783](https://github.com/haskell/haskell-language-server/pull/1783)) by @fendor
- Pin nix-pre-commit-hooks
([#1780](https://github.com/haskell/haskell-language-server/pull/1780)) by @Ailrun
- Replace the unsafe getmodtime with safe posix calls
([#1778](https://github.com/haskell/haskell-language-server/pull/1778)) by @pepeiborra
- Tactic metaprogramming
([#1776](https://github.com/haskell/haskell-language-server/pull/1776)) by @isovector
- Fix wrong extend import while type constuctor and data constructor have the same name
([#1775](https://github.com/haskell/haskell-language-server/pull/1775)) by @July541
- Add codetriage badge
([#1772](https://github.com/haskell/haskell-language-server/pull/1772)) by @jneira
- Wingman: configurable auto search depth
([#1771](https://github.com/haskell/haskell-language-server/pull/1771)) by @isovector
- Prevent accidental Cthulhu summons
([#1760](https://github.com/haskell/haskell-language-server/pull/1760)) by @isovector
- Delay the Shake session setup until the Initialized handler
([#1754](https://github.com/haskell/haskell-language-server/pull/1754)) by @pepeiborra
- Wrap the Shake functions with newtypes
([#1753](https://github.com/haskell/haskell-language-server/pull/1753)) by @ndmitchell
- Fix reduction depth
([#1751](https://github.com/haskell/haskell-language-server/pull/1751)) by @pepeiborra
- Add hls-graph abstracting over shake
([#1748](https://github.com/haskell/haskell-language-server/pull/1748)) by @ndmitchell
- Explicitly import liftIO if you need it, rather than getting it from Shake
([#1747](https://github.com/haskell/haskell-language-server/pull/1747)) by @ndmitchell
- Tease apart the custom SYB from ExactPrint
([#1746](https://github.com/haskell/haskell-language-server/pull/1746)) by @isovector
- Remove unnecessary Shake dependencies
([#1745](https://github.com/haskell/haskell-language-server/pull/1745)) by @ndmitchell
- Delete an unused import
([#1744](https://github.com/haskell/haskell-language-server/pull/1744)) by @ndmitchell
- Improve vscode extension schema generation
([#1742](https://github.com/haskell/haskell-language-server/pull/1742)) by @berberman
- Fix class method completion
([#1741](https://github.com/haskell/haskell-language-server/pull/1741)) by @July541
- Add heralds to Wingman's use of runAction
([#1740](https://github.com/haskell/haskell-language-server/pull/1740)) by @isovector
- Wingman: case split on punned record fields
([#1739](https://github.com/haskell/haskell-language-server/pull/1739)) by @isovector
- Wingman feature release
([#1735](https://github.com/haskell/haskell-language-server/pull/1735)) by @isovector
- Add haskell-language-server Homebrew installation instructions
([#1734](https://github.com/haskell/haskell-language-server/pull/1734)) by @kret
- Add a "Split using NamedFieldPuns" code action
([#1733](https://github.com/haskell/haskell-language-server/pull/1733)) by @isovector
- Insert pragmas after shebang or to existing pragma list
([#1731](https://github.com/haskell/haskell-language-server/pull/1731)) by @OliverMadine
- Add executable stanza in hls-install.cabal.
([#1730](https://github.com/haskell/haskell-language-server/pull/1730)) by @arrowd
- Add installation instructions for FreeBSD.
([#1729](https://github.com/haskell/haskell-language-server/pull/1729)) by @arrowd
- HLint: Pass options through user config
([#1724](https://github.com/haskell/haskell-language-server/pull/1724)) by @rmehri01
- Prepare ghcide 1.2.0.2 and HLS 1.1.0
([#1722](https://github.com/haskell/haskell-language-server/pull/1722)) by @berberman
- Wingman: Destruct on empty case
([#1721](https://github.com/haskell/haskell-language-server/pull/1721)) by @isovector
- Fix: #1690 - Infix typed holes are now filled using infix notation
([#1708](https://github.com/haskell/haskell-language-server/pull/1708)) by @OliverMadine
- Implement refine imports
([#1686](https://github.com/haskell/haskell-language-server/pull/1686)) by @rayshih
- Ghc 9.0.1 support for ghcide
([#1649](https://github.com/haskell/haskell-language-server/pull/1649)) by @anka-213
- hie-compat: Add basic support for ghc 9.0.1
([#1635](https://github.com/haskell/haskell-language-server/pull/1635)) by @anka-213
- Fix remove constraint
([#1578](https://github.com/haskell/haskell-language-server/pull/1578)) by @kderme
- Limit CodeActions within passed range
([#1442](https://github.com/haskell/haskell-language-server/pull/1442)) by @aufarg

## 1.1.0

Haskell Language Server 1.1.0 has finally come! Many thanks to all contributors -- since the last release, we have merged over 100 PRs!
Expand Down
2 changes: 1 addition & 1 deletion GenChangelogs.hs
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ import System.Process

main = do
callCommand "git fetch --tags"
tags <- filter (isPrefixOf "0.") . lines <$>
tags <- filter (isPrefixOf "1.") . lines <$>
readProcess "git" ["tag", "--list", "--sort=v:refname"] ""

lastDateStr <- last . lines <$> readProcess "git" ["show", "-s", "--format=%cI", "-1", last tags] ""
Expand Down
6 changes: 3 additions & 3 deletions ghcide/ghcide.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ cabal-version: 2.4
build-type: Simple
category: Development
name: ghcide
version: 1.3.0.0
version: 1.4.0.0
license: Apache-2.0
license-file: LICENSE
author: Digital Asset and Ghcide contributors
Expand Down Expand Up @@ -56,7 +56,7 @@ library
Glob,
haddock-library >= 1.8 && < 1.11,
hashable,
hie-compat ^>= 0.1.0.0,
hie-compat ^>= 0.2.0.0,
hls-plugin-api ^>= 1.1.0.0,
lens,
hiedb == 0.3.0.*,
Expand All @@ -73,7 +73,7 @@ library
rope-utf16-splay,
safe,
safe-exceptions,
hls-graph ^>= 1.3,
hls-graph ^>= 1.4,
sorted-list,
sqlite-simple,
stm,
Expand Down
6 changes: 3 additions & 3 deletions haskell-language-server.cabal
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
cabal-version: 2.4
category: Development
name: haskell-language-server
version: 1.1.0.1
version: 1.2.0.0
synopsis: LSP server for GHC
description:
Please see the README on GitHub at <https://github.com/haskell/haskell-language-server#readme>
Expand Down Expand Up @@ -61,7 +61,7 @@ library
, cryptohash-sha1
, data-default
, ghc
, ghcide ^>=1.3
, ghcide ^>=1.4
, gitrev
, lsp
, hie-bios
Expand Down Expand Up @@ -220,7 +220,7 @@ common retrie

common tactic
if flag(tactic) || flag(all-plugins)
build-depends: hls-tactics-plugin ^>= 1.1.0.0
build-depends: hls-tactics-plugin ^>= 1.2.0.0
cpp-options: -Dtactic

common hlint
Expand Down
2 changes: 1 addition & 1 deletion hie-compat/hie-compat.cabal
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
cabal-version: 1.22
name: hie-compat
version: 0.1.0.0
version: 0.2.0.0
synopsis: HIE files for GHC 8.6 and other HIE file backports
license: Apache-2.0
description:
Expand Down
2 changes: 1 addition & 1 deletion hls-graph/hls-graph.cabal
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
cabal-version: 2.4
name: hls-graph
version: 1.3.0.0
version: 1.4.0.0
synopsis: Haskell Language Server internal graph API
description:
Please see the README on GitHub at <https://github.com/haskell/haskell-language-server#readme>
Expand Down
4 changes: 2 additions & 2 deletions hls-plugin-api/hls-plugin-api.cabal
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
cabal-version: 2.4
name: hls-plugin-api
version: 1.1.0.1
version: 1.1.0.2
synopsis: Haskell Language Server API for plugin communication
description:
Please see the README on GitHub at <https://github.com/haskell/haskell-language-server#readme>
Expand Down Expand Up @@ -52,7 +52,7 @@ library
, opentelemetry
, process
, regex-tdfa >=1.3.1.0
, hls-graph ^>=1.3
, hls-graph ^>=1.4
, text
, unordered-containers

Expand Down
4 changes: 2 additions & 2 deletions hls-test-utils/hls-test-utils.cabal
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
cabal-version: 2.4
name: hls-test-utils
version: 1.0.0.1
version: 1.0.1.0
synopsis: Utilities used in the tests of Haskell Language Server
description:
Please see the README on GitHub at <https://github.com/haskell/haskell-language-server#readme>
Expand Down Expand Up @@ -41,7 +41,7 @@ library
, directory
, extra
, filepath
, ghcide >=1.3 && <1.4
, ghcide ^>=1.4
, hls-graph
, hls-plugin-api ^>=1.1
, hspec <2.8
Expand Down
2 changes: 1 addition & 1 deletion plugins/hls-brittany-plugin/hls-brittany-plugin.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ library
, filepath
, ghc
, ghc-boot-th
, ghcide >=1.2 && <1.4
, ghcide >=1.2 && <1.5
, hls-plugin-api ^>=1.1
, lens
, lsp-types
Expand Down
4 changes: 2 additions & 2 deletions plugins/hls-class-plugin/hls-class-plugin.cabal
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
cabal-version: 2.4
name: hls-class-plugin
version: 1.0.0.1
version: 1.0.0.2
synopsis:
Class/instance management plugin for Haskell Language Server

Expand Down Expand Up @@ -30,7 +30,7 @@ library
, ghc
, ghc-api-compat
, ghc-exactprint
, ghcide >=1.2 && <1.4
, ghcide >=1.2 && <1.5
, hls-plugin-api ^>=1.1
, lens
, lsp
Expand Down
4 changes: 2 additions & 2 deletions plugins/hls-eval-plugin/hls-eval-plugin.cabal
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
cabal-version: 2.4
name: hls-eval-plugin
version: 1.1.0.0
version: 1.1.1.0
synopsis: Eval plugin for Haskell Language Server
description:
Please see the README on GitHub at <https://github.com/haskell/haskell-language-server#readme>
Expand Down Expand Up @@ -62,7 +62,7 @@ library
, ghc-api-compat
, ghc-boot-th
, ghc-paths
, ghcide >=1.2 && <1.4
, ghcide >=1.2 && <1.5
, hashable
, hls-plugin-api ^>=1.1
, lens
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
cabal-version: 2.2
name: hls-explicit-imports-plugin
version: 1.0.0.2
version: 1.0.0.3
synopsis: Explicit imports plugin for Haskell Language Server
license: Apache-2.0
license-file: LICENSE
Expand All @@ -20,7 +20,7 @@ library
, deepseq
, ghc
, ghc-api-compat
, ghcide ^>=1.3
, ghcide ^>=1.4
, hls-graph
, hls-plugin-api ^>=1.1
, lsp
Expand Down
2 changes: 1 addition & 1 deletion plugins/hls-floskell-plugin/hls-floskell-plugin.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ library
build-depends:
, base >=4.12 && <5
, floskell ^>=0.10
, ghcide >=1.2 && <1.4
, ghcide >=1.2 && <1.5
, hls-plugin-api ^>=1.1
, lsp-types
, text
Expand Down
Loading

0 comments on commit 7d7c2ef

Please sign in to comment.