arrayview 0.2.4__tar.gz → 0.3.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {arrayview-0.2.4 → arrayview-0.3.0}/.gitignore +2 -1
- {arrayview-0.2.4 → arrayview-0.3.0}/PKG-INFO +26 -1
- {arrayview-0.2.4 → arrayview-0.3.0}/README.md +19 -0
- {arrayview-0.2.4 → arrayview-0.3.0}/pyproject.toml +25 -1
- arrayview-0.3.0/src/arrayview/_app.py +1738 -0
- {arrayview-0.2.4 → arrayview-0.3.0}/src/arrayview/_shell.html +5 -1
- {arrayview-0.2.4 → arrayview-0.3.0}/src/arrayview/_viewer.html +444 -83
- arrayview-0.3.0/tests/conftest.py +125 -0
- arrayview-0.3.0/tests/test_api.py +378 -0
- arrayview-0.3.0/tests/test_browser.py +350 -0
- {arrayview-0.2.4 → arrayview-0.3.0}/uv.lock +375 -1
- arrayview-0.2.4/src/arrayview/_app.py +0 -948
- {arrayview-0.2.4 → arrayview-0.3.0}/.github/workflows/python-publish.yml +0 -0
- {arrayview-0.2.4 → arrayview-0.3.0}/.python-version +0 -0
- {arrayview-0.2.4 → arrayview-0.3.0}/LICENSE +0 -0
- {arrayview-0.2.4 → arrayview-0.3.0}/src/arrayview/__init__.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: arrayview
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.3.0
|
|
4
4
|
Summary: Fast multi-dimensional array viewer
|
|
5
5
|
Project-URL: Home, https://github.com/oscarvanderheide/arrayview
|
|
6
6
|
Project-URL: Source, https://github.com/oscarvanderheide/arrayview
|
|
@@ -15,12 +15,18 @@ Classifier: Programming Language :: Python :: 3 :: Only
|
|
|
15
15
|
Classifier: Programming Language :: Python :: 3.12
|
|
16
16
|
Requires-Python: >=3.12
|
|
17
17
|
Requires-Dist: fastapi>=0.129.0
|
|
18
|
+
Requires-Dist: h5py>=3.0
|
|
18
19
|
Requires-Dist: matplotlib>=3.9.0
|
|
19
20
|
Requires-Dist: nibabel>=5.3.3
|
|
20
21
|
Requires-Dist: numpy>=2.4.2
|
|
21
22
|
Requires-Dist: pillow>=12.1.1
|
|
23
|
+
Requires-Dist: pyqt5>=5.15; sys_platform == 'linux'
|
|
24
|
+
Requires-Dist: pyqtwebengine>=5.15; sys_platform == 'linux'
|
|
22
25
|
Requires-Dist: pywebview>=6.1
|
|
23
26
|
Requires-Dist: qmricolors>=0.1.2
|
|
27
|
+
Requires-Dist: qtpy>=2.0; sys_platform == 'linux'
|
|
28
|
+
Requires-Dist: scipy>=1.10
|
|
29
|
+
Requires-Dist: tifffile>=2023.1.1
|
|
24
30
|
Requires-Dist: uvicorn>=0.41.0
|
|
25
31
|
Requires-Dist: websockets>=14.0
|
|
26
32
|
Requires-Dist: zarr>=2.17
|
|
@@ -52,3 +58,22 @@ import numpy as np
|
|
|
52
58
|
np.random.rand(256,256,32,2)
|
|
53
59
|
view(x)
|
|
54
60
|
```
|
|
61
|
+
|
|
62
|
+
## Development
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
git clone https://github.com/oscarvanderheide/arrayview
|
|
66
|
+
cd arrayview
|
|
67
|
+
uv sync --group test
|
|
68
|
+
uv run playwright install chromium
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Run the tests:
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
uv run pytest tests/ # all (API + browser, ~100s)
|
|
75
|
+
uv run pytest tests/test_api.py # HTTP layer only (~40s)
|
|
76
|
+
uv run pytest tests/test_browser.py # Playwright/Chromium only (~60s)
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
Visual regression baselines live in `tests/snapshots/`. Delete a file there to reset its baseline.
|
|
@@ -24,3 +24,22 @@ import numpy as np
|
|
|
24
24
|
np.random.rand(256,256,32,2)
|
|
25
25
|
view(x)
|
|
26
26
|
```
|
|
27
|
+
|
|
28
|
+
## Development
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
git clone https://github.com/oscarvanderheide/arrayview
|
|
32
|
+
cd arrayview
|
|
33
|
+
uv sync --group test
|
|
34
|
+
uv run playwright install chromium
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
Run the tests:
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
uv run pytest tests/ # all (API + browser, ~100s)
|
|
41
|
+
uv run pytest tests/test_api.py # HTTP layer only (~40s)
|
|
42
|
+
uv run pytest tests/test_browser.py # Playwright/Chromium only (~60s)
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Visual regression baselines live in `tests/snapshots/`. Delete a file there to reset its baseline.
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "arrayview"
|
|
7
|
-
version = "0.
|
|
7
|
+
version = "0.3.0"
|
|
8
8
|
description = "Fast multi-dimensional array viewer"
|
|
9
9
|
readme = { file = "README.md", content-type = "text/markdown" }
|
|
10
10
|
requires-python = ">=3.12"
|
|
@@ -21,12 +21,18 @@ keywords = ["npy", "viewer", "mri", "array", "visualization"]
|
|
|
21
21
|
urls = { "Home" = "https://github.com/oscarvanderheide/arrayview", "Source" = "https://github.com/oscarvanderheide/arrayview" }
|
|
22
22
|
dependencies = [
|
|
23
23
|
"fastapi>=0.129.0",
|
|
24
|
+
"h5py>=3.0",
|
|
24
25
|
"matplotlib>=3.9.0",
|
|
25
26
|
"nibabel>=5.3.3",
|
|
26
27
|
"numpy>=2.4.2",
|
|
27
28
|
"pillow>=12.1.1",
|
|
28
29
|
"pywebview>=6.1",
|
|
30
|
+
"PyQt5>=5.15; sys_platform == 'linux'",
|
|
31
|
+
"PyQtWebEngine>=5.15; sys_platform == 'linux'",
|
|
32
|
+
"qtpy>=2.0; sys_platform == 'linux'",
|
|
29
33
|
"qmricolors>=0.1.2",
|
|
34
|
+
"scipy>=1.10",
|
|
35
|
+
"tifffile>=2023.1.1",
|
|
30
36
|
"uvicorn>=0.41.0",
|
|
31
37
|
"websockets>=14.0",
|
|
32
38
|
"zarr>=2.17",
|
|
@@ -46,3 +52,21 @@ dev = [
|
|
|
46
52
|
"ipykernel>=7.2.0",
|
|
47
53
|
"twine>=6.2.0",
|
|
48
54
|
]
|
|
55
|
+
test = [
|
|
56
|
+
"pytest>=8.0",
|
|
57
|
+
"httpx>=0.27",
|
|
58
|
+
"pytest-playwright>=0.5",
|
|
59
|
+
"pillow>=12.1.1",
|
|
60
|
+
]
|
|
61
|
+
|
|
62
|
+
[tool.pytest.ini_options]
|
|
63
|
+
testpaths = ["tests"]
|
|
64
|
+
markers = [
|
|
65
|
+
"browser: marks tests that require a real browser (playwright)",
|
|
66
|
+
]
|
|
67
|
+
filterwarnings = [
|
|
68
|
+
# uvicorn 0.41 uses the deprecated websockets.legacy API (websockets 14+)
|
|
69
|
+
# — upstream issue, nothing we can fix
|
|
70
|
+
"ignore::DeprecationWarning:websockets",
|
|
71
|
+
"ignore::DeprecationWarning:uvicorn",
|
|
72
|
+
]
|