Skip to content

retrie plugin can generate massive argument lists #407

Closed
@alanz

Description

@alanz

While trying to play with the new case split plugin, I introduced the function

foo :: StmtLR GhcPs GhcPs (LHsExpr GhcPs) -> ()
foo = _

(the second line went through various iterations) at line 2093.

It initially produced case split image.

After editing it a bit (and breaking it), the emacs session became unresponsive. And it seemed the retrie plugin was sending code actions with very long argument lists. https://gist.github.com/alanz/c7b110fa6783a09085d4e8537ed0e2e1#file-really-long-codeaction-response-L38

Your environment

  • Output of haskell-language-server --probe-tools or haskell-language-server-wrapper --probe-tools
haskell-language-server-wrapper --probe-tools
haskell-language-server version: 0.4.0.0 (GHC: 8.10.2) (PATH: /home/alanz/.cabal/store/ghc-8.10.2/haskell-language-server-0.4.0.0-2ecd111aa38859cd0677f5794cf92ff297c44a4728d797c3bb010cbe21bedd56/bin/haskell-language-server-wrapper)
Tool versions found on the $PATH
cabal:		3.2.0.0
stack:		2.3.3
ghc:		8.8.4
  • Which lsp-client do you use

    • emacs, (version 28.0.50)
  • Describe your project (alternative: link to the project)

https://github.com/ghc/ghc/blob/wip/az/exactprint

I was not able to reproduce the problem.

Metadata

Metadata

Assignees

Labels

component: hls-retrie-pluginperformanceIssues about memory consumption, responsiveness, etc.type: bugSomething isn't right: doesn't work as intended, documentation is missing/outdated, etc..

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions