haskell / haskell/haskell-language-server

haskell-language-server starts up slowly

Open
#3,578 3 comments 5 reactions 0 assignees View on GitHub
performance type: enhancement
Dominant language
Haskell
Stars
3k
Forks
455
Avg merge
2d 19h
Merged PRs (30d)
11

Description

## Is your enhancement request related to a problem? Please describe.

I've set up a no-op project with the following files:

```cabal
-- foo.cabal
cabal-version: 2.4
name: foo
version: 0

library
build-depends: base
exposed-modules: Foo
```

```haskell
-- Foo.hs
module Foo where
```

With a _warm_ build, that is, after a `cabal build` at the command line, followed by an opening and closing of `Foo.hs` once (after letting haskell-language-server initialize), I observe the following timings upon opening `Foo.hs`:

Screen Shot 2023-05-06 at 12 35 52 AM

where "processing" and "setting up" occur in parallel after "initializing" is complete.

"Initializing" here is the time between the client sending the "initialize" RPC request to haskell-language server and receiving a response.

"Processing" and "setting up" are just what haskell-language-server is reporting it's doing via progress handlers.

## Describe the solution you'd like

Well, I'd like this to go much faster :) Or, at least, I wanted to draw attention to the slow startup time, in case it was not yet on anyone's radar who might be able to diagnose and improve.

Thanks!

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.