PAROS 2.0.0__tar.gz → 2.1.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.
- {paros-2.0.0 → paros-2.1.0}/.github/workflows/ci.yml +22 -8
- {paros-2.0.0 → paros-2.1.0}/.github/workflows/release.yml +8 -8
- paros-2.1.0/CODEOWNERS +1 -0
- {paros-2.0.0 → paros-2.1.0}/PAROS/eyephantom.py +5 -4
- {paros-2.0.0 → paros-2.1.0}/PAROS/fundscale.py +288 -178
- {paros-2.0.0 → paros-2.1.0}/PKG-INFO +45 -11
- paros-2.1.0/README.md +93 -0
- paros-2.1.0/docs/refraction-and-vergence.md +34 -0
- paros-2.1.0/docs/telecentric-camera.md +56 -0
- {paros-2.0.0 → paros-2.1.0}/examples/calculate_ocular_magnification.ipynb +7 -3
- {paros-2.0.0 → paros-2.1.0}/examples/fundus_camera_calibration.ipynb +6 -7
- {paros-2.0.0 → paros-2.1.0}/pyproject.toml +22 -6
- paros-2.1.0/renovate.json +22 -0
- paros-2.1.0/tests/__init__.py +0 -0
- paros-2.1.0/tests/test_fundscale.py +47 -0
- {paros-2.0.0 → paros-2.1.0}/uv.lock +44 -4
- paros-2.0.0/README.md +0 -60
- {paros-2.0.0 → paros-2.1.0}/.github/assets/screenshot.png +0 -0
- {paros-2.0.0 → paros-2.1.0}/.gitignore +0 -0
- {paros-2.0.0 → paros-2.1.0}/CITATION.cff +0 -0
- {paros-2.0.0 → paros-2.1.0}/CONTRIBUTING.md +0 -0
- {paros-2.0.0 → paros-2.1.0}/LICENSE +0 -0
- {paros-2.0.0 → paros-2.1.0}/PAROS/__init__.py +0 -0
- {paros-2.0.0 → paros-2.1.0}/PAROS/data/__init__.py +0 -0
- {paros-2.0.0 → paros-2.1.0}/PAROS/data/calibration/Topcon/TRC_50DX.csv +0 -0
- {paros-2.0.0 → paros-2.1.0}/PAROS/data/calibration/Topcon/TRC_50IX.csv +0 -0
- {paros-2.0.0 → paros-2.1.0}/PAROS/data/calibration/__init__.py +0 -0
- {paros-2.0.0 → paros-2.1.0}/PAROS/data/lenses/__init__.py +0 -0
- {paros-2.0.0 → paros-2.1.0}/PAROS/data/lenses/phantom.csv +0 -0
- {paros-2.0.0 → paros-2.1.0}/ruff_defaults.toml +0 -0
|
@@ -8,12 +8,12 @@ jobs:
|
|
|
8
8
|
runs-on: ubuntu-latest
|
|
9
9
|
strategy:
|
|
10
10
|
matrix:
|
|
11
|
-
python: &python-versions ["3.10", "3.11", "3.12"]
|
|
11
|
+
python: &python-versions ["3.10", "3.11", "3.12", "3.13", "3.14"]
|
|
12
12
|
steps:
|
|
13
|
-
- uses: actions/checkout@
|
|
13
|
+
- uses: actions/checkout@v7
|
|
14
14
|
- name: Set up uv
|
|
15
15
|
id: setup-uv
|
|
16
|
-
uses: astral-sh/setup-uv@
|
|
16
|
+
uses: astral-sh/setup-uv@v10.3.3
|
|
17
17
|
- name: Build PAROS
|
|
18
18
|
run: uvx --python ${{ matrix.python }} hatch build
|
|
19
19
|
|
|
@@ -21,13 +21,27 @@ jobs:
|
|
|
21
21
|
name: Format and lint
|
|
22
22
|
runs-on: ubuntu-latest
|
|
23
23
|
steps:
|
|
24
|
-
- uses: actions/checkout@
|
|
24
|
+
- uses: actions/checkout@v7
|
|
25
25
|
- name: Set up uv
|
|
26
26
|
id: setup-uv
|
|
27
|
-
uses: astral-sh/setup-uv@
|
|
27
|
+
uses: astral-sh/setup-uv@v10.3.3
|
|
28
28
|
- name: Format and lint
|
|
29
|
-
run: uvx hatch
|
|
29
|
+
run: uvx hatch check
|
|
30
30
|
|
|
31
|
+
test:
|
|
32
|
+
name: Run tests
|
|
33
|
+
runs-on: ubuntu-latest
|
|
34
|
+
strategy:
|
|
35
|
+
matrix:
|
|
36
|
+
python: *python-versions
|
|
37
|
+
steps:
|
|
38
|
+
- uses: actions/checkout@v7
|
|
39
|
+
- name: Set up uv
|
|
40
|
+
id: setup-uv
|
|
41
|
+
uses: astral-sh/setup-uv@v10.3.3
|
|
42
|
+
- name: Run tests
|
|
43
|
+
run: uvx --python ${{ matrix.python }} hatch test
|
|
44
|
+
|
|
31
45
|
jupyter:
|
|
32
46
|
name: Test Jupyter notebooks
|
|
33
47
|
runs-on: ubuntu-latest
|
|
@@ -35,9 +49,9 @@ jobs:
|
|
|
35
49
|
matrix:
|
|
36
50
|
python: *python-versions
|
|
37
51
|
steps:
|
|
38
|
-
- uses: actions/checkout@
|
|
52
|
+
- uses: actions/checkout@v7
|
|
39
53
|
- name: Set up uv
|
|
40
54
|
id: setup-uv
|
|
41
|
-
uses: astral-sh/setup-uv@
|
|
55
|
+
uses: astral-sh/setup-uv@v10.3.3
|
|
42
56
|
- name: Format and lint
|
|
43
57
|
run: uvx --python ${{ matrix.python }} hatch run jupyter:run-all
|
|
@@ -15,14 +15,14 @@ jobs:
|
|
|
15
15
|
contents: read
|
|
16
16
|
|
|
17
17
|
steps:
|
|
18
|
-
- uses: actions/checkout@
|
|
18
|
+
- uses: actions/checkout@v7
|
|
19
19
|
- name: Set up uv
|
|
20
20
|
id: setup-uv
|
|
21
|
-
uses: astral-sh/setup-uv@
|
|
21
|
+
uses: astral-sh/setup-uv@v10.3.3
|
|
22
22
|
- name: Build package
|
|
23
23
|
run: uv build
|
|
24
24
|
- name: Upload dist
|
|
25
|
-
uses: actions/upload-artifact@
|
|
25
|
+
uses: actions/upload-artifact@v7
|
|
26
26
|
with:
|
|
27
27
|
name: paros_dist
|
|
28
28
|
path: "dist/"
|
|
@@ -38,13 +38,13 @@ jobs:
|
|
|
38
38
|
|
|
39
39
|
steps:
|
|
40
40
|
- name: Download dist
|
|
41
|
-
uses: actions/download-artifact@
|
|
41
|
+
uses: actions/download-artifact@v8
|
|
42
42
|
with:
|
|
43
43
|
name: paros_dist
|
|
44
44
|
path: dist
|
|
45
45
|
- name: Set up uv
|
|
46
46
|
id: setup-uv
|
|
47
|
-
uses: astral-sh/setup-uv@
|
|
47
|
+
uses: astral-sh/setup-uv@v10.3.3
|
|
48
48
|
- name: Publish package
|
|
49
49
|
run: uv publish
|
|
50
50
|
|
|
@@ -59,18 +59,18 @@ jobs:
|
|
|
59
59
|
|
|
60
60
|
steps:
|
|
61
61
|
- name: Download dist
|
|
62
|
-
uses: actions/download-artifact@
|
|
62
|
+
uses: actions/download-artifact@v8
|
|
63
63
|
with:
|
|
64
64
|
name: paros_dist
|
|
65
65
|
path: dist
|
|
66
66
|
- name: Upload wheels to GitHub release
|
|
67
|
-
uses: svenstaro/upload-release-action@2.11.
|
|
67
|
+
uses: svenstaro/upload-release-action@2.11.5
|
|
68
68
|
with:
|
|
69
69
|
tag: ${{ github.ref }}
|
|
70
70
|
file: "dist/*.whl"
|
|
71
71
|
file_glob: true
|
|
72
72
|
- name: Upload dist to GitHub release
|
|
73
|
-
uses: svenstaro/upload-release-action@2.11.
|
|
73
|
+
uses: svenstaro/upload-release-action@2.11.5
|
|
74
74
|
with:
|
|
75
75
|
tag: ${{ github.ref }}
|
|
76
76
|
file: "dist/*.tar.gz"
|
paros-2.1.0/CODEOWNERS
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
* @MREYE-LUMC/maintainers @jwmbeenakker @ljpors
|
|
@@ -8,13 +8,14 @@ This module can be used in conjunction with `PAROS.fundscale` to calculate the c
|
|
|
8
8
|
|
|
9
9
|
from __future__ import annotations
|
|
10
10
|
|
|
11
|
-
from typing import Literal
|
|
12
|
-
|
|
13
|
-
import pandas as pd
|
|
14
|
-
import sympy as sp
|
|
11
|
+
from typing import TYPE_CHECKING, Literal
|
|
15
12
|
|
|
16
13
|
from PAROS.fundscale import spherical_interface, uniform_medium
|
|
17
14
|
|
|
15
|
+
if TYPE_CHECKING:
|
|
16
|
+
import pandas as pd
|
|
17
|
+
import sympy as sp
|
|
18
|
+
|
|
18
19
|
|
|
19
20
|
class Lens:
|
|
20
21
|
"""Ray transfer model of a lens."""
|