Skip to content

Commit 5be8e9d

Browse files
Merge branch 'master' into wip/evidence-info
2 parents 4d32c2a + 6680d21 commit 5be8e9d

File tree

789 files changed

+30048
-8698
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

789 files changed

+30048
-8698
lines changed

.circleci/config.yml

Lines changed: 47 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -2,105 +2,97 @@ defaults: &defaults
22
working_directory: ~/build
33
docker:
44
- image: alanz/haskell-hie-ci
5+
resource_class: large
56
steps:
67
- checkout
78
- run:
8-
name: Write provided stack.yaml with predictable name
9-
command: cp ${STACK_FILE} stack-build.txt
10-
11-
- run:
12-
name: Figure out resolver for better caching
13-
command: grep '^resolver:' stack-build.txt > resolver.txt
14-
15-
- run:
16-
name: Create a composite cabal file for changes detection
17-
command: find . -name "*.cabal" | grep -v -e "stack-work" -e "dist-newstyle" -e "submodules" -e "testdata" | sort | xargs cat > all-cabal.txt
9+
name: Save resolver field into file
10+
command: grep '^resolver:' ${STACK_FILE} > resolver.txt
1811

1912
- restore_cache:
2013
keys:
21-
- stack-cache-{{ .Environment.HIE_CACHE }}-{{ arch }}-{{ .Environment.CIRCLE_JOB }}-{{ checksum "stack-build.txt" }}-{{ checksum "all-cabal.txt" }}
22-
- stack-cache-{{ .Environment.HIE_CACHE }}-{{ arch }}-{{ .Environment.CIRCLE_JOB }}-{{ checksum "stack-build.txt" }}
23-
- stack-cache-{{ .Environment.HIE_CACHE }}-{{ arch }}-{{ .Environment.CIRCLE_JOB }}-{{ checksum "resolver.txt" }}
14+
- v4-stack-cache-{{ arch }}-{{ .Environment.CIRCLE_JOB }}-{{ checksum "resolver.txt" }}
15+
16+
# Looking for the string [skip circleci] in all the json returned by https://docs.github.com/en/rest/reference/pulls#get-a-pull-request
17+
- run:
18+
name: Skip ci setup
19+
command: |
20+
set +e
21+
echo "CIRCLE_PULL_REQUEST: $CIRCLE_PULL_REQUEST"
22+
if [[ ! -z $CIRCLE_PULL_REQUEST ]]; then
23+
PULL_REQUEST_URL=${CIRCLE_PULL_REQUEST/github.com/api.github.com/repos}
24+
PULL_REQUEST_URL=${PULL_REQUEST_URL/pull/pulls}
25+
echo "PULL_REQUEST_URL: $PULL_REQUEST_URL"
26+
SKIP_CI=$(curl $PULL_REQUEST_URL | grep -o "\\[skip circleci\\]")
27+
if [[ -z "$SKIP_CI" ]]; then
28+
PULL_REQUEST_COMMENTS_URL=${PULL_REQUEST_URL/pulls/issues}/comments
29+
echo "PULL_REQUEST_COMMENTS_URL: $PULL_REQUEST_COMMENTS_URL"
30+
SKIP_CI=$(curl $PULL_REQUEST_COMMENTS_URL | grep -o "\\[skip circleci\\]")
31+
fi
32+
echo "SKIP_CI: $SKIP_CI"
33+
fi
34+
echo "export SKIP_CI=$SKIP_CI" >> $BASH_ENV
2435
2536
- run:
2637
name: Stack upgrade
27-
command: stack upgrade
38+
command: |
39+
if [[ -z "$SKIP_CI" ]]; then
40+
stack upgrade
41+
fi
2842
2943
- run:
3044
name: Stack setup
31-
command: stack -j 2 --stack-yaml=${STACK_FILE} setup
45+
command: |
46+
if [[ -z "$SKIP_CI" ]]; then
47+
stack -j4 --stack-yaml=${STACK_FILE} setup
48+
fi
3249
3350
- run:
3451
name: Build (we need the exe for tests)
3552
# need j1, else ghc-lib-parser triggers OOM
36-
command: stack -j 1 --stack-yaml=${STACK_FILE} install --no-terminal
53+
command: |
54+
if [[ -z "$SKIP_CI" ]]; then
55+
stack -j4 --stack-yaml=${STACK_FILE} install --no-terminal
56+
fi
3757
no_output_timeout: 30m
3858

3959
- run:
4060
name: Build Testsuite without running it
41-
command: stack -j 1 --stack-yaml=${STACK_FILE} build --test --no-run-tests --no-terminal
61+
command: |
62+
if [[ -z "$SKIP_CI" ]]; then
63+
stack -j4 --stack-yaml=${STACK_FILE} build --test --no-run-tests --no-terminal
64+
fi
4265
no_output_timeout: 30m
4366

4467
- store_artifacts:
4568
path: ~/.local/bin
4669
destination: bin
4770

4871
- save_cache:
49-
key: stack-cache-{{ .Environment.HIE_CACHE }}-{{ arch }}-{{ .Environment.CIRCLE_JOB }}-{{ checksum "resolver.txt" }}
72+
key: v4-stack-cache-{{ arch }}-{{ .Environment.CIRCLE_JOB }}-{{ checksum "resolver.txt" }}
5073
paths: &cache_paths
5174
- ~/.stack
52-
- ~/build/.stack-work
53-
- ~/build/ghcide/.stack-work
54-
55-
- run:
56-
name: Build including tests
57-
command: stack --stack-yaml=${STACK_FILE} test --no-run-tests --no-terminal
58-
no_output_timeout: 120m
59-
60-
- save_cache:
61-
key: stack-cache-{{ .Environment.HIE_CACHE }}-{{ arch }}-{{ .Environment.CIRCLE_JOB }}-{{ checksum "stack-build.txt" }}-{{ checksum "all-cabal.txt" }}
62-
paths: *cache_paths
6375

6476
version: 2
6577
jobs:
66-
ghc-8.6.4:
67-
environment:
68-
- STACK_FILE: "stack-8.6.4.yaml"
69-
<<: *defaults
70-
7178
ghc-8.6.5:
7279
environment:
7380
- STACK_FILE: "stack-8.6.5.yaml"
7481
<<: *defaults
7582

76-
ghc-8.8.3:
77-
environment:
78-
- STACK_FILE: "stack-8.8.3.yaml"
79-
<<: *defaults
80-
8183
ghc-8.8.4:
8284
environment:
8385
- STACK_FILE: "stack-8.8.4.yaml"
8486
<<: *defaults
8587

86-
ghc-8.10.2:
87-
environment:
88-
- STACK_FILE: "stack-8.10.2.yaml"
89-
<<: *defaults
90-
91-
ghc-8.10.3:
92-
environment:
93-
- STACK_FILE: "stack-8.10.3.yaml"
94-
<<: *defaults
95-
96-
ghc-8.10.4:
88+
ghc-8.10.6:
9789
environment:
98-
- STACK_FILE: "stack-8.10.4.yaml"
90+
- STACK_FILE: "stack-8.10.6.yaml"
9991
<<: *defaults
10092

101-
ghc-8.10.5:
93+
ghc-8.10.7:
10294
environment:
103-
- STACK_FILE: "stack-8.10.5.yaml"
95+
- STACK_FILE: "stack-8.10.7.yaml"
10496
<<: *defaults
10597

10698
ghc-9.0.1:
@@ -118,13 +110,9 @@ workflows:
118110
version: 2
119111
multiple-ghcs:
120112
jobs:
121-
- ghc-8.6.4
122113
- ghc-8.6.5
123-
- ghc-8.8.3
124114
- ghc-8.8.4
125-
- ghc-8.10.2
126-
- ghc-8.10.3
127-
- ghc-8.10.4
128-
- ghc-8.10.5
115+
- ghc-8.10.6
116+
- ghc-8.10.7
129117
- ghc-9.0.1
130118
- ghc-default

.github/ISSUE_TEMPLATE.md

Lines changed: 0 additions & 55 deletions
This file was deleted.

.github/ISSUE_TEMPLATE/bug_report.md

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
---
2+
name: Bug report
3+
about: Create a report to help us improve
4+
title: ''
5+
labels: 'status: needs triage, type: bug'
6+
assignees: ''
7+
8+
---
9+
10+
<!--
11+
Before opening an issue, please take a look at the [troubleshooting guide](https://haskell-language-server.readthedocs.io/en/latest/troubleshooting.html). This explains some common issues and will also help you to find the information that the issue template asks for.
12+
13+
When filing an issue, please fill out as much of the information below as you can. This helps us to debug your issue, but is not required!
14+
-->
15+
16+
### Your environment
17+
18+
Which OS do you use:
19+
<!-- Windows, MacOS, Ubuntu, ArchLinux, etc... -->
20+
Which lsp-client do you use:
21+
<!-- Neovim, emacs, VS Codium, etc... -->
22+
Describe your project (alternative: link to the project):
23+
<!-- stack.yaml, package.yaml, *.cabal files, cabal.project, hie.yaml -->
24+
25+
### Steps to reproduce
26+
<!-- Tell us how to reproduce this issue. -->
27+
28+
### Expected behaviour
29+
<!-- Tell us what should happen. -->
30+
31+
### Actual behaviour
32+
<!-- Tell us what happens instead. -->
33+
34+
### Include debug information
35+
Execute in the root of your project the command `haskell-language-server-wrapper --debug .` and paste the logs here:
36+
(if you are using the vscode extension check the executable location [here](https://github.com/haskell/vscode-haskell#downloaded-binaries))
37+
<details>
38+
<summary>
39+
Debug output:
40+
</summary>
41+
42+
```
43+
<paste your logs here>
44+
```
45+
</details>
46+
47+
Paste the logs from the lsp-client, you can check instructions about for VS Code [here](https://github.com/haskell/vscode-haskell#troubleshooting)
48+
49+
<details>
50+
<summary>
51+
LSP logs:
52+
</summary>
53+
54+
```
55+
<paste your logs here>
56+
```
57+
</details>
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
---
2+
name: Feature request
3+
about: Suggest an idea for this project
4+
title: ''
5+
labels: 'status: needs triage, type: enhancement'
6+
assignees: ''
7+
8+
---
9+
10+
**Is your feature request related to a problem? Please describe.**
11+
12+
<!-- A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] -->
13+
14+
**Describe the solution you'd like**
15+
16+
<!-- A clear and concise description of what you want to happen. -->
17+
18+
**Describe alternatives you've considered**
19+
20+
<!-- A clear and concise description of any alternative solutions or features you've considered. -->
21+
22+
**Additional context**
23+
24+
<!-- Add any other context or screenshots about the feature request here. -->

.github/dependabot.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
version: 2
2+
updates:
3+
4+
# NOTE: Dependabot official configuration documentation:
5+
# https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#package-ecosystem
6+
7+
# Maintain dependencies for internal GitHub Actions CI for pull requests
8+
- package-ecosystem: "github-actions"
9+
directory: "/"
10+
schedule:
11+
interval: "weekly"

.github/mergify.yml

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,15 @@
1+
queue_rules:
2+
- name: default
3+
# Mergify always respects the branch protection settings
4+
# so we can left empty mergify own ones
5+
conditions: []
6+
17
pull_request_rules:
2-
- actions:
3-
merge:
4-
strict: smart+fasttrack
5-
method: squash
6-
name: Automatically merge pull requests
8+
- name: Automatically merge pull requests
79
conditions:
810
- label=merge me
911
- '#approved-reviews-by>=1'
12+
actions:
13+
queue:
14+
method: squash
15+
name: default

0 commit comments

Comments
 (0)