Skip to content

Commit 77ae6ed

Browse files
committed
Update HLS to v2.9.0.0
1 parent 6e0bbb7 commit 77ae6ed

File tree

5 files changed

+60
-9
lines changed

5 files changed

+60
-9
lines changed

.devcontainer/VERSION_MATRIX.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@
22

33
## Current
44

5-
| GHC | Cabal[^1] | Stack[^1] | HLS |
6-
|:------------------------------|:----------|:----------|:----------------------------- |
7-
| latest<br>9.10.1<br>9.10<br>9 | 3.11.0.0 | ≥ 2.13.1 | n/a |
8-
| 9.8.2<br>9.8 | 3.10.3.0 | ≥ 2.13.1 | 2.8.0.0<br>2.7.0.0<br>2.6.0.0 |
9-
| 9.6.5<br>9.6 | 3.10.3.0 | ≥ 2.13.1 | 2.8.0.0<br>2.7.0.0 |
5+
| GHC | Cabal[^1] | Stack[^1] | HLS |
6+
|:------------------------------|:----------|:----------|:---------------------------------------- |
7+
| latest<br>9.10.1<br>9.10<br>9 | 3.11.0.0 | ≥ 2.13.1 | latest<br>2.9.0.0 |
8+
| 9.8.2<br>9.8 | 3.10.3.0 | ≥ 2.13.1 | 2.9.0.0<br>2.8.0.0<br>2.7.0.0<br>2.6.0.0 |
9+
| 9.6.5<br>9.6 | 3.10.3.0 | ≥ 2.13.1 | 2.9.0.0<br>2.8.0.0<br>2.7.0.0 |
1010

1111
[^1]: built-in version; see [GHC musl > Version Matrix](../VERSION_MATRIX.md)
1212

.devcontainer/ghc-9.10/devcontainer.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
"context": "..",
66
"args": {
77
"GHC_VERSION": "9.10",
8+
"HLS_VERSION": "2.9.0.0",
89
"USE_ZSH_FOR_ROOT": "unset-to-use-ash",
910
"SET_LANG": "C.UTF-8",
1011
"SET_TZ": ""

.devcontainer/ghc-9.8/devcontainer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
"context": "..",
66
"args": {
77
"GHC_VERSION": "9.8",
8-
"HLS_VERSION": "2.8.0.0",
8+
"HLS_VERSION": "2.9.0.0",
99
"USE_ZSH_FOR_ROOT": "unset-to-use-ash",
1010
"SET_LANG": "C.UTF-8",
1111
"SET_TZ": ""

.gitlab-ci.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33
GHC_VERSION: "9.10.1"
44
CABAL_VERSION: "3.12.0.0-prerelease"
55
STACK_VERSION: "2.15.7"
6-
HLS_VERSION: "2.8.0.0"
7-
BUILD_GHC: "true"
8-
BUILD_HLS: "false"
6+
HLS_VERSION: "2.9.0.0"
7+
BUILD_GHC: "false"
8+
BUILD_HLS: "true"
99
TAG_VERSION_MAJ_MIN: "false"
1010
TAG_VERSION_MAJ: "false"
1111

packages/hls/2.9.0.0.Dockerfile

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
ARG GHC_VERSION
2+
ARG HLS_VERSION=2.9.0.0
3+
4+
FROM glcr.b-data.ch/ghc/ghc-musl:${GHC_VERSION} as builder
5+
6+
ARG HLS_VERSION
7+
8+
RUN apk add --no-cache patchelf findutils \
9+
&& cd /tmp \
10+
&& curl -sSL "https://github.com/haskell/haskell-language-server/archive/refs/tags/$HLS_VERSION.tar.gz" \
11+
-o "haskell-language-server-$HLS_VERSION.tar.gz" \
12+
&& tar -xzf "haskell-language-server-$HLS_VERSION.tar.gz" \
13+
&& cd "haskell-language-server-$HLS_VERSION" \
14+
&& . .github/scripts/env.sh \
15+
&& . .github/scripts/common.sh \
16+
&& sed -i.bak -e '/DELETE MARKER FOR CI/,/END DELETE/d' cabal.project \
17+
&& GHCS="$GHC_VERSION" \
18+
&& export GHCS \
19+
&& ARTIFACT="$(uname -m)-linux-alpine" \
20+
&& export ARTIFACT \
21+
&& cabal update \
22+
&& emake hls-ghc \
23+
&& CABAL_VERSION_NUMERIC="$(cabal --numeric-version)" \
24+
&& if dpkg --compare-versions "${CABAL_VERSION_NUMERIC%.*.*}" ge "3.11"; then \
25+
sed -i 's|"$(STORE_DIR)/ghc-$(GHC_VERSION)"|"$(STORE_DIR)/ghc-$(GHC_VERSION)-inplace"|g' \
26+
GNUmakefile; \
27+
fi \
28+
&& emake bindist \
29+
&& strip "out/bindist/$ARTIFACT/haskell-language-server-$HLS_VERSION/lib/$GHC_VERSION"/*.so \
30+
&& emake bindist-tar
31+
32+
FROM alpine:3.20 as hls
33+
34+
ARG HLS_VERSION
35+
36+
COPY --from=builder /tmp/haskell-language-server-"$HLS_VERSION"/out/haskell-language-server-*-linux-alpine.tar.xz /tmp/
37+
38+
RUN apk add --no-cache build-base \
39+
&& cd /tmp \
40+
&& tar -xJf haskell-language-server-"$HLS_VERSION"-*-linux-alpine.tar.xz \
41+
&& cd haskell-language-server-"$HLS_VERSION" \
42+
&& make install
43+
44+
FROM scratch
45+
46+
ARG HLS_VERSION
47+
48+
ENV HLS_VERSION=${HLS_VERSION}
49+
50+
COPY --from=hls /usr/local /usr/local

0 commit comments

Comments
 (0)