haskell-language-server

Official haskell ide support via language server (LSP). Successor of ghcide & haskell-ide-engine.

https://github.com/haskell/haskell-language-server

Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    3 of 251 committers (1.2%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (6.8%) to scientific vocabulary

Keywords

cabal ghc hacktoberfest haskell haskell-language-server ide lsp-server stack

Keywords from Contributors

agda dependent-types programming-language proof-assistant type-theory commonmark converter document markup pandoc
Last synced: 4 months ago · JSON representation ·

Repository

Official haskell ide support via language server (LSP). Successor of ghcide & haskell-ide-engine.

Basic Info
  • Host: GitHub
  • Owner: haskell
  • License: apache-2.0
  • Language: Haskell
  • Default Branch: master
  • Homepage:
  • Size: 23.7 MB
Statistics
  • Stars: 2,831
  • Watchers: 52
  • Forks: 405
  • Open Issues: 552
  • Releases: 41
Topics
cabal ghc hacktoberfest haskell haskell-language-server ide lsp-server stack
Created almost 6 years ago · Last pushed 4 months ago
Metadata Files
Readme Changelog Contributing Funding License Code of conduct Citation Codeowners Support

README.md

haskell-language-server

haskell-language-server

Release Hackage License Apache 2.0 CircleCI GitHub Testing Workflow GitHub Nix Workflow matrix codetriage

The official Haskell language server (LSP) implementation. Consult the project documentation for more details.

Owner

  • Name: Haskell
  • Login: haskell
  • Kind: organization

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you need to cite Haskell Language Server, this metadata is the paper that introduces the current design."
repository-code: "https://github.com/haskell/haskell-language-server"
title: Haskell Language Server
preferred-citation:
  type: article
  authors: 
  - family-names: Mitchell
    given-names: Neil
    orcid: "https://orcid.org/0000-0001-5171-9726"
  - family-names: Kiefer
    given-names: Moritz
  - family-names: Iborra
    given-names: Pepe
  - family-names: Lau
    given-names: Luke
  - family-names: Duggal
    given-names: Zubin
  - family-names: Siebenhandl
    given-names: Hannes
  - family-names: Sanchez
    given-names: Javier Neira
  - family-names: Pickering
    given-names: Matthew
  - family-names: Zimmerman
    given-names: Alan
  doi: "10.1145/3462172"
  journal: "IFL 2020: Proceedings of the 32nd Symposium on Implementation and Application of Functional Languages"
  month: 9
  day: 2
  isbn: 978-1-4503-8963-1
  publisher: ACM
  title: "Building an Integrated Development Environment (IDE) on top of a Build System"
  year: 2020
  url: https://ndmitchell.com/downloads/paper-building_an_ide_on_top_of_a_build_system_revised-04_sep_2020.pdf
  abstract: "When developing a Haskell IDE we hit upon an idea - why not base an IDE on an build system? In this paper we'll explain how to go from that idea to a usable IDE, including the difficulties imposed by reusing a build system, and those imposed by technical details specific to Haskell. Our design has been successful, and hopefully provides a blue-print for others writing IDEs."

GitHub Events

Total
  • Create event: 50
  • Release event: 1
  • Issues event: 166
  • Watch event: 204
  • Delete event: 15
  • Member event: 4
  • Issue comment event: 833
  • Push event: 330
  • Pull request review event: 400
  • Pull request review comment event: 317
  • Pull request event: 225
  • Fork event: 46
Last Year
  • Create event: 50
  • Release event: 1
  • Issues event: 166
  • Watch event: 204
  • Delete event: 15
  • Member event: 4
  • Issue comment event: 833
  • Push event: 330
  • Pull request review event: 400
  • Pull request review comment event: 317
  • Pull request event: 225
  • Fork event: 46

Committers

Last synced: 5 months ago

All Time
  • Total Commits: 3,435
  • Total Committers: 251
  • Avg Commits per committer: 13.685
  • Development Distribution Score (DDS): 0.858
Past Year
  • Commits: 149
  • Committers: 41
  • Avg Commits per committer: 3.634
  • Development Distribution Score (DDS): 0.792
Top Committers
Name Email Commits
Pepe Iborra p****a@g****m 487
jneira a****b@g****m 465
Zubin Duggal z****l@g****m 200
fendor f****r 151
Alan Zimmerman a****m@g****m 138
Sandy Maguire s****y@s****e 114
Moritz Kiefer m****r@p****g 112
Neil Mitchell n****l@g****m 103
Michael Peyton Jones me@m****m 96
Jan Hrcek 2****k 87
dependabot[bot] 4****] 84
Potato Hatsue 1****7@q****m 82
soulomoon f****2@g****m 71
Luke Lau l****u@i****m 69
Lei Zhu j****e@g****m 65
Neil Mitchell 3****a 56
George Thomas g****s@g****m 55
Junyoung/Clare Jang j****0@g****m 50
Peter Wicks Stringfield p****d@g****m 46
Jacek Generowicz j****g@m****t 32
Hiromi ISHII k****o@g****m 31
Pasqualino Titto Assini t****i@g****m 31
Julian Ospald h****l@p****e 27
Jeff Windsor j****r@g****m 26
Guillaume Bouchard g****d@g****m 23
Andy a****8 23
Nick Suchecki 4****h 22
Nathan Maxson j****s@g****m 22
maralorn m****y@m****e 20
Matthew Pickering m****g@g****m 19
and 221 more...

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 2,286
  • Total pull requests: 2,659
  • Average time to close issues: 7 months
  • Average time to close pull requests: 18 days
  • Total issue authors: 746
  • Total pull request authors: 228
  • Average comments per issue: 5.54
  • Average comments per pull request: 2.9
  • Merged pull requests: 2,171
  • Bot issues: 1
  • Bot pull requests: 158
Past Year
  • Issues: 135
  • Pull requests: 287
  • Average time to close issues: 21 days
  • Average time to close pull requests: 12 days
  • Issue authors: 79
  • Pull request authors: 52
  • Average comments per issue: 2.04
  • Average comments per pull request: 1.94
  • Merged pull requests: 177
  • Bot issues: 0
  • Bot pull requests: 37
Top Authors
Issue Authors
  • pepeiborra (109)
  • jneira (101)
  • fendor (77)
  • isovector (69)
  • michaelpj (67)
  • ndmitchell (52)
  • soulomoon (44)
  • alanz (43)
  • mpickering (36)
  • expipiplus1 (30)
  • konn (30)
  • maralorn (29)
  • googleson78 (25)
  • berberman (24)
  • hasufell (24)
Pull Request Authors
  • pepeiborra (290)
  • jneira (224)
  • fendor (176)
  • soulomoon (158)
  • jhrcek (154)
  • dependabot[bot] (138)
  • isovector (129)
  • michaelpj (113)
  • wz1000 (104)
  • July541 (71)
  • berberman (69)
  • alanz (43)
  • Ailrun (41)
  • georgefst (28)
  • hasufell (27)
Top Labels
Issue Labels
type: bug (1,004) type: enhancement (633) status: needs triage (286) component: ghcide (279) CI (140) type: support (129) status: needs info (122) component: wingman (96) can-workaround (91) build tool: stack (76) status: blocked (74) component: hls-eval-plugin (67) status: in discussion (65) level: easy (62) component: hie-bios (57) component: plugins (54) performance (53) old_type: distribution (50) component: hls-hlint-plugin (48) old_type: meta (47) os: nixos (44) os: windows (33) multi-component (27) component: imports plugin (27) documentation (24) build tool: cabal (24) component: formatters (23) os: macos (23) component: implicit-hie (22) component: hls-cabal-plugin (21)
Pull Request Labels
merge me (949) dependencies (138) status: needs review (59) performance (21) github_actions (17) status: unfinished (11) status: needs info (8) CI (6) WIP (4) build tool: cabal (3) priority: high (3) flaky test (3) component: ghcide (2) status: in discussion (2) component: hls-graph (2) GSoC (2) status: blocked (1) type: enhancement (1) component: hls-hlint-plugin (1) component: wingman (1) hacktoberfest-accepted (1) bindists (1)

Packages

  • Total packages: 15
  • Total downloads:
    • hackage 80,525 total
    • homebrew 69 last-month
  • Total dependent packages: 104
    (may contain duplicates)
  • Total dependent repositories: 53
    (may contain duplicates)
  • Total versions: 267
  • Total maintainers: 16
hackage.haskell.org: ghcide

A library for building Haskell IDE's on top of the GHC API.

  • Versions: 57
  • Dependent Packages: 38
  • Dependent Repositories: 15
  • Downloads: 24,569 Total
Rankings
Stargazers count: 0.1%
Forks count: 0.1%
Dependent packages count: 0.7%
Average: 4.5%
Downloads: 6.8%
Dependent repos count: 14.8%
Last synced: 7 months ago
proxy.golang.org: github.com/haskell/haskell-language-server
  • Versions: 9
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 5.5%
Average: 5.7%
Dependent repos count: 5.8%
Last synced: 4 months ago
hackage.haskell.org: hls-plugin-api
  • Versions: 32
  • Dependent Packages: 36
  • Dependent Repositories: 12
  • Downloads: 11,660 Total
Rankings
Stargazers count: 0.1%
Forks count: 0.1%
Dependent packages count: 0.8%
Average: 7.0%
Downloads: 16.6%
Dependent repos count: 17.3%
Last synced: 4 months ago
alpine-edge: haskell-language-server

Official Haskell Language Server implementation

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 0.0%
Average: 7.2%
Dependent packages count: 14.4%
Maintainers (1)
Last synced: 4 months ago
hackage.haskell.org: hie-compat

Backports for HIE files to GHC 8.8, along with a few other backports of HIE file related fixes for ghcide. THIS DOES NOT LET YOU READ HIE FILES WITH MISMATCHED VERSIONS OF GHC

  • Versions: 8
  • Dependent Packages: 6
  • Dependent Repositories: 5
  • Downloads: 7,512 Total
Rankings
Forks count: 0.1%
Stargazers count: 0.2%
Dependent packages count: 3.9%
Average: 11.2%
Dependent repos count: 25.7%
Downloads: 25.9%
Last synced: 4 months ago
hackage.haskell.org: haskell-language-server

Please see the README on GitHub at https://github.com/haskell/haskell-language-server#readme

  • Versions: 31
  • Dependent Packages: 1
  • Dependent Repositories: 1
  • Downloads: 9,361 Total
Rankings
Forks count: 0.2%
Stargazers count: 0.2%
Dependent packages count: 10.5%
Average: 13.7%
Downloads: 21.2%
Dependent repos count: 36.5%
Last synced: 7 months ago
hackage.haskell.org: hls-graph

Please see the README on GitHub at https://github.com/haskell/haskell-language-server/tree/master/hls-graph#readme

  • Versions: 22
  • Dependent Packages: 17
  • Dependent Repositories: 1
  • Downloads: 7,727 Total
Rankings
Forks count: 0.1%
Stargazers count: 0.2%
Dependent packages count: 1.5%
Average: 14.1%
Downloads: 31.9%
Dependent repos count: 36.7%
Last synced: 4 months ago
formulae.brew.sh: haskell-language-server

Integration point for ghcide and haskell-ide-engine. One IDE to rule them all

  • Versions: 15
  • Dependent Packages: 0
  • Dependent Repositories: 8
  • Downloads: 69 Last month
Rankings
Forks count: 8.4%
Stargazers count: 10.1%
Average: 14.4%
Dependent repos count: 14.7%
Downloads: 19.3%
Dependent packages count: 19.5%
Last synced: 4 months ago
hackage.haskell.org: hls-test-utils
  • Versions: 24
  • Dependent Packages: 0
  • Dependent Repositories: 11
  • Downloads: 3,262 Total
Rankings
Forks count: 0.1%
Stargazers count: 0.2%
Dependent packages count: 14.6%
Dependent repos count: 18.1%
Average: 19.5%
Downloads: 64.5%
Last synced: 4 months ago
hackage.haskell.org: hls-class-plugin
  • Versions: 22
  • Dependent Packages: 1
  • Dependent Repositories: 0
  • Downloads: 5,907 Total
Rankings
Forks count: 0.1%
Stargazers count: 0.2%
Dependent packages count: 6.0%
Average: 19.8%
Downloads: 37.8%
Dependent repos count: 55.1%
Last synced: 4 months ago
hackage.haskell.org: hls-haddock-comments-plugin
  • Versions: 14
  • Dependent Packages: 1
  • Dependent Repositories: 0
  • Downloads: 4,401 Total
Rankings
Forks count: 0.1%
Stargazers count: 0.2%
Dependent packages count: 6.0%
Average: 20.5%
Downloads: 40.9%
Dependent repos count: 55.1%
Last synced: 4 months ago
hackage.haskell.org: hls-fourmolu-plugin
  • Versions: 17
  • Dependent Packages: 1
  • Dependent Repositories: 0
  • Downloads: 4,808 Total
Rankings
Forks count: 0.1%
Stargazers count: 0.2%
Dependent packages count: 6.0%
Average: 21.0%
Downloads: 43.8%
Dependent repos count: 55.1%
Maintainers (4)
Last synced: 12 months ago
hackage.haskell.org: hls-exactprint-utils
  • Versions: 1
  • Dependent Packages: 1
  • Dependent Repositories: 0
  • Downloads: 253 Total
Rankings
Forks count: 0.2%
Stargazers count: 0.2%
Dependent packages count: 6.0%
Average: 31.1%
Dependent repos count: 55.1%
Downloads: 94.0%
Last synced: 12 months ago
hackage.haskell.org: ghcide-test-utils
  • Versions: 3
  • Dependent Packages: 1
  • Dependent Repositories: 0
  • Downloads: 460 Total
Rankings
Forks count: 0.1%
Stargazers count: 0.2%
Dependent packages count: 6.0%
Average: 31.6%
Dependent repos count: 55.1%
Downloads: 96.6%
Maintainers (1)
Last synced: 12 months ago
hackage.haskell.org: ghcide-bench
  • Versions: 11
  • Dependent Packages: 1
  • Dependent Repositories: 0
  • Downloads: 605 Total
Rankings
Forks count: 0.2%
Stargazers count: 0.2%
Dependent packages count: 6.0%
Average: 31.8%
Dependent repos count: 55.1%
Downloads: 97.7%
Maintainers (1)
Last synced: 4 months ago

Dependencies

ghcide/test/data/cabal-exe/a/a.cabal hackage
  • base *
ghcide/test/data/ignore-fatal/ignore-fatal.cabal hackage
  • base *
ghcide/test/data/multi/a/a.cabal hackage
  • async *
  • base *
ghcide/test/data/multi/b/b.cabal hackage
  • a *
  • base *
ghcide/test/data/multi/c/c.cabal hackage
  • a *
  • base *
ghcide/test/data/plugin-knownnat/plugin.cabal hackage
  • base *
  • ghc-typelits-knownnat *
ghcide/test/data/plugin-recorddot/plugin.cabal hackage
  • base *
  • record-dot-preprocessor *
  • record-hasfield *
ghcide/test/data/rootUri/dirA/foo.cabal hackage
  • base *
ghcide/test/data/rootUri/dirB/foo.cabal hackage
  • base *
hie-compat/hie-compat.cabal hackage
  • array *
  • base <4.17
  • bytestring *
  • containers *
  • directory *
  • filepath *
  • ghc *
  • ghc-boot *
  • ghc-lib <9.0
  • transformers *
plugins/hls-eval-plugin/test/info-util/info-util.cabal hackage
  • base >=4.7 && <5
plugins/hls-eval-plugin/test/testdata/test.cabal hackage
  • QuickCheck *
  • base >=4.7 && <5
  • info-util *
test/testdata/addPackageTest/cabal-exe/add-package-test.cabal hackage
  • base >=4.7 && <5
test/testdata/addPackageTest/cabal-lib/add-package-test.cabal hackage
  • base >=4.7 && <5
test/testdata/addPackageTest/hpack-exe/asdf.cabal hackage
  • base >=4.7 && <5
test/testdata/badProjects/cabal/bad-cabal.cabal hackage
  • base >=4.7 && <5
  • does-not-exist *
test/testdata/completion/completions.cabal hackage
  • base *
test/testdata/definition/definitions.cabal hackage
  • base *
test/testdata/hieBiosMainIs/hieBiosMainIs.cabal hackage
  • base ==4.12.*
test/testdata/redundantImportTest/test.cabal hackage
  • base >=4.7 && <5
test/testdata/testdata.cabal hackage
  • base *
test/wrapper/testdata/cabal-cur-ver/cabal-cur-ver.cabal hackage
  • base *
test/wrapper/testdata/stack-8.10.7/foo.cabal hackage
  • base *
docs/requirements.txt pypi
  • Sphinx *
  • docutils <0.19
  • myst-parser *
  • sphinx-rtd-theme *
.github/actions/setup-build/action.yml actions
  • actions/cache v3 composite
  • haskell/actions/setup v2 composite
.github/workflows/bench.yml actions
  • ./.github/actions/setup-build * composite
  • actions/checkout v3 composite
  • actions/download-artifact v3 composite
  • actions/upload-artifact v3 composite
  • fkirc/skip-duplicate-actions v5.3.0 composite
  • haskell/actions/setup v2 composite
.github/workflows/build.yml actions
  • actions/checkout v3 composite
  • actions/download-artifact v3 composite
  • actions/github-script v6 composite
  • actions/upload-artifact v3 composite
  • actions/upload-release-asset v1.0.2 composite
.github/workflows/caching.yml actions
  • ./.github/actions/setup-build * composite
  • actions/checkout v3 composite
  • fkirc/skip-duplicate-actions v5.3.0 composite
.github/workflows/flags.yml actions
  • ./.github/actions/setup-build * composite
  • actions/checkout v3 composite
  • fkirc/skip-duplicate-actions v5.3.0 composite
.github/workflows/hackage.yml actions
  • ./.github/actions/setup-build * composite
  • actions/checkout v3 composite
  • actions/download-artifact v3 composite
  • actions/upload-artifact v3 composite
  • haskell-actions/hackage-publish v1 composite
.github/workflows/hlint.yml actions
  • actions/checkout v3 composite
  • rwe/actions-hlint-run v2 composite
  • rwe/actions-hlint-setup v1 composite
.github/workflows/nix.yml actions
  • actions/checkout v3 composite
  • cachix/cachix-action v12 composite
  • cachix/install-nix-action v18 composite
  • fkirc/skip-duplicate-actions v5.3.0 composite
.github/workflows/pre-commit.yml actions
  • ./.github/actions/setup-build * composite
  • actions/cache v3 composite
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • pre-commit/action v3.0.0 composite
  • technote-space/get-diff-action v6.1.2 composite
.github/workflows/test.yml actions
  • ./.github/actions/setup-build * composite
  • actions/cache v3 composite
  • actions/checkout v3 composite
  • fkirc/skip-duplicate-actions v5.3.0 composite
plugins/hls-cabal-fmt-plugin/test/testdata/commented_testdata.cabal hackage
  • base >=4.14.1.0 && <4.15
plugins/hls-cabal-fmt-plugin/test/testdata/simple_testdata.cabal hackage
  • base >=4.14.1.0 && <4.15
plugins/hls-cabal-plugin/test/testdata/invalid.cabal hackage
  • base *
plugins/hls-cabal-plugin/test/testdata/licenseCodeAction.cabal hackage
  • base *
plugins/hls-module-name-plugin/test/testdata/canonicalize/canonicalize.cabal hackage
  • base *
plugins/hls-stan-plugin/hls-stan-plugin.cabal hackage
  • base *
  • containers *
  • data-default *
  • deepseq *
  • ghc *
  • ghcide *
  • hashable *
  • hls-plugin-api *
  • lsp-types *
  • stan *
  • text *
  • transformers *
  • unordered-containers *
  • aeson * test
  • base * test
  • containers * test
  • filepath * test
  • hls-plugin-api * test
  • hls-stan-plugin * test
  • hls-test-utils ==1.5.* test
  • lens * test
  • lsp-types * test
  • text * test
shake-bench/shake-bench.cabal hackage
  • Chart *
  • Chart-diagrams *
  • aeson *
  • base ==4.*
  • bytestring *
  • diagrams-contrib *
  • diagrams-core *
  • diagrams-lib *
  • diagrams-svg *
  • directory *
  • extra >=1.7.2
  • filepath *
  • lens *
  • lens-aeson *
  • mtl *
  • shake *
  • text *
test/testdata/wErrorTest/test.cabal hackage
  • base >=4.7 && <5