Changelog of @hackage/ghcide 2.7.0.0

1.3.0.0 (2021-05-09)

  • Replace unsafe getmodtime with unix package (#1778) - Pepe Iborra
  • Progress reporting improvements (#1784) - Pepe Iborra
  • Unify session loading using implicit-hie (#1783) - fendor
  • Fix remove constraint (#1578) - Kostas Dermentzis
  • Fix wrong extend import while type constructor and data constructor have the same name (#1775) - Lei Zhu
  • Improve vscode extension schema generation (#1742) - Potato Hatsue
  • Add hls-graph abstracting over shake (#1748) - Neil Mitchell
  • Tease apart the custom SYB from ExactPrint (#1746) - Sandy Maguire
  • fix class method completion (#1741) - Lei Zhu
  • Fix: #1690 - Infix typed holes are now filled using infix notation (#1708) - Oliver Madine

1.2.0.2 (2021-04-13)

  • Bracketing for snippet completions (#1709) - Oliver Madine
  • Don't suggest destruct actions for already-destructed terms (#1715) - Sandy Maguire

1.2.0.1 (2021-04-12)

  • restore compat. with haddock-library 1.8 (#1717) - Pepe Iborra

1.2.0 (2021-04-11)

  • Emit holes as diagnostics (#1653) - Sandy Maguire
  • Fix ghcide and HLS enter lsp mode by default (#1692) - Potato Hatsue
  • support custom Ide commands (#1666) - Pepe Iborra
  • ghcide - enable ApplicativeDo everywhere (#1667) - Pepe Iborra
  • Intelligent derivations of Semigroup and Monoid for Wingman (#1671) - Sandy Maguire
  • Avoid creating IsFileOfInterest keys for non workspace files (#1661) - Pepe Iborra
  • Fix a wingman bug caused by mismanaged stale data (#1657) - Sandy Maguire
  • Skip tracing unless eventlog is enabled (#1658) - Pepe Iborra
  • optimize ambiguity import suggestions (#1669) - Lei Zhu
  • Replace Barrier with MVar in lsp main (#1668) - Potato Hatsue
  • Add bounds for Diff (#1665) - Potato Hatsue
  • log exceptions before killing the server (#1651) - Pepe Iborra
  • Fix importing type operators (#1644) - Potato Hatsue
  • Shut the Shake session on exit, instead of restarting it (#1655) - Pepe Iborra
  • Do not override custom user commands (#1650) - Pepe Iborra
  • Civilized indexing progress reporting (#1633) - Pepe Iborra
  • Avoid reordering plugins (#1629) - Pepe Iborra
  • Update to lsp-1.2 (#1631) - wz1000
  • Use custom config for completions plugin (#1619) - Potato Hatsue
  • Configurable I/O handles (#1617) - Pepe Iborra
  • Add test data files to extra-source-files (#1605) - Javier Neira
  • Allow for customizable Haskell views of Property types (#1608) - Sandy Maguire
  • Extract hls-test-utils (#1606) - Potato Hatsue
  • Add ability for plugins to handle file change notifications (#1588) - Pepe Iborra
  • Bump haddock-library to 1.10.0 (#1598) - Potato Hatsue
  • Use CiInterface/SkInterface for typeclass symbols (#1592) - FW
  • Relax ghcides upper bound on base16-bytestring (#1595) - maralorn
  • Regularize custom config of plugins (#1576) - Potato Hatsue
  • Avoid duplicating known targets and import paths (#1590) - Pepe Iborra
  • Update homepage and other urls for ghcide (#1580) - Felix Yan
  • Add custom code action kinds for import related code actions (#1570) - Potato Hatsue
  • Use TextEdit to insert new imports (#1554) - Potato Hatsue

1.1.0 (2021-03-09)

  • Add an option to control progress reporting (#1513) - Pepe Iborra
  • Fix missing parens of auto extending imports (#1526) - Potato Hatsue
  • Avoid redundant work in diagnostics pass (#1514) - Pepe Iborra
  • Avoid always rerunning GetModificationTime for interface files too (#1506) - Pepe Iborra
  • Demote implicit cradle warn to logging (#1511) - Javier Neira
  • Drive GetModificationTime using watched file events (#1487) - Pepe Iborra
  • Make type lenses plugin configurable (#1491) - Potato Hatsue
  • Context-aware ExactPrint grafting for HsExpr (#1489) - Sandy Maguire
  • Register IDE configuration when called via the command line (#1495) - wz1000
  • Faster ModSummary fingerprints (#1485) - Pepe Iborra
  • Make sure to give the correct DynFlags to the recompilation checker (#1459) - Pepe Iborra
  • Customize the unitId used for the fake internal component (#1435) - Pepe Iborra
  • Extract the qualified name from already imported module (#1445) - Potato Hatsue
  • Add code action for importing class methods (#1428) - Potato Hatsue
  • Reformat all files (#1439) - Junyoung/Clare Jang
  • Minor performance optimizations (#1432) - Pepe Iborra

1.0.0 (2021-03-04)

  • Fix the handling of default HLS config again (#1419) - Pepe Iborra
  • Hlint hints. (#1227) - Peter Wicks Stringfield
  • Use object code for TH+UnboxedTuples/Sums (#1382) - wz1000
  • Add a pre commit hook for code formatting (#1384) - Junyoung/Clare Jang

0.7.5 (2021-02-17)

  • Tone down some logInfos to logDebug (#1385) - Pepe Iborra
  • Show window message when auto extending import lists (#1371) - Potato Hatsue
  • Catch GHC errors in listing module names (#1367) - Potato Hatsue
  • Upgrade to lsp-1.0 (#1284) - wz1000
  • Added Development.IDE.Main (#1338) - Pepe Iborra
  • Fix completion snippets on DuplicateRecordFields (#1360) - Potato Hatsue
  • Add code action for hiding shadowed identifiers from imports (#1322) - Potato Hatsue
  • Make find-definition work better with multi-components (#1357) - wz1000
  • Index files on first open (#1358) - wz1000
  • Fix code actions regression (#1349) - Pepe Iborra

0.7.4 (2021-02-08)

  • Support for references via hiedb (#704) - wz1000
  • Fix space leak on cradle reloads (#1316) - Pepe Iborra
  • Trigger extending import only when the item is not in scope (#1309) - Potato Hatsue
  • Don't extend the import list with child if the parent has already been imported as (..) (#1302) - Potato Hatsue
  • FindImports typo (minor) (#1291) - Andy
  • Reenable auto extend imports and drop snippets for infix completions (#1266) - Pepe Iborra
  • ghcide: Implements a CodeAction to disambiguate ambiguous symbols (#1264) - Hiromi Ishii
  • Restore code actions order (#1273) - Pepe Iborra

0.7.3 (2021-02-04)

  • Add custom cache layer for session loading (#1197) - (fendor)
  • Remove invalid exports (#1193) - (Kostas Dermentzis)
  • Use exact print to suggestExtendImport - (Potato Hatsue)
  • Add code actions for disabling a warning in the current file (#1235) - (George Thomas)
  • Limit completions to top 40 (#1218) - (Pepe Iborra)
  • Add traces for HLS providers (#1222) - (Pepe Iborra)
  • Use exact print for suggest missing constraint code actions (#1221) - (Pepe Iborra)
  • Parenthesise type operators when extending import lists (#1212) - (Thomas Winant)

0.7.2 (2021-01-14)

  • Expose shakeOptions used - (Pepe Iborra)

0.7.1 (2021-01-13)

  • Fix sticky diagnostics bug (#1188) - (Pepe Iborra)
  • Use completionSnippetsOn flag (#1195) - (Yuya Kono)
  • Update tested-with GHC in cabal config - (jneira)
  • Do not disable parallel GC by default (#1190) - (Pepe Iborra)
  • Fix module outline becoming stale after switching branches (#1189) - (Pepe Iborra)
  • Make adding missing constraint work in presence of 'forall' (fixes #1164) (#1177) - (Jan Hrcek)
  • Bump haskell-lsp to 0.23 (#1146) - (Potato Hatsue)
  • Fix #723 (Instance declarations in hs-boot files result in GHC errors) (#781) - (Ben Simms)
  • Also suggest importing methods without parent class (#766) - (Thomas Winant)
  • Update links to issues/PRs in ghcide tests. (#1142) - (Peter Wicks Stringfield)
  • fix suggestAddTypeAnnotation regex (#760) - (Kostas Dermentzis)

0.7.0 (2021-01-03)

  • Ghcide now loads HLS plugins internally - (Pepe Iborra)
  • Retry a failed cradle if the cradle descriptor changes (#762) - (Pepe Iborra)
  • Fix extend imports regression (#769) - (Pepe Iborra)
  • Perform memory measurement on SIGUSR1 (#761) - (Pepe Iborra)

0.6.0.2 (2020-12-26)

  • Fix disappearing diagnostics bug (#959) - (Pepe Iborra)
  • Deduplicate module not found diagnostics (#952) - (Pepe Iborra)
  • Use qualified module name from diagnostics in suggestNewImport (#945) - (Potato Hatsue)
  • Disable auto extend import snippets in completions (these need a bit more work)

0.6.0.1 (2020-12-13)

  • Fix build with GHC 8.8.2 and 8.8.3 - (Javier Neira)
  • Update old URLs still pointing to digital-asset - (Jan Hrcek)

0.6.0 (2020-12-06)

  • Completions: extend explicit import list automatically (#930) - (Guru Devanla)
  • Completions for identifiers not in explicit import lists (#919) - (Guru Devanla)
  • Completions for record fields (#900) - (Guru Devanla)
  • Bugfix: add constructors to import lists correctly (#916) - (Potato Hatsue)
  • Bugfix: respect qualified identifiers (#938) - (Pepe Iborra)
  • Bugfix: partial pathToId (#926) - (Samuel Ainsworth)
  • Bugfix: import suggestions when there's more than one option (#913) - (Guru Devanla)
  • Bugfix: parenthesize operators when exporting (#906) - (Potato Hatsue)
  • Opentelemetry traces and heapsize memory analysis (#922) - (Michalis Pardalos / Pepe Iborra)
  • Make Filetargets absolute before continue using them (#914) - (fendor)
  • Do not enable every "unnecessary" warning by default (#907) - (Alejandro Serrano)
  • Update implicit-hie to 0.3.0 (#905) - (Avi Dessauer)

0.5.0 (2020-11-07)

  • Use implicit-hie-0.1.2.0 (#880) - (Javier Neira)
  • Clarify and downgrade implicit-hie message (#883) - (Avi Dessauer)
  • Switch back to bytecode (#873) - (wz1000)
  • Add code action for remove all redundant imports (#867) - (Potato Hatsue)
  • Fix pretty printer for diagnostic ranges (#871) - (Martin Huschenbett)
  • Canonicalize import dirs (#870) - (Pepe Iborra)
  • Do not show internal hole names (#852) - (Alejandro Serrano)
  • Downgrade file watch debug log to logDebug from logInfo (#848) - (Matthew Pickering)
  • Pull in local bindings (#845) - (Sandy Maguire)
  • Use object code for Template Haskell, emit desugarer warnings (#836) - (wz1000)
  • Fix code action for adding missing constraints to type signatures (#839) - (Jan Hrcek)
  • Fix duplicated completions (#837) - (Vitalii)
  • FileExists: set one watcher instead of thousands (#831) - (Michael Peyton Jones)
  • Drop 8.4 support (#834) - (wz1000)
  • Add GetHieAsts rule, Replace SpanInfo, add support for DocumentHighlight and scope-aware completions for local variables (#784) - (wz1000)
  • Tag unused warning as such (#815) - (Alejandro Serrano)
  • Update instructions for stty error in windows (#825) - (Javier Neira)
  • Fix docs tooltip for base libraries on Windows (#814) - (Nick Dunets)
  • Fix documentation (or source) link when html file is less specific than module (#766) - (Nick Dunets)
  • Add completion tests for records. (#804) - (Guru Devanla)
  • Restore identifiers missing from hi file (#741) - (maralorn)
  • Fix import suggestions when dot is typed (#800) - (Marcelo Lazaroni)

0.4.0 (2020-09-15)

  • Fixes for GHC source plugins: dotpreprocessor works now - (srid)
  • Use implicit-hie when no explicit hie.yaml (#782) - (Javier Neira)
  • Extend position mapping with fuzzy ranges (#785) - (wz1000)
  • Sort import suggestions (#793) - (Pepe Iborra)
  • Save source files with HIE files (#701) - (fendor)
  • Fully asynchronous request handling (#767) - (Pepe Iborra)
  • Refinement holes (#748) - (Pepe Iborra)
  • Fix haddock to markdown conversion (#757) - (George Thomas)
  • Expose getCompletionsLSP to allow completions in hls (#756) - (wz1000)
  • Suggestions for missing imports from local modules (#739) - (Pepe Iborra)
  • Dynamically load libm on Linux for each new session (#723) - (Luke Lau)
  • Use InitializeParams.rootUri for initial session setup (#713) - (shaurya gupta)
  • Show documentation on hover for symbols defined in the same module (#691) - (wz1000)
  • Suggest open imports (#740) - (Pepe Iborra)
  • module Development.IDE (#724) - (Pepe Iborra)
  • Ignore -Werror (#738) - (Pepe Iborra)
  • Fix issue #710: fix suggest delete binding (#728) - (Ray Shih)
  • Generate doc file URL via LSP (to fix it for Windows) (#721) - (Nick Dunets)
  • Fix .hie file location for .hs-boot files (#690) - (wz1000)
  • Use argsVerbose to determine log level in test mode (#717) - (Ziyang Liu)
  • output which cradle files were found (#716) - (Adam Sandberg Eriksson)
  • Typecheck entire project on Initial Load and typecheck reverse dependencies of a file on saving (#688) - (wz1000)

0.3.0 (2020-09-02)

  • CI: remove (internal) DA Slack notifications (#750) - (Gary Verhaegen)
  • Add session-loader to hie.yaml (#714) - (Luke Lau)
  • Codeaction for exporting unused top-level bindings (#711) - (shaurya gupta)
  • Add links to haddock and hscolour pages in documentation (#699) - (Luke Lau)
  • Expose GHC.Compat module (#709) - (Pepe Iborra)
  • Move session loading logic into ghcide library (#697) - (Luke Lau)
  • Code action: remove redundant constraints for type signature (#692) - (Denis Frezzato)
  • Fix Binary instance of Q to handle empty file paths (#707) - (Moritz Kiefer)
  • Populate ms_hs_date in GetModSummary rule (#694) - (Pepe Iborra)
  • Allow GHC plugins to be called with an updated StringBuffer (#698) - (Alfredo Di Napoli)
  • Relax upper bounds for GHC 8.10.1 (#705) - (Pepe Iborra)
  • Obtain the GHC libdir at runtime (#696) - (Luke Lau)
  • Expect bench experiments to fail with Cabal (#704) - (Pepe Iborra)
  • Bump lodash from 4.17.15 to 4.17.19 in /extension (#702) - (dependabot[bot])
  • Update to hie-bios 0.6.1 (#693) - (fendor)
  • Backport HIE files to GHC 8.6 (#689) - (wz1000)
  • Performance improvements for GetSpanInfo (#681) - (Pepe Iborra)
  • Code action add default type annotation to remove -Wtype-defaults warning (#680) - (Serhii)
  • Use a global namecache to read .hie files (#677) - (wz1000)
  • Completions need not depend on typecheck of the current file (#670) - (Pepe Iborra)
  • Fix spaninfo Haddocks for local modules (#678) - (Pepe Iborra)
  • Avoid excessive retypechecking of TH codebases (#673) - (Pepe Iborra)
  • Use stale information if it's available to answer requests quickly (#624) - (Matthew Pickering)
  • Code action: add constraint (#653) - (Denis Frezzato)
  • Make BenchHist non buildable by default and save logs (#666) - (Pepe Iborra)
  • Delete unused top level binding code action (#657) - (Serhii)
  • stack810.yaml: bump (#651) - (Domen Kozar)
  • Fix debouncer for 0 delay (#662) - (Pepe Iborra)
  • Interface file fixes (#645) - (Pepe Iborra)
  • Retry GHC 8.10 on Windows (#661) - (Moritz Kiefer)
  • Finer dependencies for GhcSessionFun (#643) - (Pepe Iborra)
  • Send WorkDoneProgressEnd only when work is done (#649) - (Pepe Iborra)
  • Add a note on differential benchmarks (#647) - (Pepe Iborra)
  • Cache a ghc session per file of interest (#630) - (Pepe Iborra)
  • Remove Strict from the language extensions used for code actions (#638) - (Torsten Schmits)
  • Report progress when setting up cradle (#644) - (Luke Lau)
  • Fix crash when writing to a Barrier more than once (#637) - (Pepe Iborra)
  • Write a cabal.project file in the benchmark example (#640) - (Pepe Iborra)
  • Performance analysis over time (#629) - (Pepe Iborra)
  • More benchmarks (#625) - (Pepe Iborra)
  • Canonicalize the locations in the cradle tests (#628) - (Luke Lau)
  • Add hie.yaml.stack and use none cradle for test data (#626) - (Javier Neira)
  • Fix a bug in getHiFileRule (#623) - (Pepe Iborra)
  • ghc initialization error handling (#609) - (Pepe Iborra)
  • Fix regression in getSpanInfoRule (#622) - (Pepe Iborra)
  • Restore Shake profiling (#621) - (Pepe Iborra)
  • Use a better noRange (#612) - (Neil Mitchell)
  • Add back a .ghci file (#607) - (Neil Mitchell)
  • #573, make haddock errors warnings with the word Haddock in front (#608) - (Neil Mitchell)
  • Implement Goto Type Definition (#533) - (Matthew Pickering)
  • remove unnecessary FileExists dependency in GetHiFile (#589) - (Pepe Iborra)
  • ShakeSession and shakeEnqueue (#554) - (Pepe Iborra)
  • Benchmark suite (#590) - (Pepe Iborra)

0.2.0 (2020-06-02)

  • Multi-component support (thanks @mpickering)
  • Support for GHC 8.10 (thanks @sheaf and @chshersh)
  • Fix some TH issues (thanks @mpickering)
  • Automatically pick up changes to cradle dependencies (e.g. cabal files) (thanks @jinwoo)
  • Track dependencies when using qAddDependentFile (thanks @mpickering)
  • Add record fields to document symbols outline (thanks @bubba)
  • Fix some space leaks (thanks @mpickering)
  • Strip redundant path information from diagnostics (thanks @tek)
  • Fix import suggestions for operators (thanks @eddiemundo)
  • Significant reductions in memory usage by using interfaces and .hie files (thanks @pepeiborra)
  • Minor improvements to completions
  • More comprehensive suggestions for missing imports (thanks @pepeiborra)
  • Group imports in document outline (thanks @fendor)
  • Upgrade to haskell-lsp-0.22 (thanks @bubba)
  • Upgrade to hie-bios 0.5 (thanks @fendor)

0.1.0 (2020-02-04)

  • Code action for inserting new definitions (see #309).
  • Better default GC settings (see #329 and #333).
  • Various performance improvements (see #322 and #384).
  • Improvements to hover information (see #317 and #338).
  • Support GHC 8.8.2 (see #355).
  • Include keywords in completions (see #351).
  • Fix some issues with aborted requests (see #353).
  • Use hie-bios 0.4.0 (see #382).
  • Avoid stuck progress reporting (see #400).
  • Only show progress notifications after 0.1s (see #392).
  • Progress reporting is now in terms of the number of files rather than the number of shake rules (see #379).

0.0.6 (2020-01-10)

  • Fix type in hover information for do-notation and list comprehensions (see #243).
  • Fix hover and goto-definition for multi-clause definitions (see #252).
  • Upgrade to hie-bios-0.3 (see #257)
  • Upgrade to haskell-lsp-0.19 (see #254)
  • Code lenses for missing signatures are displayed even if the warning has not been enabled. The warning itself will not be shown if it is not enabled. (see #232)
  • Define __GHCIDE__ when running CPP to allow for ghcide-specific workarounds. (see #264)
  • Fix some filepath normalization issues. (see #266)
  • Fix build with shake-0.18.4 (see #272)
  • Fix hover for type constructors and type classes. (see #267)
  • Support custom preprocessors (see #282)
  • Add support for code completions (see #227)
  • Code action for removing redundant symbols from imports (see #290)
  • Support document symbol requests (see #293)
  • Show CPP errors as diagnostics (see #296)
  • Code action for adding suggested imports (see #295)

0.0.5 (2019-12-12)

  • Support for GHC plugins (see #192)
  • Update to haskell-lsp 0.18 (see #203)
  • Initial support for TemplateHaskell (see #222)
  • Code lenses for missing signatures. These are only shown if -Wmissing-signatures is enabled. (see #224)
  • Fix path normalisation on Windows (see #225)
  • Fix flickering of the progress indicator (see #230)

0.0.4 (2019-10-20)

  • Add a --version cli option (thanks @jacg)
  • Update to use progress reporting as defined in LSP 3.15. The VSCode extension has also been updated and should now be making use of this.
  • Properly declare that we should support code actions. This helps with some clients that rely on this information to enable code actions (thanks @jacg).
  • Fix a race condition caused by sharing the finder cache between concurrent compilations.
  • Avoid normalizing include dirs. This avoids issues where the same file ends up twice in the module graph, e.g., with different casing for drive letters.

0.0.3 (2019-09-21)