Skip to content

Update the extension examples repo to use the latest extension template #284

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 66 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
66 commits
Select commit Hold shift + click to select a range
9c58806
Update cell-toolbar
cmarmo Jun 28, 2025
0c47124
Update clap-button
cmarmo Jun 28, 2025
5d686b0
Update codemirror-extension
cmarmo Jun 28, 2025
d2f6464
Update command-palette
cmarmo Jun 28, 2025
87f948d
Update commands
cmarmo Jun 28, 2025
ba359c3
Update completer
cmarmo Jun 28, 2025
5f68ca0
Update contentheader
cmarmo Jun 28, 2025
46181f1
Update context-menu
cmarmo Jun 28, 2025
62166e4
Update custom-log-console
cmarmo Jun 28, 2025
2a4f14b
Update datagrid
cmarmo Jun 28, 2025
fa3f21e
Update documents
cmarmo Jun 28, 2025
602dbec
Update hello-world
cmarmo Jun 28, 2025
1abcf6c
Update kernel-messaging
cmarmo Jun 28, 2025
8eb4da1
Update kernel-output
cmarmo Jun 28, 2025
976948f
Update launcher
cmarmo Jun 28, 2025
64264d0
Update log-messages
cmarmo Jun 28, 2025
d5827c6
Update main-menu
cmarmo Jun 28, 2025
7b4a29e
Update metadata-form
cmarmo Jun 28, 2025
8fbab43
Update mimerenderer
cmarmo Jun 28, 2025
0bfd93c
Update notifications
cmarmo Jun 28, 2025
862efac
Update react-widget
cmarmo Jun 28, 2025
fe9c20b
Update server-extension
cmarmo Jun 28, 2025
bd069e8
Update settings
cmarmo Jun 28, 2025
8d2be8a
Update shout-button-message
cmarmo Jun 28, 2025
21c37ae
Update signals
cmarmo Jun 28, 2025
45f453b
Update state
cmarmo Jun 28, 2025
c654a78
Update toolbar-button
cmarmo Jun 28, 2025
665b4fe
Update toparea-text-widget
cmarmo Jun 28, 2025
f94c371
Update widgets
cmarmo Jun 28, 2025
fcac492
Fix README.md
cmarmo Jun 28, 2025
7fe6dcc
Add license
cmarmo Jun 28, 2025
3e4d573
Add licences
cmarmo Jun 28, 2025
9ff2efe
Test for ci in personal repo
cmarmo Jun 29, 2025
f63a230
revert version, change artifact name
cmarmo Jun 29, 2025
fc94a33
Change name of the artifacts
cmarmo Jun 29, 2025
6832c4a
Try to fix cell-toolbar test
cmarmo Jun 29, 2025
36c01e7
Try to fix test
cmarmo Jun 30, 2025
07b6857
Enforce timeout
cmarmo Jun 30, 2025
4962866
Try to fix cell-toolbar test
cmarmo Jun 30, 2025
0a51032
Update locator for test to pass
cmarmo Jun 30, 2025
6bbbf3c
Fix for codemirror
cmarmo Jul 1, 2025
aa79dc5
Fix for codemirror second
cmarmo Jul 1, 2025
a9063de
Fix for custom-log-console
cmarmo Jul 1, 2025
5d4847b
Fix custom-log-console, move forward codemirror
cmarmo Jul 1, 2025
0b70887
Fix conf file and documents extension
cmarmo Jul 1, 2025
e6c19f8
Fix Hello world readme
cmarmo Jul 1, 2025
609aeb9
Fix main-menu readme
cmarmo Jul 1, 2025
fd26c48
Fix server readme
cmarmo Jul 1, 2025
fa5eb0e
Fix settings readme
cmarmo Jul 1, 2025
f102478
Fix settings readme again
cmarmo Jul 1, 2025
1db2269
Fix some failing tests
cmarmo Jul 1, 2025
6b19a2a
Fix link
cmarmo Jul 2, 2025
0a8ca9c
Update screenshots
cmarmo Jul 2, 2025
6ff42be
Fix link, update screenshots.
cmarmo Jul 2, 2025
0eebddb
Fix prettier
cmarmo Jul 2, 2025
0ab9db6
Sync
cmarmo Jul 2, 2025
d255ef3
Try to fix kernel-output
cmarmo Jul 2, 2025
6f945a0
Try again for kernel-output
cmarmo Jul 2, 2025
ffc0e99
Revert kernel output, fix toolbar-button
cmarmo Jul 3, 2025
5e78fcc
More fixes
cmarmo Aug 2, 2025
a623053
Update typescript dependencies
cmarmo Aug 5, 2025
f827f07
Merge branch 'test-for-update' into update-template
cmarmo Aug 5, 2025
1604272
Revert
cmarmo Aug 5, 2025
c5b9e57
Fix some new issues, update script with trust option
cmarmo Aug 5, 2025
a04fd4f
Merge branch 'test-for-update' into update-template
cmarmo Aug 5, 2025
f0b0f1b
Fix codemirror and toolbar-button
cmarmo Aug 11, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,7 @@ jobs:
if: steps.filter.outputs.extension == 'true' && startsWith(runner.os, 'Linux') && always()
uses: actions/upload-artifact@v4
with:
name: ui-test-output
name: ${{ matrix.example }}-ui-test-output
path: |
${{ matrix.example }}/ui-tests/test-results
- name: Uninstall extension
Expand Down
7 changes: 4 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,9 +46,10 @@

The goal of this repository is to show how to develop extensions for [JupyterLab](https://github.com/jupyterlab/jupyterlab), presented as short tutorial series.

**Quick start:**
- Install, build, and run the `hello-world` extension example in JupyterLab by copying the code below.
- This corresponds to the first three sections of the [hello-world extension tutorial](hello-world/README.md). Read these sections for additional details on what these commands are doing and how to use the JupyterLab extension template.
**Quick start:**

- Install, build, and run the `hello-world` extension example in JupyterLab by copying the code below.
- This corresponds to the first three sections of the [hello-world extension tutorial](hello-world/README.md). Read these sections for additional details on what these commands are doing and how to use the JupyterLab extension template.
- Continue with the tutorial at the [Modify the extension](hello-world/README.md#modify-the-extension) section, if desired.

```bash
Expand Down
2 changes: 1 addition & 1 deletion cell-toolbar/.copier-answers.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Changes here will be overwritten by Copier; NEVER EDIT MANUALLY
_commit: v4.2.4
_commit: v4.3.8
_src_path: https://github.com/jupyterlab/extension-template
author_email: ''
author_name: Project Jupyter Contributors
Expand Down
29 changes: 29 additions & 0 deletions cell-toolbar/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
BSD 3-Clause License

Copyright (c) 2025, Project Jupyter Contributors
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.

3. Neither the name of the copyright holder nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
5 changes: 3 additions & 2 deletions cell-toolbar/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
"files": [
"lib/**/*.{d.ts,eot,gif,html,jpg,js,js.map,json,png,svg,woff2,ttf}",
"style/**/*.{css,js,eot,gif,html,jpg,json,png,svg,woff2,ttf}",
"src/**/*.{ts,tsx}",
"schema/*.json"
],
"main": "lib/index.js",
Expand Down Expand Up @@ -73,7 +74,7 @@
"eslint-config-prettier": "^8.8.0",
"eslint-plugin-prettier": "^5.0.0",
"jest": "^29.2.0",
"npm-run-all": "^4.1.5",
"npm-run-all2": "^7.0.1",
"prettier": "^3.0.0",
"rimraf": "^5.0.1",
"source-map-loader": "^1.0.2",
Expand All @@ -83,7 +84,7 @@
"stylelint-config-standard": "^34.0.0",
"stylelint-csstree-validator": "^3.0.0",
"stylelint-prettier": "^4.0.0",
"typescript": "~5.0.2",
"typescript": "~5.8.0",
"yjs": "^13.5.0"
},
"sideEffects": [
Expand Down
8 changes: 4 additions & 4 deletions cell-toolbar/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ build-backend = "hatchling.build"
[project]
name = "jupyterlab_examples_cell_toolbar"
readme = "README.md"
license = {text = "BSD-3-Clause License"}
requires-python = ">=3.8"
license = { file = "LICENSE" }
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CI is now failing with:

  OSError: License file does not exist: LICENSE

Probably was generated by template but not added with git add

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you @krassowski !
I ran again the copier update: the LICENSE files quickly appeared in the explorer of my codium then disappeared.
I don't know what happened exactly, as when creating an extension for the first time with the latest template the LICENSE file is there.
Anyway I have manually added all the LICENSE files.

requires-python = ">=3.9"
classifiers = [
"Framework :: Jupyter",
"Framework :: Jupyter :: JupyterLab",
Expand All @@ -16,11 +16,11 @@ classifiers = [
"License :: OSI Approved :: BSD License",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
]
dependencies = [
]
Expand All @@ -30,7 +30,7 @@ dynamic = ["version", "description", "authors", "urls", "keywords"]
source = "nodejs"

[tool.hatch.metadata.hooks.nodejs]
fields = ["description", "authors", "urls"]
fields = ["description", "authors", "urls", "keywords"]

[tool.hatch.build.targets.sdist]
artifacts = ["jupyterlab_examples_cell_toolbar/labextension"]
Expand Down
4 changes: 3 additions & 1 deletion cell-toolbar/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
"esModuleInterop": true,
"incremental": true,
"jsx": "react",
"lib": ["DOM", "ES2018", "ES2020.Intl"],
"module": "esnext",
"moduleResolution": "node",
"noEmitOnError": true,
Expand All @@ -17,7 +18,8 @@
"rootDir": "src",
"strict": true,
"strictNullChecks": true,
"target": "ES2018"
"target": "ES2018",
"types": ["jest"]
},
"include": ["src/*"]
}
2 changes: 1 addition & 1 deletion cell-toolbar/ui-tests/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ in [jupyter_server_test_config.py](./jupyter_server_test_config.py).

The default configuration will produce video for failing tests and an HTML report.

> There is a new experimental UI mode that you may fall in love with; see [that video](https://www.youtube.com/watch?v=jF0yA-JLQW0).
> There is a UI mode that you may like; see [that video](https://www.youtube.com/watch?v=jF0yA-JLQW0).

## Run the tests

Expand Down
4 changes: 2 additions & 2 deletions cell-toolbar/ui-tests/tests/cell_toolbar.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ test('should add buttons on code cell and markdown cell', async ({ page }) => {
await page.waitForSelector('text=| Idle');

const RUN_CODE =
'.jp-cell-toolbar button[data-command="toolbar-button:run-code-cell"]';
'.jp-cell-toolbar jp-button[data-command="toolbar-button:run-code-cell"]';
const RENDER_MD =
'.jp-cell-toolbar button[data-command="toolbar-button:render-markdown-cell"]';
'.jp-cell-toolbar jp-button[data-command="toolbar-button:render-markdown-cell"]';

await page.notebook.setCell(0, 'code', 'print("Hello, JupyterLab")');
await expect(page.locator(RUN_CODE)).toBeVisible();
Expand Down
2 changes: 1 addition & 1 deletion clap-button-message/.copier-answers.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Changes here will be overwritten by Copier; NEVER EDIT MANUALLY
_commit: v4.2.4
_commit: v4.3.8
_src_path: https://github.com/jupyterlab/extension-template
author_email: ''
author_name: Project Jupyter Contributors
Expand Down
29 changes: 29 additions & 0 deletions clap-button-message/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
BSD 3-Clause License

Copyright (c) 2025, Project Jupyter Contributors
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.

3. Neither the name of the copyright holder nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
8 changes: 5 additions & 3 deletions clap-button-message/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,8 @@
"author": "Project Jupyter Contributors",
"files": [
"lib/**/*.{d.ts,eot,gif,html,jpg,js,js.map,json,png,svg,woff2,ttf}",
"style/**/*.{css,js,eot,gif,html,jpg,json,png,svg,woff2,ttf}"
"style/**/*.{css,js,eot,gif,html,jpg,json,png,svg,woff2,ttf}",
"src/**/*.{ts,tsx}"
],
"main": "lib/index.js",
"types": "lib/index.d.ts",
Expand Down Expand Up @@ -67,7 +68,8 @@
"eslint": "^8.36.0",
"eslint-config-prettier": "^8.8.0",
"eslint-plugin-prettier": "^5.0.0",
"npm-run-all": "^4.1.5",
"jest": "^29.2.0",
"npm-run-all2": "^7.0.1",
"prettier": "^3.0.0",
"rimraf": "^5.0.1",
"source-map-loader": "^1.0.2",
Expand All @@ -77,7 +79,7 @@
"stylelint-config-standard": "^34.0.0",
"stylelint-csstree-validator": "^3.0.0",
"stylelint-prettier": "^4.0.0",
"typescript": "~5.0.2",
"typescript": "~5.8.0",
"yjs": "^13.5.0"
},
"sideEffects": [
Expand Down
8 changes: 4 additions & 4 deletions clap-button-message/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ build-backend = "hatchling.build"
[project]
name = "jupyterlab_examples_shout_button"
readme = "README.md"
license = { text = "BSD-3-Clause License" }
requires-python = ">=3.8"
license = { file = "LICENSE" }
requires-python = ">=3.9"
classifiers = [
"Framework :: Jupyter",
"Framework :: Jupyter :: JupyterLab",
Expand All @@ -16,11 +16,11 @@ classifiers = [
"License :: OSI Approved :: BSD License",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
]
dependencies = [
]
Expand All @@ -30,7 +30,7 @@ dynamic = ["version", "description", "authors", "urls", "keywords"]
source = "nodejs"

[tool.hatch.metadata.hooks.nodejs]
fields = ["description", "authors", "urls"]
fields = ["description", "authors", "urls", "keywords"]

[tool.hatch.build.targets.sdist]
artifacts = ["jupyterlab_examples_shout_button/labextension"]
Expand Down
4 changes: 3 additions & 1 deletion clap-button-message/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
"esModuleInterop": true,
"incremental": true,
"jsx": "react",
"lib": ["DOM", "ES2018", "ES2020.Intl"],
"module": "esnext",
"moduleResolution": "node",
"noEmitOnError": true,
Expand All @@ -17,7 +18,8 @@
"rootDir": "src",
"strict": true,
"strictNullChecks": true,
"target": "ES2018"
"target": "ES2018",
"types": ["jest"]
},
"include": ["src/*"]
}
2 changes: 1 addition & 1 deletion clap-button-message/ui-tests/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ in [jupyter_server_test_config.py](./jupyter_server_test_config.py).

The default configuration will produce video for failing tests and an HTML report.

> There is a new experimental UI mode that you may fall in love with; see [that video](https://www.youtube.com/watch?v=jF0yA-JLQW0).
> There is a UI mode that you may like; see [that video](https://www.youtube.com/watch?v=jF0yA-JLQW0).

## Run the tests

Expand Down
2 changes: 1 addition & 1 deletion codemirror-extension/.copier-answers.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Changes here will be overwritten by Copier; NEVER EDIT MANUALLY
_commit: v4.2.4
_commit: v4.3.8
_src_path: gh:jupyterlab/extension-template
author_email: ''
author_name: Project Jupyter Contributors
Expand Down
29 changes: 29 additions & 0 deletions codemirror-extension/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
BSD 3-Clause License

Copyright (c) 2025, Project Jupyter Contributors
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.

3. Neither the name of the copyright holder nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
7 changes: 4 additions & 3 deletions codemirror-extension/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,8 @@
"author": "Project Jupyter Contributors",
"files": [
"lib/**/*.{d.ts,eot,gif,html,jpg,js,js.map,json,png,svg,woff2,ttf}",
"style/**/*.{css,js,eot,gif,html,jpg,json,png,svg,woff2,ttf}"
"style/**/*.{css,js,eot,gif,html,jpg,json,png,svg,woff2,ttf}",
"src/**/*.{ts,tsx}"
],
"main": "lib/index.js",
"types": "lib/index.d.ts",
Expand Down Expand Up @@ -71,7 +72,7 @@
"eslint-config-prettier": "^8.8.0",
"eslint-plugin-prettier": "^5.0.0",
"jest": "^29.2.0",
"npm-run-all": "^4.1.5",
"npm-run-all2": "^7.0.1",
"prettier": "^3.0.0",
"rimraf": "^5.0.1",
"source-map-loader": "^1.0.2",
Expand All @@ -81,7 +82,7 @@
"stylelint-config-standard": "^34.0.0",
"stylelint-csstree-validator": "^3.0.0",
"stylelint-prettier": "^4.0.0",
"typescript": "~5.0.2",
"typescript": "~5.8.0",
"yjs": "^13.5.0"
},
"sideEffects": [
Expand Down
8 changes: 4 additions & 4 deletions codemirror-extension/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ build-backend = "hatchling.build"
[project]
name = "jupyterlab_examples_codemirror_extension"
readme = "README.md"
license = { text = "BSD-3-Clause License" }
requires-python = ">=3.8"
license = { file = "LICENSE" }
requires-python = ">=3.9"
classifiers = [
"Framework :: Jupyter",
"Framework :: Jupyter :: JupyterLab",
Expand All @@ -16,11 +16,11 @@ classifiers = [
"License :: OSI Approved :: BSD License",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
]
dependencies = [
]
Expand All @@ -30,7 +30,7 @@ dynamic = ["version", "description", "authors", "urls", "keywords"]
source = "nodejs"

[tool.hatch.metadata.hooks.nodejs]
fields = ["description", "authors", "urls"]
fields = ["description", "authors", "urls", "keywords"]

[tool.hatch.build.targets.sdist]
artifacts = ["jupyterlab_examples_codemirror_extension/labextension"]
Expand Down
4 changes: 3 additions & 1 deletion codemirror-extension/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
"esModuleInterop": true,
"incremental": true,
"jsx": "react",
"lib": ["DOM", "ES2018", "ES2020.Intl"],
"module": "esnext",
"moduleResolution": "node",
"noEmitOnError": true,
Expand All @@ -17,7 +18,8 @@
"rootDir": "src",
"strict": true,
"strictNullChecks": true,
"target": "ES2018"
"target": "ES2018",
"types": ["jest"]
},
"include": ["src/*"]
}
Loading
Loading