transformnd 0.9.0__tar.gz → 0.9.2__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.
Files changed (32) hide show
  1. {transformnd-0.9.0 → transformnd-0.9.2}/PKG-INFO +1 -5
  2. {transformnd-0.9.0 → transformnd-0.9.2}/README.md +0 -4
  3. {transformnd-0.9.0 → transformnd-0.9.2}/pyproject.toml +21 -19
  4. {transformnd-0.9.0 → transformnd-0.9.2}/pyproject.toml.orig +16 -8
  5. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/base.py +3 -1
  6. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/spaced.py +1 -1
  7. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/__init__.py +0 -0
  8. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/adapters/__init__.py +0 -0
  9. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/adapters/base.py +0 -0
  10. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/adapters/bounding_box.py +0 -0
  11. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/adapters/pandas.py +0 -0
  12. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/adapters/polars.py +0 -0
  13. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/adapters/shapely.py +0 -0
  14. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/extents/__init__.py +0 -0
  15. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/extents/base.py +0 -0
  16. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/extents/bounding_box.py +0 -0
  17. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/graph.py +0 -0
  18. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/py.typed +0 -0
  19. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/transforms/__init__.py +0 -0
  20. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/transforms/affine.py +0 -0
  21. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/transforms/bijection.py +0 -0
  22. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/transforms/by_dimension.py +0 -0
  23. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/transforms/grid.py +0 -0
  24. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/transforms/map_axis.py +0 -0
  25. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/transforms/moving_least_squares.py +0 -0
  26. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/transforms/project_axis.py +0 -0
  27. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/transforms/reflection.py +0 -0
  28. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/transforms/simple.py +0 -0
  29. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/transforms/thinplate.py +0 -0
  30. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/transforms/vector_field.py +0 -0
  31. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/types.py +0 -0
  32. {transformnd-0.9.0 → transformnd-0.9.2}/src/transformnd/util.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: transformnd
3
- Version: 0.9.0
3
+ Version: 0.9.2
4
4
  Summary: ND coordinate transformations
5
5
  Author: Chris Barnes
6
6
  Author-email: Chris Barnes <chris.barnes@gerbi-gmb.de>
@@ -82,10 +82,6 @@ are of valid type and dimensions.
82
82
  Additionally, `transformnd` provides an interface for transforming types other than NxD numpy arrays,
83
83
  and implements these adapters for a few common types.
84
84
 
85
- See the [tutorial here](https://github.com/clbarnes/transformnd/blob/main/examples/tutorial.py).
86
- It is a [marimo](https://marimo.io) notebook.
87
- Open it with `uv run --group examples marimo edit examples/tutorial.py`.
88
-
89
85
  ## Usage
90
86
 
91
87
  `transformnd` is pre-1.0 and the API is subject to change.
@@ -27,10 +27,6 @@ are of valid type and dimensions.
27
27
  Additionally, `transformnd` provides an interface for transforming types other than NxD numpy arrays,
28
28
  and implements these adapters for a few common types.
29
29
 
30
- See the [tutorial here](https://github.com/clbarnes/transformnd/blob/main/examples/tutorial.py).
31
- It is a [marimo](https://marimo.io) notebook.
32
- Open it with `uv run --group examples marimo edit examples/tutorial.py`.
33
-
34
30
  ## Usage
35
31
 
36
32
  `transformnd` is pre-1.0 and the API is subject to change.
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "transformnd"
3
- version = "0.9.0"
3
+ version = "0.9.2"
4
4
  description = "ND coordinate transformations"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.12, <4.0"
@@ -62,6 +62,15 @@ all = [
62
62
  ]
63
63
 
64
64
  [dependency-groups]
65
+ dev = [
66
+ { include-group = "test" },
67
+ { include-group = "lint" },
68
+ { include-group = "doc" },
69
+ { include-group = "examples" },
70
+ { include-group = "bench" },
71
+ "prek>=0.3.11",
72
+ "rust-just>=1.58.0",
73
+ ]
65
74
  test = [
66
75
  "pytest",
67
76
  "jax",
@@ -74,33 +83,23 @@ lint = [
74
83
  "types-shapely>=2.1.0.20260408",
75
84
  "pydoclint>=0.8.6",
76
85
  ]
77
- doc = ["pdoc>=16.0.0"]
78
86
  examples = [
79
- "marimo>=0.9",
80
87
  "matplotlib>=3.10.8",
81
88
  "pandas>=3.0.2",
82
89
  "pooch>=1.9.0",
83
90
  "scikit-image>=0.26.0",
91
+ "jupytext>=1.19.6",
92
+ "ipykernel>=7.4.0",
93
+ ]
94
+ doc = [
95
+ "pdoc>=16.0.0",
96
+ "nbconvert>=7.17.1",
97
+ { include-group = "examples" },
84
98
  ]
85
99
  bench = ["pytest-benchmark>=5.2.3"]
86
100
 
87
- [[dependency-groups.dev]]
88
- include-group = "test"
89
-
90
- [[dependency-groups.dev]]
91
- include-group = "lint"
92
-
93
- [[dependency-groups.dev]]
94
- include-group = "doc"
95
-
96
- [[dependency-groups.dev]]
97
- include-group = "examples"
98
-
99
- [[dependency-groups.dev]]
100
- include-group = "bench"
101
-
102
101
  [build-system]
103
- requires = ["uv_build>=0.11.0,<0.12.0"]
102
+ requires = ["uv-build>=0.12.10,<0.13.0"]
104
103
  build-backend = "uv_build"
105
104
 
106
105
  [tool.mypy]
@@ -123,3 +122,6 @@ external = [
123
122
  "DOC",
124
123
  "D",
125
124
  ]
125
+
126
+ [tool.ruff.lint.extend-per-file-ignores]
127
+ "examples/*.py" = ["E402"]
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "transformnd"
3
- version = "0.9.0"
3
+ version = "0.9.2"
4
4
  description = "ND coordinate transformations"
5
5
  readme = "README.md"
6
6
  authors = [{ name = "Chris Barnes", email = "chris.barnes@gerbi-gmb.de" }]
@@ -64,6 +64,8 @@ dev = [
64
64
  {include-group = "doc"},
65
65
  {include-group = "examples"},
66
66
  {include-group = "bench"},
67
+ "prek>=0.3.11",
68
+ "rust-just>=1.58.0",
67
69
  ]
68
70
  test = [
69
71
  "pytest",
@@ -77,22 +79,25 @@ lint = [
77
79
  "types-shapely>=2.1.0.20260408",
78
80
  "pydoclint>=0.8.6",
79
81
  ]
80
- doc = [
81
- "pdoc>=16.0.0",
82
- ]
83
82
  examples = [
84
- "marimo>=0.9",
85
83
  "matplotlib>=3.10.8",
86
84
  "pandas>=3.0.2",
87
85
  "pooch>=1.9.0",
88
86
  "scikit-image>=0.26.0",
87
+ "jupytext>=1.19.6",
88
+ "ipykernel>=7.4.0",
89
+ ]
90
+ doc = [
91
+ "pdoc>=16.0.0",
92
+ "nbconvert>=7.17.1",
93
+ {include-group = "examples"},
89
94
  ]
90
95
  bench = [
91
96
  "pytest-benchmark>=5.2.3",
92
97
  ]
93
98
 
94
99
  [build-system]
95
- requires = ["uv_build>=0.11.0,<0.12.0"]
100
+ requires = ["uv-build>=0.12.10,<0.13.0"]
96
101
  build-backend = "uv_build"
97
102
 
98
103
  [tool.mypy]
@@ -107,8 +112,11 @@ addopts = ["--benchmark-skip"]
107
112
  arg-type-hints-in-docstring = false
108
113
  allow-init-docstring = true
109
114
 
110
- [tool.ruff]
111
- lint.external = [
115
+ [tool.ruff.lint]
116
+ external = [
112
117
  "DOC", # pydoclint
113
118
  "D", # pydocstyle
114
119
  ]
120
+
121
+ [tool.ruff.lint.extend-per-file-ignores]
122
+ "examples/*.py" = ["E402"]
@@ -416,7 +416,9 @@ class TransformSequence(Transform[ArrayT], Sequence[Transform[ArrayT]]):
416
416
 
417
417
  def to_affine(self) -> Affine[ArrayT] | None:
418
418
  if self.is_empty():
419
- return Affine.identity(self.ndims.source) # type:ignore
419
+ from .transforms import Affine
420
+
421
+ return Affine.identity(self.ndims.source) # type: ignore
420
422
  simple = self.simplify(True)
421
423
  if len(simple) != 1:
422
424
  return None
@@ -38,7 +38,7 @@ class Spaced(Generic[ArrayT, SpaceRef]):
38
38
  t = self.transform.invert()
39
39
  if t is None:
40
40
  return None
41
- return type(self)(t, self.spaces.source, self.spaces.target)
41
+ return type(self)(t, self.spaces.target, self.spaces.source)
42
42
 
43
43
  def __invert__(self):
44
44
  out = self.invert()