Skip to content

Commit af389aa

Browse files
authored
[ git ] Merge pull request #23 from agda/lsp-2
lsp 2
2 parents 266af65 + 87195dc commit af389aa

22 files changed

+430
-196
lines changed

.github/workflows/test-mac.yaml

Lines changed: 22 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ name: CI (macOS)
44

55
on:
66
push:
7-
branches: [master, ci-*]
7+
branches: [master, ci-*, ci]
88
tags:
99
- 'v*' # Push events to matching v*, i.e. v1.0, v20.15.10
1010
pull_request:
@@ -18,7 +18,7 @@ jobs:
1818
- name: 📥 Checkout repository
1919
uses: actions/checkout@v4
2020

21-
- name: Determine stack resolver
21+
- name: 🔍 Determine stack resolver
2222
run: |
2323
STACK_RESOLVER=$(yq .resolver stack.yaml)
2424
echo STACK_RESOLVER="${STACK_RESOLVER}" >> "${GITHUB_ENV}"
@@ -50,18 +50,26 @@ jobs:
5050
run: |
5151
echo PKG_CONFIG_PATH="$(brew --prefix)/opt/icu4c/lib/pkgconfig" >> "${GITHUB_ENV}"
5252
53-
- name: ⏬ Install stack
54-
run: |
55-
# mkdir -p ~/.local/bin
56-
# export PATH=~/.local/bin:$PATH
57-
## Stack is preinstalled on the GHA runners
58-
# brew install gnu-tar; curl -sL https://get.haskellstack.org/stable/osx-x86_64.tar.gz | gtar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'; chmod a+x ~/.local/bin/stack
59-
# if [[ ! -x ~/.local/bin/stack ]]; then brew install gnu-tar; curl -sL https://get.haskellstack.org/stable/osx-x86_64.tar.gz | gtar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'; chmod a+x ~/.local/bin/stack; fi
60-
stack --version
61-
62-
- name: ⏬ Install GHC
63-
run: |
64-
stack setup --install-ghc
53+
- name: ⏬ Setup Haskell
54+
uses: haskell-actions/setup@v2
55+
id: setup-haskell
56+
with:
57+
ghc-version: '9.2.8'
58+
enable-stack: true
59+
stack-version: 'latest'
60+
61+
# - name: ⏬ Install stack
62+
# run: |
63+
# # mkdir -p ~/.local/bin
64+
# # export PATH=~/.local/bin:$PATH
65+
# ## Stack is preinstalled on the GHA runners
66+
# # brew install gnu-tar; curl -sL https://get.haskellstack.org/stable/osx-x86_64.tar.gz | gtar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'; chmod a+x ~/.local/bin/stack
67+
# # if [[ ! -x ~/.local/bin/stack ]]; then brew install gnu-tar; curl -sL https://get.haskellstack.org/stable/osx-x86_64.tar.gz | gtar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'; chmod a+x ~/.local/bin/stack; fi
68+
# stack --version
69+
70+
# - name: ⏬ Install GHC
71+
# run: |
72+
# stack setup --install-ghc
6573

6674
- name: ⏬ Install dependencies
6775
run: |

agda-language-server.cabal

Lines changed: 43 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
cabal-version: 1.12
22

3-
-- This file has been generated from package.yaml by hpack version 0.35.2.
3+
-- This file has been generated from package.yaml by hpack version 0.37.0.
44
--
55
-- see: https://github.com/sol/hpack
66

77
name: agda-language-server
8-
version: 0.2.6.4.0.3
8+
version: 0.2.6.4.3.0
99
synopsis: An implementation of language server protocal (LSP) for Agda 2.
1010
description: Please see the README on GitHub at <https://github.com/agda/agda-language-server#readme>
1111
category: Development
@@ -22,22 +22,32 @@ extra-source-files:
2222
CHANGELOG.md
2323
package.yaml
2424
stack.yaml
25-
stack-8.10-Agda-2.6.2.2.yaml
26-
stack-9.0-Agda-2.6.2.2.yaml
2725
stack-9.2-Agda-2.6.2.2.yaml
2826
stack-9.2-Agda-2.6.3.yaml
27+
stack-9.2-Agda-2.6.4.yaml
28+
stack-9.2-Agda-2.6.4.3.yaml
2929

3030
source-repository head
3131
type: git
3232
location: https://github.com/banacorn/agda-language-server
3333

3434
flag Agda-2-6-2-2
35-
description: Embed Agda-2.6.2.2 (rather than 2.6.4)
35+
description: Embed Agda-2.6.2.2
3636
manual: True
3737
default: False
3838

3939
flag Agda-2-6-3
40-
description: Embed Agda-2.6.3 (rather than 2.6.4)
40+
description: Embed Agda-2.6.3
41+
manual: True
42+
default: False
43+
44+
flag Agda-2-6-4
45+
description: Embed Agda-2.6.4
46+
manual: True
47+
default: False
48+
49+
flag Agda-2-6-4-3
50+
description: Embed Agda-2.6.4.3
4151
manual: True
4252
default: False
4353

@@ -75,6 +85,7 @@ library
7585
default-extensions:
7686
LambdaCase
7787
OverloadedStrings
88+
PatternSynonyms
7889
TypeOperators
7990
ghc-options: -Wincomplete-patterns -Wunused-do-bind -Wunused-foralls -Wwarnings-deprecations -Wwrong-do-bind -Wmissing-fields -Wmissing-methods -Wmissing-pattern-synonym-signatures -Wmissing-signatures -Werror=incomplete-patterns -fno-warn-orphans
8091
build-depends:
@@ -85,8 +96,8 @@ library
8596
, containers
8697
, directory
8798
, filepath
88-
, lsp <2
89-
, lsp-types <2
99+
, lsp >=2
100+
, lsp-types >=2
90101
, mtl
91102
, network
92103
, network-simple
@@ -95,19 +106,20 @@ library
95106
, stm
96107
, strict
97108
, text
109+
, text-icu
98110
default-language: Haskell2010
99-
if flag(Agda-2-6-2-2) && !flag(Agda-2-6-3)
111+
if flag(Agda-2-6-2-2)
100112
build-depends:
101113
Agda ==2.6.2.2
102-
if !flag(Agda-2-6-2-2) && flag(Agda-2-6-3)
114+
if flag(Agda-2-6-3)
103115
build-depends:
104116
Agda ==2.6.3
105-
if !flag(Agda-2-6-2-2) && !flag(Agda-2-6-3)
117+
if flag(Agda-2-6-4)
106118
build-depends:
107119
Agda ==2.6.4
108-
if flag(Agda-2-6-2-2) && flag(Agda-2-6-3)
120+
if flag(Agda-2-6-4-3)
109121
build-depends:
110-
Agda <0
122+
Agda ==2.6.4.3
111123

112124
executable als
113125
main-is: Main.hs
@@ -118,6 +130,7 @@ executable als
118130
default-extensions:
119131
LambdaCase
120132
OverloadedStrings
133+
PatternSynonyms
121134
TypeOperators
122135
ghc-options: -Wincomplete-patterns -Wunused-do-bind -Wunused-foralls -Wwarnings-deprecations -Wwrong-do-bind -Wmissing-fields -Wmissing-methods -Wmissing-pattern-synonym-signatures -Wmissing-signatures -threaded -rtsopts -with-rtsopts=-N -Werror=incomplete-patterns -fno-warn-orphans
123136
build-depends:
@@ -129,8 +142,8 @@ executable als
129142
, containers
130143
, directory
131144
, filepath
132-
, lsp <2
133-
, lsp-types <2
145+
, lsp >=2
146+
, lsp-types >=2
134147
, mtl
135148
, network
136149
, network-simple
@@ -139,19 +152,20 @@ executable als
139152
, stm
140153
, strict
141154
, text
155+
, text-icu
142156
default-language: Haskell2010
143-
if flag(Agda-2-6-2-2) && !flag(Agda-2-6-3)
157+
if flag(Agda-2-6-2-2)
144158
build-depends:
145159
Agda ==2.6.2.2
146-
if !flag(Agda-2-6-2-2) && flag(Agda-2-6-3)
160+
if flag(Agda-2-6-3)
147161
build-depends:
148162
Agda ==2.6.3
149-
if !flag(Agda-2-6-2-2) && !flag(Agda-2-6-3)
163+
if flag(Agda-2-6-4)
150164
build-depends:
151165
Agda ==2.6.4
152-
if flag(Agda-2-6-2-2) && flag(Agda-2-6-3)
166+
if flag(Agda-2-6-4-3)
153167
build-depends:
154-
Agda <0
168+
Agda ==2.6.4.3
155169

156170
test-suite als-test
157171
type: exitcode-stdio-1.0
@@ -190,6 +204,7 @@ test-suite als-test
190204
default-extensions:
191205
LambdaCase
192206
OverloadedStrings
207+
PatternSynonyms
193208
TypeOperators
194209
ghc-options: -Wincomplete-patterns -Wunused-do-bind -Wunused-foralls -Wwarnings-deprecations -Wwrong-do-bind -Wmissing-fields -Wmissing-methods -Wmissing-pattern-synonym-signatures -Wmissing-signatures -threaded -rtsopts -with-rtsopts=-N -Werror=incomplete-patterns -fno-warn-orphans
195210
build-depends:
@@ -200,8 +215,8 @@ test-suite als-test
200215
, containers
201216
, directory
202217
, filepath
203-
, lsp <2
204-
, lsp-types <2
218+
, lsp >=2
219+
, lsp-types >=2
205220
, mtl
206221
, network
207222
, network-simple
@@ -214,16 +229,17 @@ test-suite als-test
214229
, tasty-hunit
215230
, tasty-quickcheck
216231
, text
232+
, text-icu
217233
default-language: Haskell2010
218-
if flag(Agda-2-6-2-2) && !flag(Agda-2-6-3)
234+
if flag(Agda-2-6-2-2)
219235
build-depends:
220236
Agda ==2.6.2.2
221-
if !flag(Agda-2-6-2-2) && flag(Agda-2-6-3)
237+
if flag(Agda-2-6-3)
222238
build-depends:
223239
Agda ==2.6.3
224-
if !flag(Agda-2-6-2-2) && !flag(Agda-2-6-3)
240+
if flag(Agda-2-6-4)
225241
build-depends:
226242
Agda ==2.6.4
227-
if flag(Agda-2-6-2-2) && flag(Agda-2-6-3)
243+
if flag(Agda-2-6-4-3)
228244
build-depends:
229-
Agda <0
245+
Agda ==2.6.4.3

package.yaml

Lines changed: 25 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name: agda-language-server
2-
version: 0.2.6.4.0.3
2+
version: 0.2.6.4.3.0
33
github: "banacorn/agda-language-server"
44
license: MIT
55
author: "Ting-Gian LUA"
@@ -11,10 +11,10 @@ extra-source-files:
1111
- CHANGELOG.md
1212
- package.yaml
1313
- stack.yaml
14-
- stack-8.10-Agda-2.6.2.2.yaml
15-
- stack-9.0-Agda-2.6.2.2.yaml
1614
- stack-9.2-Agda-2.6.2.2.yaml
1715
- stack-9.2-Agda-2.6.3.yaml
16+
- stack-9.2-Agda-2.6.4.yaml
17+
- stack-9.2-Agda-2.6.4.3.yaml
1818

1919
# Metadata used when publishing your package
2020
synopsis: An implementation of language server protocal (LSP) for Agda 2.
@@ -27,27 +27,38 @@ description: Please see the README on GitHub at <https://github.com/agda
2727

2828
flags:
2929
Agda-2-6-2-2:
30-
description: Embed Agda-2.6.2.2 (rather than 2.6.4)
30+
description: Embed Agda-2.6.2.2
3131
manual: true
3232
default: false
3333
Agda-2-6-3:
34-
description: Embed Agda-2.6.3 (rather than 2.6.4)
34+
description: Embed Agda-2.6.3
35+
manual: true
36+
default: false
37+
Agda-2-6-4:
38+
description: Embed Agda-2.6.4
39+
manual: true
40+
default: false
41+
Agda-2-6-4-3:
42+
description: Embed Agda-2.6.4.3
3543
manual: true
3644
default: false
3745

3846
when:
39-
- condition: "flag(Agda-2-6-2-2) && !flag(Agda-2-6-3)"
47+
- condition: "flag(Agda-2-6-2-2)"
4048
dependencies:
4149
- Agda == 2.6.2.2
42-
- condition: "!flag(Agda-2-6-2-2) && flag(Agda-2-6-3)"
50+
- condition: "flag(Agda-2-6-3)"
4351
dependencies:
4452
- Agda == 2.6.3
45-
- condition: "!flag(Agda-2-6-2-2) && !flag(Agda-2-6-3)"
53+
- condition: "flag(Agda-2-6-4)"
4654
dependencies:
4755
- Agda == 2.6.4
48-
- condition: "flag(Agda-2-6-2-2) && flag(Agda-2-6-3)"
56+
- condition: "flag(Agda-2-6-4-3)"
4957
dependencies:
50-
- Agda < 0
58+
- Agda == 2.6.4.3
59+
# - condition: "flag(Agda-2-6-2-2) && flag(Agda-2-6-3)"
60+
# dependencies:
61+
# - Agda < 0
5162

5263
dependencies:
5364
- base >= 4.7 && < 5
@@ -57,20 +68,22 @@ dependencies:
5768
- containers
5869
- directory
5970
- filepath
60-
- lsp-types < 2
61-
- lsp < 2
71+
- lsp-types >= 2
72+
- lsp >= 2
6273
- mtl
6374
- network
6475
- network-simple
6576
- strict
6677
- stm
6778
- text
79+
- text-icu
6880
- process
6981
- prettyprinter
7082

7183
default-extensions:
7284
- LambdaCase
7385
- OverloadedStrings
86+
- PatternSynonyms
7487
- TypeOperators
7588

7689
library:

src/Agda/Parser.hs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import Data.Maybe (fromMaybe)
1818
import Data.Text (Text, unpack)
1919
import qualified Data.Text as Text
2020
import Language.LSP.Server (LspM)
21-
import qualified Language.LSP.Types as LSP
21+
import qualified Language.LSP.Protocol.Types as LSP
2222
import Options (Config)
2323

2424
--------------------------------------------------------------------------------

src/Agda/Position.hs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ import qualified Data.Sequence as Seq
2222
import qualified Data.Strict.Maybe as Strict
2323
import Data.Text ( Text )
2424
import qualified Data.Text as Text
25-
import qualified Language.LSP.Types as LSP
25+
import qualified Language.LSP.Protocol.Types as LSP
2626

2727
-- Note: LSP srclocs are 0-base
2828
-- Agda srclocs are 1-base

src/Monad.hs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1+
{-# LANGUAGE CPP #-}
12
{-# LANGUAGE FlexibleContexts #-}
3+
24
module Monad where
35

46
import Agda.IR
@@ -25,7 +27,7 @@ import Data.Maybe ( isJust )
2527
import Language.LSP.Server ( MonadLsp
2628
, getConfig
2729
)
28-
import qualified Language.LSP.Types as LSP
30+
import qualified Language.LSP.Protocol.Types as LSP
2931
import Options
3032

3133
--------------------------------------------------------------------------------

0 commit comments

Comments
 (0)