geodium 0.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.
@@ -0,0 +1,190 @@
1
+ # This file is autogenerated by maturin v1.10.2
2
+ # To update, run
3
+ #
4
+ # maturin generate-ci github
5
+ #
6
+ name: CI
7
+
8
+ on:
9
+ push:
10
+ branches:
11
+ - main
12
+ - master
13
+ tags:
14
+ - '*'
15
+ pull_request:
16
+ workflow_dispatch:
17
+
18
+ permissions:
19
+ contents: read
20
+
21
+ jobs:
22
+ linux:
23
+ runs-on: ${{ matrix.platform.runner }}
24
+ strategy:
25
+ matrix:
26
+ platform:
27
+ - runner: ubuntu-22.04
28
+ target: x86_64
29
+ - runner: ubuntu-22.04
30
+ target: x86
31
+ - runner: ubuntu-22.04
32
+ target: aarch64
33
+ - runner: ubuntu-22.04
34
+ target: armv7
35
+ - runner: ubuntu-22.04
36
+ target: s390x
37
+ - runner: ubuntu-22.04
38
+ target: ppc64le
39
+ steps:
40
+ - uses: actions/checkout@v4
41
+ - uses: actions/setup-python@v5
42
+ with:
43
+ python-version: 3.x
44
+ - name: Build wheels
45
+ uses: PyO3/maturin-action@v1
46
+ with:
47
+ target: ${{ matrix.platform.target }}
48
+ args: --release --out dist --find-interpreter
49
+ sccache: ${{ !startsWith(github.ref, 'refs/tags/') }}
50
+ manylinux: auto
51
+ - name: Upload wheels
52
+ uses: actions/upload-artifact@v4
53
+ with:
54
+ name: wheels-linux-${{ matrix.platform.target }}
55
+ path: dist
56
+
57
+ musllinux:
58
+ runs-on: ${{ matrix.platform.runner }}
59
+ strategy:
60
+ matrix:
61
+ platform:
62
+ - runner: ubuntu-22.04
63
+ target: x86_64
64
+ - runner: ubuntu-22.04
65
+ target: x86
66
+ - runner: ubuntu-22.04
67
+ target: aarch64
68
+ - runner: ubuntu-22.04
69
+ target: armv7
70
+ steps:
71
+ - uses: actions/checkout@v4
72
+ - uses: actions/setup-python@v5
73
+ with:
74
+ python-version: 3.x
75
+ - name: Build wheels
76
+ uses: PyO3/maturin-action@v1
77
+ with:
78
+ target: ${{ matrix.platform.target }}
79
+ args: --release --out dist --find-interpreter
80
+ sccache: ${{ !startsWith(github.ref, 'refs/tags/') }}
81
+ manylinux: musllinux_1_2
82
+ - name: Upload wheels
83
+ uses: actions/upload-artifact@v4
84
+ with:
85
+ name: wheels-musllinux-${{ matrix.platform.target }}
86
+ path: dist
87
+
88
+ windows:
89
+ runs-on: ${{ matrix.platform.runner }}
90
+ strategy:
91
+ matrix:
92
+ platform:
93
+ - runner: windows-latest
94
+ target: x86_64-pc-windows-msvc
95
+ arch: x64
96
+ - runner: windows-latest
97
+ target: i686-pc-windows-msvc
98
+ arch: x86
99
+ steps:
100
+ - uses: actions/checkout@v4
101
+
102
+ - name: Set up Python
103
+ uses: actions/setup-python@v5
104
+ with:
105
+ # Use 3.12 or 3.11 as a stable base to build the ABI3 wheel
106
+ python-version: '3.12'
107
+ architecture: ${{ matrix.platform.arch }}
108
+
109
+ - name: Build wheels
110
+ uses: PyO3/maturin-action@v1
111
+ with:
112
+ target: ${{ matrix.platform.target }}
113
+ # We use --interpreter python to ensure maturin uses the
114
+ # 32-bit or 64-bit python we just installed.
115
+ args: --release --out dist --interpreter python
116
+ sccache: ${{ !startsWith(github.ref, 'refs/tags/') }}
117
+
118
+ - name: Upload wheels
119
+ uses: actions/upload-artifact@v4
120
+ with:
121
+ name: wheels-windows-${{ matrix.platform.arch }}
122
+ path: dist
123
+
124
+ macos:
125
+ runs-on: ${{ matrix.platform.runner }}
126
+ strategy:
127
+ matrix:
128
+ platform:
129
+ - runner: macos-13
130
+ target: x86_64
131
+ - runner: macos-14
132
+ target: aarch64
133
+ steps:
134
+ - uses: actions/checkout@v4
135
+ - uses: actions/setup-python@v5
136
+ with:
137
+ python-version: 3.x
138
+ - name: Build wheels
139
+ uses: PyO3/maturin-action@v1
140
+ with:
141
+ target: ${{ matrix.platform.target }}
142
+ args: --release --out dist --interpreter python
143
+ sccache: ${{ !startsWith(github.ref, 'refs/tags/') }}
144
+ - name: Upload wheels
145
+ uses: actions/upload-artifact@v4
146
+ with:
147
+ name: wheels-macos-${{ matrix.platform.target }}
148
+ path: dist
149
+
150
+ sdist:
151
+ runs-on: ubuntu-latest
152
+ steps:
153
+ - uses: actions/checkout@v4
154
+ - name: Build sdist
155
+ uses: PyO3/maturin-action@v1
156
+ with:
157
+ command: sdist
158
+ args: --out dist
159
+ - name: Upload sdist
160
+ uses: actions/upload-artifact@v4
161
+ with:
162
+ name: wheels-sdist
163
+ path: dist
164
+
165
+ release:
166
+ name: Release
167
+ runs-on: ubuntu-latest
168
+ if: ${{ startsWith(github.ref, 'refs/tags/') || github.event_name == 'workflow_dispatch' }}
169
+ needs: [linux, musllinux, windows, macos, sdist]
170
+ permissions:
171
+ # Use to sign the release artifacts
172
+ id-token: write
173
+ # Used to upload release artifacts
174
+ contents: write
175
+ # Used to generate artifact attestation
176
+ attestations: write
177
+ steps:
178
+ - uses: actions/download-artifact@v4
179
+ - name: Generate artifact attestation
180
+ uses: actions/attest-build-provenance@v2
181
+ with:
182
+ subject-path: 'wheels-*/*'
183
+ - name: Publish to PyPI
184
+ if: ${{ startsWith(github.ref, 'refs/tags/') }}
185
+ uses: PyO3/maturin-action@v1
186
+ env:
187
+ MATURIN_PYPI_TOKEN: ${{ secrets.PYPI_API_TOKEN }}
188
+ with:
189
+ command: upload
190
+ args: --non-interactive --skip-existing wheels-*/*
@@ -0,0 +1,49 @@
1
+ name: Build and Publish Geodium
2
+
3
+ on:
4
+ release:
5
+ types:
6
+ - published
7
+
8
+ jobs:
9
+ build-wheels:
10
+ name: Build wheels on ${{ matrix.os }}
11
+ runs-on: ${{ matrix.os }}
12
+ strategy:
13
+ matrix:
14
+ os: [ubuntu-latest, windows-latest, macos-14]
15
+
16
+ steps:
17
+ - uses: actions/checkout@v4
18
+
19
+ - name: Build wheels
20
+ uses: PyO3/maturin-action@v1
21
+ with:
22
+ command: build
23
+ args: --release --out dist --no-manylinux
24
+
25
+ - name: Upload wheels
26
+ uses: actions/upload-artifact@v4
27
+ with:
28
+ name: wheels-${{ matrix.os }}
29
+ path: dist
30
+
31
+ publish:
32
+ name: Publish to PyPI
33
+ needs: [build-wheels]
34
+ runs-on: ubuntu-latest
35
+ environment: pypi
36
+ permissions:
37
+ id-token: write
38
+ contents: read
39
+
40
+ steps:
41
+ - name: Download all wheels
42
+ uses: actions/download-artifact@v4
43
+ with:
44
+ path: dist
45
+ pattern: wheels-*
46
+ merge-multiple: true
47
+
48
+ - name: Publish to PyPI
49
+ uses: pypa/gh-action-pypi-publish@release/v1
@@ -0,0 +1,8 @@
1
+ /target/
2
+ /.venv/
3
+ __pycache__/
4
+ *.tif
5
+ *.whl
6
+ *.dylib
7
+ .so
8
+ *.pyd
@@ -0,0 +1,361 @@
1
+ # This file is automatically @generated by Cargo.
2
+ # It is not intended for manual editing.
3
+ version = 4
4
+
5
+ [[package]]
6
+ name = "autocfg"
7
+ version = "1.5.0"
8
+ source = "registry+https://github.com/rust-lang/crates.io-index"
9
+ checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8"
10
+
11
+ [[package]]
12
+ name = "cc"
13
+ version = "1.2.56"
14
+ source = "registry+https://github.com/rust-lang/crates.io-index"
15
+ checksum = "aebf35691d1bfb0ac386a69bac2fde4dd276fb618cf8bf4f5318fe285e821bb2"
16
+ dependencies = [
17
+ "find-msvc-tools",
18
+ "shlex",
19
+ ]
20
+
21
+ [[package]]
22
+ name = "cfg-if"
23
+ version = "1.0.4"
24
+ source = "registry+https://github.com/rust-lang/crates.io-index"
25
+ checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801"
26
+
27
+ [[package]]
28
+ name = "crossbeam-deque"
29
+ version = "0.8.6"
30
+ source = "registry+https://github.com/rust-lang/crates.io-index"
31
+ checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51"
32
+ dependencies = [
33
+ "crossbeam-epoch",
34
+ "crossbeam-utils",
35
+ ]
36
+
37
+ [[package]]
38
+ name = "crossbeam-epoch"
39
+ version = "0.9.18"
40
+ source = "registry+https://github.com/rust-lang/crates.io-index"
41
+ checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e"
42
+ dependencies = [
43
+ "crossbeam-utils",
44
+ ]
45
+
46
+ [[package]]
47
+ name = "crossbeam-utils"
48
+ version = "0.8.21"
49
+ source = "registry+https://github.com/rust-lang/crates.io-index"
50
+ checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28"
51
+
52
+ [[package]]
53
+ name = "either"
54
+ version = "1.15.0"
55
+ source = "registry+https://github.com/rust-lang/crates.io-index"
56
+ checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719"
57
+
58
+ [[package]]
59
+ name = "find-msvc-tools"
60
+ version = "0.1.9"
61
+ source = "registry+https://github.com/rust-lang/crates.io-index"
62
+ checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582"
63
+
64
+ [[package]]
65
+ name = "geodium"
66
+ version = "0.1.0"
67
+ dependencies = [
68
+ "ndarray",
69
+ "num_cpus",
70
+ "numpy",
71
+ "pyo3",
72
+ "rayon",
73
+ ]
74
+
75
+ [[package]]
76
+ name = "heck"
77
+ version = "0.5.0"
78
+ source = "registry+https://github.com/rust-lang/crates.io-index"
79
+ checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
80
+
81
+ [[package]]
82
+ name = "hermit-abi"
83
+ version = "0.5.2"
84
+ source = "registry+https://github.com/rust-lang/crates.io-index"
85
+ checksum = "fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c"
86
+
87
+ [[package]]
88
+ name = "indoc"
89
+ version = "2.0.7"
90
+ source = "registry+https://github.com/rust-lang/crates.io-index"
91
+ checksum = "79cf5c93f93228cf8efb3ba362535fb11199ac548a09ce117c9b1adc3030d706"
92
+ dependencies = [
93
+ "rustversion",
94
+ ]
95
+
96
+ [[package]]
97
+ name = "libc"
98
+ version = "0.2.182"
99
+ source = "registry+https://github.com/rust-lang/crates.io-index"
100
+ checksum = "6800badb6cb2082ffd7b6a67e6125bb39f18782f793520caee8cb8846be06112"
101
+
102
+ [[package]]
103
+ name = "matrixmultiply"
104
+ version = "0.3.10"
105
+ source = "registry+https://github.com/rust-lang/crates.io-index"
106
+ checksum = "a06de3016e9fae57a36fd14dba131fccf49f74b40b7fbdb472f96e361ec71a08"
107
+ dependencies = [
108
+ "autocfg",
109
+ "rawpointer",
110
+ ]
111
+
112
+ [[package]]
113
+ name = "memoffset"
114
+ version = "0.9.1"
115
+ source = "registry+https://github.com/rust-lang/crates.io-index"
116
+ checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
117
+ dependencies = [
118
+ "autocfg",
119
+ ]
120
+
121
+ [[package]]
122
+ name = "ndarray"
123
+ version = "0.15.6"
124
+ source = "registry+https://github.com/rust-lang/crates.io-index"
125
+ checksum = "adb12d4e967ec485a5f71c6311fe28158e9d6f4bc4a447b474184d0f91a8fa32"
126
+ dependencies = [
127
+ "matrixmultiply",
128
+ "num-complex",
129
+ "num-integer",
130
+ "num-traits",
131
+ "rawpointer",
132
+ "rayon",
133
+ ]
134
+
135
+ [[package]]
136
+ name = "num-complex"
137
+ version = "0.4.6"
138
+ source = "registry+https://github.com/rust-lang/crates.io-index"
139
+ checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495"
140
+ dependencies = [
141
+ "num-traits",
142
+ ]
143
+
144
+ [[package]]
145
+ name = "num-integer"
146
+ version = "0.1.46"
147
+ source = "registry+https://github.com/rust-lang/crates.io-index"
148
+ checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f"
149
+ dependencies = [
150
+ "num-traits",
151
+ ]
152
+
153
+ [[package]]
154
+ name = "num-traits"
155
+ version = "0.2.19"
156
+ source = "registry+https://github.com/rust-lang/crates.io-index"
157
+ checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
158
+ dependencies = [
159
+ "autocfg",
160
+ ]
161
+
162
+ [[package]]
163
+ name = "num_cpus"
164
+ version = "1.17.0"
165
+ source = "registry+https://github.com/rust-lang/crates.io-index"
166
+ checksum = "91df4bbde75afed763b708b7eee1e8e7651e02d97f6d5dd763e89367e957b23b"
167
+ dependencies = [
168
+ "hermit-abi",
169
+ "libc",
170
+ ]
171
+
172
+ [[package]]
173
+ name = "numpy"
174
+ version = "0.23.0"
175
+ source = "registry+https://github.com/rust-lang/crates.io-index"
176
+ checksum = "b94caae805f998a07d33af06e6a3891e38556051b8045c615470a71590e13e78"
177
+ dependencies = [
178
+ "libc",
179
+ "ndarray",
180
+ "num-complex",
181
+ "num-integer",
182
+ "num-traits",
183
+ "pyo3",
184
+ "rustc-hash",
185
+ ]
186
+
187
+ [[package]]
188
+ name = "once_cell"
189
+ version = "1.21.3"
190
+ source = "registry+https://github.com/rust-lang/crates.io-index"
191
+ checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d"
192
+
193
+ [[package]]
194
+ name = "portable-atomic"
195
+ version = "1.13.1"
196
+ source = "registry+https://github.com/rust-lang/crates.io-index"
197
+ checksum = "c33a9471896f1c69cecef8d20cbe2f7accd12527ce60845ff44c153bb2a21b49"
198
+
199
+ [[package]]
200
+ name = "proc-macro2"
201
+ version = "1.0.106"
202
+ source = "registry+https://github.com/rust-lang/crates.io-index"
203
+ checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934"
204
+ dependencies = [
205
+ "unicode-ident",
206
+ ]
207
+
208
+ [[package]]
209
+ name = "pyo3"
210
+ version = "0.23.5"
211
+ source = "registry+https://github.com/rust-lang/crates.io-index"
212
+ checksum = "7778bffd85cf38175ac1f545509665d0b9b92a198ca7941f131f85f7a4f9a872"
213
+ dependencies = [
214
+ "cfg-if",
215
+ "indoc",
216
+ "libc",
217
+ "memoffset",
218
+ "once_cell",
219
+ "portable-atomic",
220
+ "pyo3-build-config",
221
+ "pyo3-ffi",
222
+ "pyo3-macros",
223
+ "unindent",
224
+ ]
225
+
226
+ [[package]]
227
+ name = "pyo3-build-config"
228
+ version = "0.23.5"
229
+ source = "registry+https://github.com/rust-lang/crates.io-index"
230
+ checksum = "94f6cbe86ef3bf18998d9df6e0f3fc1050a8c5efa409bf712e661a4366e010fb"
231
+ dependencies = [
232
+ "once_cell",
233
+ "python3-dll-a",
234
+ "target-lexicon",
235
+ ]
236
+
237
+ [[package]]
238
+ name = "pyo3-ffi"
239
+ version = "0.23.5"
240
+ source = "registry+https://github.com/rust-lang/crates.io-index"
241
+ checksum = "e9f1b4c431c0bb1c8fb0a338709859eed0d030ff6daa34368d3b152a63dfdd8d"
242
+ dependencies = [
243
+ "libc",
244
+ "pyo3-build-config",
245
+ ]
246
+
247
+ [[package]]
248
+ name = "pyo3-macros"
249
+ version = "0.23.5"
250
+ source = "registry+https://github.com/rust-lang/crates.io-index"
251
+ checksum = "fbc2201328f63c4710f68abdf653c89d8dbc2858b88c5d88b0ff38a75288a9da"
252
+ dependencies = [
253
+ "proc-macro2",
254
+ "pyo3-macros-backend",
255
+ "quote",
256
+ "syn",
257
+ ]
258
+
259
+ [[package]]
260
+ name = "pyo3-macros-backend"
261
+ version = "0.23.5"
262
+ source = "registry+https://github.com/rust-lang/crates.io-index"
263
+ checksum = "fca6726ad0f3da9c9de093d6f116a93c1a38e417ed73bf138472cf4064f72028"
264
+ dependencies = [
265
+ "heck",
266
+ "proc-macro2",
267
+ "pyo3-build-config",
268
+ "quote",
269
+ "syn",
270
+ ]
271
+
272
+ [[package]]
273
+ name = "python3-dll-a"
274
+ version = "0.2.14"
275
+ source = "registry+https://github.com/rust-lang/crates.io-index"
276
+ checksum = "d381ef313ae70b4da5f95f8a4de773c6aa5cd28f73adec4b4a31df70b66780d8"
277
+ dependencies = [
278
+ "cc",
279
+ ]
280
+
281
+ [[package]]
282
+ name = "quote"
283
+ version = "1.0.44"
284
+ source = "registry+https://github.com/rust-lang/crates.io-index"
285
+ checksum = "21b2ebcf727b7760c461f091f9f0f539b77b8e87f2fd88131e7f1b433b3cece4"
286
+ dependencies = [
287
+ "proc-macro2",
288
+ ]
289
+
290
+ [[package]]
291
+ name = "rawpointer"
292
+ version = "0.2.1"
293
+ source = "registry+https://github.com/rust-lang/crates.io-index"
294
+ checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3"
295
+
296
+ [[package]]
297
+ name = "rayon"
298
+ version = "1.11.0"
299
+ source = "registry+https://github.com/rust-lang/crates.io-index"
300
+ checksum = "368f01d005bf8fd9b1206fb6fa653e6c4a81ceb1466406b81792d87c5677a58f"
301
+ dependencies = [
302
+ "either",
303
+ "rayon-core",
304
+ ]
305
+
306
+ [[package]]
307
+ name = "rayon-core"
308
+ version = "1.13.0"
309
+ source = "registry+https://github.com/rust-lang/crates.io-index"
310
+ checksum = "22e18b0f0062d30d4230b2e85ff77fdfe4326feb054b9783a3460d8435c8ab91"
311
+ dependencies = [
312
+ "crossbeam-deque",
313
+ "crossbeam-utils",
314
+ ]
315
+
316
+ [[package]]
317
+ name = "rustc-hash"
318
+ version = "2.1.1"
319
+ source = "registry+https://github.com/rust-lang/crates.io-index"
320
+ checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d"
321
+
322
+ [[package]]
323
+ name = "rustversion"
324
+ version = "1.0.22"
325
+ source = "registry+https://github.com/rust-lang/crates.io-index"
326
+ checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d"
327
+
328
+ [[package]]
329
+ name = "shlex"
330
+ version = "1.3.0"
331
+ source = "registry+https://github.com/rust-lang/crates.io-index"
332
+ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
333
+
334
+ [[package]]
335
+ name = "syn"
336
+ version = "2.0.117"
337
+ source = "registry+https://github.com/rust-lang/crates.io-index"
338
+ checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99"
339
+ dependencies = [
340
+ "proc-macro2",
341
+ "quote",
342
+ "unicode-ident",
343
+ ]
344
+
345
+ [[package]]
346
+ name = "target-lexicon"
347
+ version = "0.12.16"
348
+ source = "registry+https://github.com/rust-lang/crates.io-index"
349
+ checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1"
350
+
351
+ [[package]]
352
+ name = "unicode-ident"
353
+ version = "1.0.24"
354
+ source = "registry+https://github.com/rust-lang/crates.io-index"
355
+ checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75"
356
+
357
+ [[package]]
358
+ name = "unindent"
359
+ version = "0.2.4"
360
+ source = "registry+https://github.com/rust-lang/crates.io-index"
361
+ checksum = "7264e107f553ccae879d21fbea1d6724ac785e8c3bfc762137959b5802826ef3"
@@ -0,0 +1,19 @@
1
+ [package]
2
+ name = "geodium"
3
+ version = "0.1.0"
4
+ edition = "2021"
5
+ readme = "README.md"
6
+ [features]
7
+ benchmark = []
8
+ [lib]
9
+ name = "geodium"
10
+ crate-type = ["cdylib"]
11
+
12
+ [dependencies]
13
+ # pyo3 0.21+ uses the Bound API for better safety and performance
14
+ pyo3 = { version = "0.23", features = ["extension-module", "abi3-py310", "generate-import-lib"] }
15
+ numpy = "0.23"
16
+ # rayon feature in ndarray is required for .par_for_each and .into_par_iter
17
+ ndarray = { version = "0.15", features = ["rayon"] }
18
+ rayon = "1.8"
19
+ num_cpus = "1.16"
geodium-0.1.0/PKG-INFO ADDED
@@ -0,0 +1,14 @@
1
+ Metadata-Version: 2.4
2
+ Name: geodium
3
+ Version: 0.1.0
4
+ Requires-Dist: numpy>=1.20.0
5
+ Requires-Dist: psutil>=7.2.2
6
+ Requires-Dist: rasterio>=1.3.0 ; extra == 'all'
7
+ Requires-Dist: spyndex>=0.3.0 ; extra == 'all'
8
+ Requires-Dist: spyndex>=0.3.0 ; extra == 'formulas'
9
+ Requires-Dist: rasterio>=1.3.0 ; extra == 'io'
10
+ Provides-Extra: all
11
+ Provides-Extra: formulas
12
+ Provides-Extra: io
13
+ Summary: High-performance raster math and spectral index engine
14
+ Requires-Python: >=3.10
@@ -0,0 +1 @@
1
+ A python library for quickly doing spectral imaging with less ram usage
@@ -0,0 +1,24 @@
1
+ [build-system]
2
+ requires = ["maturin>=1.0,<2.0"]
3
+ build-backend = "maturin"
4
+
5
+ [project]
6
+ name = "geodium"
7
+ version = "0.1.0"
8
+ description = "High-performance raster math and spectral index engine"
9
+ requires-python = ">=3.10"
10
+ # The only strict requirement to use the Rust kernels
11
+ dependencies = [
12
+ "numpy>=1.20.0",
13
+ "psutil>=7.2.2"
14
+ ]
15
+
16
+ # Optional dependencies installed via: pip install geodium[io,formulas]
17
+ [project.optional-dependencies]
18
+ io = ["rasterio>=1.3.0"]
19
+ formulas = ["spyndex>=0.3.0"]
20
+ all = ["rasterio>=1.3.0", "spyndex>=0.3.0"]
21
+
22
+ [tool.maturin]
23
+ python-source = "python"
24
+ module-name = "geodium.geodium"