Skip to content

Commit 99c8d62

Browse files
authored
Support ipywidgets 8 (QuantStack#99)
1 parent 90fc15c commit 99c8d62

File tree

26 files changed

+1543
-1379
lines changed

26 files changed

+1543
-1379
lines changed

.binder/environment.yml

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -51,16 +51,17 @@ dependencies:
5151
############################################################################
5252
### ipydrawio-docs-deps ###
5353

54+
- docutils >=0.18.1
5455
- jupyter-server-mathjax
5556
- myst-nb
5657
- pkginfo
57-
- pydata-sphinx-theme
58+
- pydata-sphinx-theme >=0.10.1,<0.11.0
5859
- pytest-check-links
59-
- sphinx !=4.4.0=*_0
60+
- sphinx >=5,<6
6061
- sphinx-jsonschema
6162
- sphinxext-rediraffe
6263
- pip:
63-
- jupyterlite ==0.1.0b11
64+
- jupyterlite ==0.1.0b12
6465

6566
### ipydrawio-docs-deps ###
6667

@@ -74,15 +75,16 @@ dependencies:
7475
- nodejs >=12,!=13.*,<15
7576
- python # this gets patched in ci
7677
# run
77-
- ipywidgets >=7.6,<8
78-
- jupyterlab >=3.4.4,<4.0.0a0
78+
- ipywidgets >=7.6,<9
79+
- jupyterlab >=3.4.5,<4.0.0a0
7980
- jupyterlab_widgets >=1
8081
- lxml
8182
- pillow
8283
- pypdf2
8384
- requests_cache
8485
- retrolab
8586
# building
87+
- flit >=3.7.1
8688
- pip
8789
- twine >=3.7.1
8890
- wheel
@@ -102,7 +104,7 @@ dependencies:
102104
- pytest-tornasync
103105
- pytest-xdist
104106
# acceptance testing
105-
- firefox =91
107+
- firefox =102
106108
- geckodriver >=0.28.0
107109
- robotframework >=4
108110
- robotframework-pabot

.github/environment-py37.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# extra packages for python 3.7
1+
# extra/pinned packages for python 3.7
22

33
# Copyright 2022 ipydrawio contributors
44
#
@@ -23,3 +23,5 @@ channels:
2323
dependencies:
2424
# for flake8, sigh
2525
- importlib-metadata <4.3
26+
# for legacy ipywidgets
27+
- ipywidgets <8

.github/environment.yml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,15 +28,16 @@ dependencies:
2828
- nodejs >=12,!=13.*,<15
2929
- python # this gets patched in ci
3030
# run
31-
- ipywidgets >=7.6,<8
32-
- jupyterlab >=3.4.4,<4.0.0a0
31+
- ipywidgets >=7.6,<9
32+
- jupyterlab >=3.4.5,<4.0.0a0
3333
- jupyterlab_widgets >=1
3434
- lxml
3535
- pillow
3636
- pypdf2
3737
- requests_cache
3838
- retrolab
3939
# building
40+
- flit >=3.7.1
4041
- pip
4142
- twine >=3.7.1
4243
- wheel
@@ -56,7 +57,7 @@ dependencies:
5657
- pytest-tornasync
5758
- pytest-xdist
5859
# acceptance testing
59-
- firefox =91
60+
- firefox =102
6061
- geckodriver >=0.28.0
6162
- robotframework >=4
6263
- robotframework-pabot

.github/pip-build.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
black
33
doit
44
flake8
5-
ipywidgets >=7.6,<8
5+
ipywidgets >=7.6,<9
66
isort >=5
77
jsonpointer
88
jupyterlab ==3.*

.github/workflows/ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ env:
3535

3636
# our stuff
3737
ATEST_RETRIES: '3'
38-
CACHE_EPOCH: '1'
38+
CACHE_EPOCH: '2'
3939
DOIT_N_BUILD: '-n4'
4040
DOIT_N_TEST: '-n4'
4141
CONDA_BUILDERER: mambabuild

CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,14 @@
44

55
### ipydrawio-widgets 1.2.1
66

7+
- add support for `ipywidgets` 8 [#98]
8+
79
### ipydrawio 1.2.1
810

911
#### @deathbeds/ipydrawio 1.2.1
1012

13+
- add support `@jupyter-widgets/jupyterlab-manager` 5 [#98]
14+
1115
#### @deathbeds/ipydrawio-notebook 1.2.1
1216

1317
#### @deathbeds/ipydrawio-webpack 20.2.100
@@ -20,6 +24,8 @@
2024

2125
#### @deathbeds/ipydrawio-pdf 1.2.1
2226

27+
[#98]: https://github.com/deathbeds/ipydrawio/issues/98
28+
2329
## Releases
2430

2531
### ipydrawio-widgets 1.2.0

atest/_Variables.robot

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -27,34 +27,41 @@ ${CMD PALETTE ITEM ACTIVE} css:#command-palette .lm-CommandPalette-
2727
${JLAB XP TOP} //div[@id='jp-top-panel']
2828
${JLAB XP MENU ITEM LABEL} //div[contains(@class, 'lm-Menu-itemLabel')]
2929
${JLAB XP MENU LABEL} //div[contains(@class, 'lm-MenuBar-itemLabel')]
30-
${JLAB XP DOCK TAB} xpath://div[contains(@class, 'lm-DockPanel-tabBar')]//li[contains(@class, 'lm-TabBar-tab')]
30+
${JLAB XP DOCK TAB}
31+
... xpath://div[contains(@class, 'lm-DockPanel-tabBar')]//li[contains(@class, 'lm-TabBar-tab')]
3132
${JLAB CSS VERSION} css:.jp-About-version
3233
${CSS DIALOG OK} css:.jp-Dialog .jp-mod-accept
33-
${MENU OPEN WITH} xpath://div[contains(@class, 'lm-Menu-itemLabel')][contains(text(), "Open With")]
34+
${MENU OPEN WITH}
35+
... xpath://div[contains(@class, 'lm-Menu-itemLabel')][contains(text(), "Open With")]
3436
# N is missing on purpose
35-
${MENU NOTEBOOK} xpath://li[@data-command="filebrowser:open"]//div[contains(@class, 'lm-Menu-itemLabel')][contains(., "otebook")]
37+
${MENU NOTEBOOK}
38+
... xpath://li[@data-command="filebrowser:open"]//div[contains(@class, 'lm-Menu-itemLabel')][contains(., "otebook")]
3639
${DIALOG WINDOW} css:.jp-Dialog
3740
${DIALOG INPUT} css:.jp-Input-Dialog input
3841
${DIALOG ACCEPT} css:button.jp-Dialog-button.jp-mod-accept
3942
# TODO: get ours
4043
# ${STATUSBAR} css:div.lsp-statusbar-item
4144
${MENU EDITOR} xpath://div[contains(@class, 'lm-Menu-itemLabel')][contains(., "Editor")]
42-
${MENU SETTINGS} xpath://div[contains(@class, 'lm-MenuBar-itemLabel')][contains(text(), "Settings")]
45+
${MENU SETTINGS}
46+
... xpath://div[contains(@class, 'lm-MenuBar-itemLabel')][contains(text(), "Settings")]
4347
${MENU RENAME} xpath://div[contains(@class, 'lm-Menu-itemLabel')][contains(., "ename")]
4448
# settings
4549
${DIO PLUGIN ID} @deathbeds/ipydrawio:plugin
4650
${DIO PLUGIN SETTINGS FILE} @deathbeds${/}ipydrawio${/}plugin.jupyterlab-settings
4751
${CSS USER SETTINGS} .jp-SettingsRawEditor-user
48-
${JLAB XP CLOSE SETTINGS} ${JLAB XP DOCK TAB}\[contains(., 'Settings')]/*[contains(@class, 'm-TabBar-tabCloseIcon')]
52+
${JLAB XP CLOSE SETTINGS}
53+
... ${JLAB XP DOCK TAB}\[contains(., 'Settings')]/*[contains(@class, 'm-TabBar-tabCloseIcon')]
4954
# launcher
5055
${XP LAUNCH TAB} ${JLAB XP DOCK TAB}//*[contains(text(), 'Launcher')]
5156
${CSS LAUNCHER} css:.jp-Launcher-body
5257
${CREATE A BLANK} Create a blank .dio file
5358
${CSS LAUNCH DIO} css:.jp-LauncherCard[title='${CREATE A BLANK}'] svg
54-
${CSS LAUNCH CUSTOM} css:.jp-LauncherCard[title='Create a diagram with customized formats, templates, and UI'] svg
59+
${CSS LAUNCH CUSTOM}
60+
... css:.jp-LauncherCard[title='Create a diagram with customized formats, templates, and UI'] svg
5561
# ipykernel 5 is "Python 3". ipykernel 6 is "Python 3 (ipykernel)"... but only works on python 3.7+
5662
# TODO: consider capturing this information as a tag
57-
${CSS LAUNCH IPYNB} css:.jp-LauncherCard[data-category='Notebook'][title^='Python 3'] .jp-LauncherCard-icon
63+
${CSS LAUNCH IPYNB}
64+
... css:.jp-LauncherCard[data-category='Notebook'][title^='Python 3'] .jp-LauncherCard-icon
5865
${CSS DIO READY} css:.jp-Diagram-ready
5966
${CSS DIO IFRAME} ${CSS DIO READY} iframe
6067
# drawio
@@ -74,7 +81,7 @@ ${JLAB CSS ACTIVE INPUT} ${JLAB CSS ACTIVE CELL} .CodeMirror
7481
${JLAB CSS ACTIVE OUTPUT CHILDREN} ${JLAB CSS ACTIVE CELL} .jp-OutputArea-child
7582
${JLAB CSS OUTPUT} .jp-OutputArea-output
7683
${JLAB CSS ACTIVE CELL MARKDOWN} ${JLAB CSS ACTIVE CELL} .jp-MarkdownOutput:not(.jp-mod-hidden)
77-
${JLAB CSS ACTIVE SIDEBAR} .jp-SideBar .p-TabBar-tab.p-mod-current
84+
${JLAB CSS ACTIVE SIDEBAR} .jp-SideBar .p-TabBar-tab.lm-mod-current
7885
${JLAB CSS BUSY KERNEL} .jp-Toolbar-kernelStatus.jp-FilledCircleIcon
7986
${JLAB CSS CMD INPUT} .p-CommandPalette-input
8087
${JLAB CSS CMD ITEM} .p-CommandPalette-item

atest/lab/Widget.robot

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ Duplicate Shape
7979
Click Element At Coordinates ${CSS DIO BG} 100 100
8080
FOR ${i} IN RANGE ${duplicates}
8181
Sleep 0.1s
82-
${els} = Get WebElements css:rect[width\="120"]
82+
${els} = Get WebElements css:rect[width\="120"][pointer-events="all"]:not([visibility="hidden"])
8383
Click Element ${els[-1]}
8484
Press Keys css:body ${ACCEL}+D
8585
END

atest/retro/_Keywords.robot

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,5 +39,5 @@ Open Retro Path
3939
Create a Diagram from Retro Tree
4040
Wait Until Page Contains Element ${CSS RETRO TREE DIO BTN}
4141
Click Element ${CSS RETRO TREE DIO BTN}
42-
Switch Window NEW
42+
Wait Until Keyword Succeeds 5x 5s Switch Window NEW
4343
Wait Until Keyword Succeeds 5x 5s Wait for a Diagram to be Ready

conda.recipe/meta.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ outputs:
5656
- pip
5757
- python >=3.7
5858
run:
59-
- ipywidgets >=7.6,<8
59+
- ipywidgets >=7.6,<9
6060
- python >=3.7
6161
test:
6262
imports:

0 commit comments

Comments
 (0)