Skip to content

Commit 148f868

Browse files
authored
Merge branch 'jupyter-lsp:master' into master
2 parents 9e61c2f + dd7c41b commit 148f868

File tree

145 files changed

+7123
-5762
lines changed

Some content is hidden

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

145 files changed

+7123
-5762
lines changed

.github/ISSUE_TEMPLATE/bug_report.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ https://jupyterlab.readthedocs.io/en/latest/getting_started/issue.html
3737
- Operating System and version:
3838
- Browser and version:
3939
- JupyterLab version:
40+
- Language server and version:
4041

4142
<details><summary>Required: installed server extensions</summary>
4243
<pre>
@@ -53,7 +54,7 @@ You may want to sanitize the paths in the output.
5354
</pre>
5455
</details>
5556

56-
<!--The more content you provide, the more we can help!-->
57+
<!--The more content you provide, the more we can help! Please fill in the below:-->
5758

5859
<details><summary>Troubleshoot Output</summary>
5960
<pre>

.github/workflows/job.test.yml

Lines changed: 69 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,19 @@ on:
55
branches:
66
- master
77
- 2.x
8+
- 3.x
89
pull_request:
910
branches:
1011
- master
1112
- 2.x
13+
- 3.x
1214
workflow_dispatch:
1315

16+
# TODO: might need to tweak `group`
17+
concurrency:
18+
group: ${{ github.ref }}
19+
cancel-in-progress: true
20+
1421
defaults:
1522
run:
1623
shell: bash -l {0}
@@ -21,22 +28,24 @@ env:
2128
PIP_DISABLE_PIP_VERSION_CHECK: 1
2229
PYTHONUNBUFFERED: 1
2330

31+
ATEST_PROCESSES: 2
2432
ATEST_RETRIES: 3
2533
JLPM_CMD: jlpm --ignore-optional --prefer-offline --frozen-lockfile
2634

2735
# Increase this value to reset all caches
28-
CACHE_EPOCH: 2
29-
JULIA_LANGSERVER: 3.2.0
36+
CACHE_EPOCH: 4
37+
JULIA_LANGSERVER: 4.1.0
3038

3139
jobs:
3240
lint:
3341
name: jstest/lint
34-
runs-on: ${{ matrix.os }}
42+
runs-on: ${{ matrix.os }}-latest
3543
strategy:
3644
matrix:
37-
os: [ubuntu-latest]
45+
os: [ubuntu]
3846
nodejs: ['>=14,<15.0.0a0']
39-
lab: ['>=3.0.0,<4.0.0a0']
47+
lab: ['>=3.1.0,<4.0.0a0']
48+
r: ['>=4']
4049
steps:
4150
- uses: actions/checkout@v2
4251

@@ -77,7 +86,7 @@ jobs:
7786
with:
7887
path: '**/node_modules'
7988
key: |
80-
${{ env.CACHE_EPOCH }}-${{ runner.os }}-node-lint-${{ hashFiles('yarn.lock', 'requirements/github-actions.yml') }}
89+
${{ env.CACHE_EPOCH }}-${{ runner.os }}-node-build-${{ hashFiles('yarn.lock', 'requirements/github-actions.yml') }}
8190
8291
- name: Cache yarn packages
8392
id: cache-yarn-packages
@@ -104,6 +113,9 @@ jobs:
104113
- name: Lint backend
105114
run: python scripts/lint.py
106115

116+
- name: 'Revert templated file (TODO: remove)'
117+
run: git checkout requirements/github-actions.yml
118+
107119
- name: Lint frontend
108120
run: jlpm lint:check
109121

@@ -112,12 +124,13 @@ jobs:
112124

113125
build:
114126
name: build
115-
runs-on: ${{ matrix.os }}
127+
runs-on: ${{ matrix.os }}-latest
116128
strategy:
117129
matrix:
118-
os: [ubuntu-latest]
130+
os: [ubuntu]
119131
nodejs: ['>=14,<15.0.0a0']
120-
lab: ['>=3.0.0,<4.0.0a0']
132+
lab: ['>=3.1.0,<4.0.0a0']
133+
r: ['>=4']
121134
steps:
122135
- uses: actions/checkout@v2
123136

@@ -204,35 +217,26 @@ jobs:
204217

205218
acceptance:
206219
runs-on: ${{ matrix.os }}-latest
207-
name: atest ${{ matrix.os }} py${{ matrix.python }}
220+
name: atest ${{ matrix.os }} py${{ matrix.python }} r${{ matrix.r }}
208221
needs: [build]
209222
strategy:
210223
# TODO: maybe turn back on
211224
fail-fast: false
212225
matrix:
213-
os: [ubuntu, macos, windows]
214-
python: [3.6, 3.7, 3.8]
215-
lab: ['>=3.0.0,<4.0.0a0']
226+
os: ['ubuntu', 'macos', 'windows']
227+
python: ['3.7', '3.10']
216228
include:
217-
# if using 3.6, use an old node
218-
- python: 3.6
229+
# if using 3.7, use newer node, etc...
230+
- python: '3.7'
219231
# Node 12 end-of-life: April 2022
220232
nodejs: '>=12,<13.0.0.a0'
221-
# if using 3.7, use newer node, etc...
222-
- python: 3.7
223-
# Node 14 end-of-life: April 2023
224-
nodejs: '>=14,<15.0.0.a0'
225-
- python: 3.8
226-
# TODO: switch to Node 16 once gets merged https://github.com/conda-forge/nodejs-feedstock/pull/189
227-
# Node 15 end-of-life: June 2021
228-
nodejs: '>=15,<16.0.0.a0'
229-
# TODO: remove when mambaforge just works on setup-miniconda
230-
- os: ubuntu
231-
mambaforge: Linux-x86_64.sh
232-
- os: macos
233-
mambaforge: MacOSX-x86_64.sh
234-
- os: windows
235-
mambaforge: Windows-x86_64.exe
233+
r: '<4'
234+
lab: '>=3.1.0,<3.2'
235+
- python: '3.10'
236+
# Node 16 end-of-life: April 2024
237+
nodejs: '>=16,<17.0.0.a0'
238+
r: '>=4'
239+
lab: '>=3.2.0,<4'
236240

237241
steps:
238242
- uses: actions/checkout@v2
@@ -341,6 +345,12 @@ jobs:
341345
- name: Run browser tests
342346
run: python scripts/atest.py --exclude expect:fail
343347

348+
- name: Find and remove empty files
349+
# https://github.com/actions/upload-artifact/issues/150
350+
run: find ./atest/output -empty -delete
351+
if: always()
352+
shell: bash
353+
344354
- name: Publish browser test output
345355
uses: actions/upload-artifact@v2
346356
with:
@@ -354,24 +364,34 @@ jobs:
354364
needs: [build, lint]
355365
strategy:
356366
fail-fast: false
367+
max-parallel: 3
357368
matrix:
358-
os: [ubuntu, macos, windows]
359-
python: ['3.6', '3.9', 'pypy3']
369+
os: ['ubuntu', 'macos', 'windows']
370+
python: ['3.7', '3.8', '3.9', '3.10', 'pypy-3.7']
360371
exclude:
361372
- os: windows
362-
python: pypy3
373+
python: pypy-3.7
363374
include:
364-
- python: '3.6'
365-
dist: 'jupyter*lsp*.tar.gz'
366-
- python: 'pypy3'
375+
- python: '3.7'
367376
dist: 'jupyter*lsp*.tar.gz'
377+
lab: '>=3.1,<3.2'
378+
- python: '3.8'
379+
dist: 'jupyter*lsp*.whl'
380+
lab: '>=3.1,<3.2'
368381
- python: '3.9'
382+
dist: 'jupyter*lsp*.tar.gz'
383+
lab: '>=3.2,<3.3'
384+
- python: '3.10'
369385
dist: 'jupyter*lsp*.whl'
370-
- os: windows
386+
lab: '>=3.2,<4'
387+
- python: 'pypy-3.7'
388+
dist: 'jupyter*lsp*.tar.gz'
389+
lab: '>=3.2,<3.3'
390+
- os: 'windows'
371391
py_cmd: python
372-
- os: macos
392+
- os: 'macos'
373393
py_cmd: python3
374-
- os: ubuntu
394+
- os: 'ubuntu'
375395
py_cmd: python
376396
steps:
377397
- name: Install Python
@@ -386,7 +406,7 @@ jobs:
386406
- name: Install the prerequisites
387407
run: ${{ matrix.py_cmd }} -m pip install pip wheel
388408
- name: Install the package
389-
run: cd dist && ${{ matrix.py_cmd }} -m pip install -vv ${{ matrix.dist }}
409+
run: cd dist && ${{ matrix.py_cmd }} -m pip install -vv ${{ matrix.dist }} 'jupyterlab${{ matrix.lab }}'
390410
- name: Validate environment
391411
run: |
392412
set -eux
@@ -401,16 +421,20 @@ jobs:
401421
jupyter server extension list 2>&1 | grep -ie "jupyter_lsp.*enabled" -
402422
403423
source:
404-
name: smoke source install ${{ matrix.os }}
424+
name: smoke source install ${{ matrix.os }} py${{ matrix.python }} lab${{ matrix.lab }}
405425
runs-on: ${{ matrix.os }}-latest
406426
needs: [build]
407427
strategy:
408428
fail-fast: false
409429
matrix:
410430
os: [ubuntu]
411-
python: ['3.6']
431+
python: ['3.7', '3.10']
412432
nodejs: ['14']
413-
lab: ['>=3.0.0,<4.0.0a0']
433+
include:
434+
- python: '3.7'
435+
lab: '>=3.1,<3.2'
436+
- python: '3.10'
437+
lab: '>=3.2,<4'
414438
steps:
415439
- name: Install Python
416440
uses: actions/setup-python@v2
@@ -420,13 +444,13 @@ jobs:
420444
- name: Setup Node
421445
uses: actions/setup-node@v2
422446
with:
423-
node-version: ${{matrix.nodejs}}
447+
node-version: ${{ matrix.nodejs }}
424448
- uses: actions/download-artifact@v2
425449
with:
426450
name: jupyterlab-lsp dist ${{ github.run_number }}
427451
path: ./dist
428452
- name: Install the prerequisites
429-
run: python -m pip install pip wheel
453+
run: python -m pip install --upgrade pip wheel setuptools
430454
- name: Install JupyterLab
431455
shell: bash -l {0}
432456
run: python -m pip install 'jupyterlab${{ matrix.lab }}'

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,13 +110,15 @@ node_modules
110110
*.tgz
111111

112112
atest/output/
113+
.pabotsuitenames
113114
junit.xml
114115
coverage/
115116
.vscode/
116117
_*.d.ts
117118
_*.ts
118119
_build
119120
.virtual_documents/
121+
.idea/
120122

121123
# Built labextensions
122-
python_packages/jupyterlab_lsp/jupyterlab_lsp/labextensions/
124+
python_packages/*/*/labextensions/

.readthedocs.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,11 @@ version: 2
33
sphinx:
44
configuration: docs/conf.py
55

6+
build:
7+
os: ubuntu-20.04
8+
tools:
9+
python: mambaforge-4.10
10+
611
conda:
712
environment: docs/rtd.yml
813

CHANGELOG.md

Lines changed: 92 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,96 @@
11
## Changelog
22

3+
### `@krassowski/jupyterlab-lsp 3.10.1` (2022-03-21)
4+
5+
- bug fixes:
6+
- fix navigation to files with names including characters which require encoding ([#758])
7+
- fix omissions in the main settings schema for correct rendering in JupyterLab 3.3 Settings Editor UI ([#779])
8+
- maintenance
9+
- make tests pass with new JupyterLab 3.3 ([#777])
10+
- pin r-base version to fix Binder ([#766])
11+
- pin node-gyp to fix CI on Windows ([#772])
12+
- pin pytest-flake8 to fix CI
13+
- update development/testing environment dependencies: urijs, typedoc, url-parse
14+
15+
[#758]: https://github.com/jupyter-lsp/jupyterlab-lsp/pull/758
16+
[#766]: https://github.com/jupyter-lsp/jupyterlab-lsp/pull/766
17+
[#772]: https://github.com/jupyter-lsp/jupyterlab-lsp/pull/772
18+
[#777]: https://github.com/jupyter-lsp/jupyterlab-lsp/pull/777
19+
[#779]: https://github.com/jupyter-lsp/jupyterlab-lsp/pull/779
20+
21+
### `@krassowski/jupyterlab-lsp 3.10.0` (2022-01-01)
22+
23+
- features:
24+
- enable pre-filtering of completion matches by default ([#735])
25+
- add support for diagnostic tags: Deprecated, Unnecessary ([#736], [#737])
26+
- bug fixes:
27+
- squash warnings and errors in web console ([#732])
28+
- fix signature blur and fix formatting when no arguments are present ([#734])
29+
- fixed with enabling of strict null checks:
30+
- previously changing kernels always led to restarting of LSP connection, even if the kernel language did not change; now the connection will be retained if possible
31+
- `markdownRenderer` is no longer implicitly required
32+
- diagnostics sorting with missing values for `source` and `severity` was improved and missing values will be consistently shown at the end
33+
- diagnostics placeholder was split into `Diagnostics are not available` and `No issues detected, great job!` which will now show up properly
34+
- maintenance:
35+
- enable strict null checks and other strict settings ([#733])
36+
- specify client capabilities in features instead of hard-coding them ([#738])
37+
- bump minimum required JupyterLab version to 3.1 (`>=3.1.0,<4.0.0a0`)
38+
39+
[#732]: https://github.com/jupyter-lsp/jupyterlab-lsp/pull/732
40+
[#733]: https://github.com/jupyter-lsp/jupyterlab-lsp/pull/733
41+
[#734]: https://github.com/jupyter-lsp/jupyterlab-lsp/pull/734
42+
[#735]: https://github.com/jupyter-lsp/jupyterlab-lsp/pull/735
43+
[#736]: https://github.com/jupyter-lsp/jupyterlab-lsp/pull/736
44+
[#737]: https://github.com/jupyter-lsp/jupyterlab-lsp/pull/737
45+
[#738]: https://github.com/jupyter-lsp/jupyterlab-lsp/pull/738
46+
47+
### `@krassowski/code-jumpers 1.2.0` (2022-01-01)
48+
49+
- maintenance:
50+
- updates to API with respect to `null`/`undefined` values in course strict null checks activation ([#733])
51+
52+
### `@krassowski/jupyterlab-lsp 3.9.3` (2021-12-19)
53+
54+
- bug fixes:
55+
- workaround upstream issue in merging translation ([#726], thanks @fcollonval)
56+
57+
[#726]: https://github.com/jupyter-lsp/jupyterlab-lsp/pull/726
58+
59+
### `@krassowski/jupyterlab-lsp 3.9.2` (2021-12-12)
60+
61+
- bug fixes:
62+
- prevent very long completion details text from extending the completer indefinitely ([#698])
63+
- correct status translations ([#700], thanks @fcollonval)
64+
- fix translations in status pop-up ([#703])
65+
- workaround issue causing file rename when opening external files by jumping to them ([#712], thanks @jepcor97)
66+
- fix sorting by "Line:Ch" and "Cell" in Diagnostics Panel ([#717])
67+
- fix header border missing when scrolling in Diagnostics Panel ([#717])
68+
- documentation improvements:
69+
- clarify that JupyterLab restart is needed after installation ([#714], thanks @3coins)
70+
71+
[#698]: https://github.com/jupyter-lsp/jupyterlab-lsp/pull/698
72+
[#700]: https://github.com/jupyter-lsp/jupyterlab-lsp/pull/700
73+
[#703]: https://github.com/jupyter-lsp/jupyterlab-lsp/pull/703
74+
[#712]: https://github.com/jupyter-lsp/jupyterlab-lsp/pull/712
75+
[#714]: https://github.com/jupyter-lsp/jupyterlab-lsp/pull/714
76+
[#717]: https://github.com/jupyter-lsp/jupyterlab-lsp/pull/717
77+
78+
### `@krassowski/completion-theme 3.2.0` (2021-12-12)
79+
80+
- features:
81+
- add `details-below` layout allowing to change the completer arrangement ([#698])
82+
83+
### `jupyter-lsp 1.5.1` (2021-12-12)
84+
85+
- documentation improvements:
86+
- document troubleshooting steps for `texlab` server([#702])
87+
- maintenance and upkeep:
88+
- migrate test configuration to `ServerApp` as needed ([#713])
89+
- address deprecation warnings ([#713])
90+
91+
[#702]: https://github.com/jupyter-lsp/jupyterlab-lsp/pull/702
92+
[#713]: https://github.com/jupyter-lsp/jupyterlab-lsp/pull/713
93+
394
### `@krassowski/jupyterlab-lsp 3.9.1` (2021-10-24)
495

596
- bug fixes:
@@ -11,7 +102,7 @@
11102

12103
- features:
13104
- add support for new `typescript-language-server` replacing `javascript-typescript-langserver`;
14-
despite the name both packages provide support for all four: JavaScrip, JSX, TypeScript and TSX;
105+
despite the name both packages provide support for all four: JavaScript, JSX, TypeScript and TSX;
15106
the old `javascript-typescript-langserver` can still be used, but it is no longer maintained
16107
and we will not be supported, and specs may be removed in the next major release ([#697]).
17108

0 commit comments

Comments
 (0)