Commit ca0df49
committed
Address PR #1667 review: __all__, traceback preservation, test strict promotion
Five Copilot review comments on PR #1667:
1. Export GeoTIFFFallbackWarning via __all__ so it surfaces in
``from xrspatial.geotiff import *`` and matches the docstring claim
that it's a user-facing warning type. Update the public-API
regression test in tests/test_features.py to keep the expected set
in sync.
2. Preserve the original traceback when ``_warn_or_raise_gpu_fallback``
would raise in strict mode. The helper used to do ``raise exc`` from
its own frame, which reset ``__traceback__`` to the helper. It now
returns ``True`` in strict mode and each call site does a bare
``raise`` from its ``except`` block, keeping the original traceback
intact. All nine call sites in ``_gpu_decode.py`` were updated.
3. Drop the unused ``import os`` from ``test_strict_mode_1662.py``.
4. Tighten the GPU gating in ``test_strict_mode_1662.py`` from a bare
``importlib.util.find_spec('cupy')`` check to a ``_gpu_available()``
helper that also confirms ``cupy.cuda.is_available()`` -- matches
the pattern used in the other GPU-only geotiff tests.
5. Rewrite ``test_read_geotiff_gpu_env_var_promotes_to_strict`` so it
actually exercises the env-var promotion. The previous version
passed a non-existent path which raised regardless of strict mode.
The new version writes a real on-disk TIF, monkeypatches
``gpu_decode_tiles_from_file`` and ``gpu_decode_tiles`` on the
``_gpu_decode`` module to raise, then asserts that the default mode
returns a CuPy DataArray (CPU fallback path) and that
``XRSPATIAL_GEOTIFF_STRICT=1`` re-raises the patched error.1 parent 10790e2 commit ca0df49
4 files changed
Lines changed: 157 additions & 41 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
46 | 46 | | |
47 | 47 | | |
48 | 48 | | |
| 49 | + | |
49 | 50 | | |
50 | 51 | | |
51 | 52 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
16 | | - | |
| 16 | + | |
17 | 17 | | |
18 | 18 | | |
19 | | - | |
20 | | - | |
21 | | - | |
22 | | - | |
23 | | - | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
24 | 27 | | |
25 | 28 | | |
26 | 29 | | |
27 | | - | |
| 30 | + | |
28 | 31 | | |
29 | 32 | | |
30 | 33 | | |
31 | 34 | | |
32 | 35 | | |
33 | 36 | | |
| 37 | + | |
34 | 38 | | |
35 | 39 | | |
36 | 40 | | |
| |||
972 | 976 | | |
973 | 977 | | |
974 | 978 | | |
975 | | - | |
| 979 | + | |
| 980 | + | |
976 | 981 | | |
977 | 982 | | |
978 | 983 | | |
| |||
1076 | 1081 | | |
1077 | 1082 | | |
1078 | 1083 | | |
1079 | | - | |
1080 | | - | |
| 1084 | + | |
| 1085 | + | |
| 1086 | + | |
1081 | 1087 | | |
1082 | 1088 | | |
1083 | 1089 | | |
| |||
1197 | 1203 | | |
1198 | 1204 | | |
1199 | 1205 | | |
1200 | | - | |
1201 | | - | |
| 1206 | + | |
| 1207 | + | |
| 1208 | + | |
1202 | 1209 | | |
1203 | 1210 | | |
1204 | 1211 | | |
| |||
1376 | 1383 | | |
1377 | 1384 | | |
1378 | 1385 | | |
1379 | | - | |
| 1386 | + | |
| 1387 | + | |
1380 | 1388 | | |
1381 | 1389 | | |
1382 | 1390 | | |
| |||
1521 | 1529 | | |
1522 | 1530 | | |
1523 | 1531 | | |
1524 | | - | |
| 1532 | + | |
| 1533 | + | |
1525 | 1534 | | |
1526 | 1535 | | |
1527 | 1536 | | |
| |||
1653 | 1662 | | |
1654 | 1663 | | |
1655 | 1664 | | |
1656 | | - | |
| 1665 | + | |
| 1666 | + | |
1657 | 1667 | | |
1658 | 1668 | | |
1659 | 1669 | | |
| |||
2440 | 2450 | | |
2441 | 2451 | | |
2442 | 2452 | | |
2443 | | - | |
| 2453 | + | |
| 2454 | + | |
2444 | 2455 | | |
2445 | 2456 | | |
2446 | 2457 | | |
| |||
2630 | 2641 | | |
2631 | 2642 | | |
2632 | 2643 | | |
2633 | | - | |
| 2644 | + | |
| 2645 | + | |
2634 | 2646 | | |
2635 | 2647 | | |
2636 | 2648 | | |
| |||
2776 | 2788 | | |
2777 | 2789 | | |
2778 | 2790 | | |
2779 | | - | |
| 2791 | + | |
| 2792 | + | |
2780 | 2793 | | |
2781 | 2794 | | |
2782 | 2795 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2642 | 2642 | | |
2643 | 2643 | | |
2644 | 2644 | | |
| 2645 | + | |
2645 | 2646 | | |
2646 | 2647 | | |
2647 | 2648 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
16 | | - | |
17 | | - | |
| 16 | + | |
| 17 | + | |
18 | 18 | | |
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
22 | | - | |
23 | 22 | | |
24 | 23 | | |
25 | 24 | | |
| |||
141 | 140 | | |
142 | 141 | | |
143 | 142 | | |
| 143 | + | |
144 | 144 | | |
145 | 145 | | |
146 | 146 | | |
147 | 147 | | |
148 | 148 | | |
149 | 149 | | |
150 | 150 | | |
151 | | - | |
| 151 | + | |
| 152 | + | |
152 | 153 | | |
153 | 154 | | |
154 | 155 | | |
| |||
178 | 179 | | |
179 | 180 | | |
180 | 181 | | |
| 182 | + | |
181 | 183 | | |
182 | 184 | | |
183 | 185 | | |
184 | 186 | | |
185 | 187 | | |
186 | 188 | | |
187 | 189 | | |
188 | | - | |
| 190 | + | |
| 191 | + | |
189 | 192 | | |
190 | 193 | | |
191 | 194 | | |
| |||
204 | 207 | | |
205 | 208 | | |
206 | 209 | | |
207 | | - | |
208 | | - | |
209 | 210 | | |
210 | 211 | | |
211 | 212 | | |
212 | 213 | | |
213 | 214 | | |
214 | 215 | | |
215 | 216 | | |
216 | | - | |
| 217 | + | |
217 | 218 | | |
218 | 219 | | |
| 220 | + | |
| 221 | + | |
219 | 222 | | |
220 | 223 | | |
221 | 224 | | |
| |||
226 | 229 | | |
227 | 230 | | |
228 | 231 | | |
229 | | - | |
230 | | - | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
231 | 241 | | |
232 | 242 | | |
233 | | - | |
234 | | - | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
235 | 246 | | |
236 | 247 | | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
| 252 | + | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
| 267 | + | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
237 | 282 | | |
238 | 283 | | |
239 | 284 | | |
240 | 285 | | |
241 | 286 | | |
| 287 | + | |
| 288 | + | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
| 292 | + | |
| 293 | + | |
| 294 | + | |
| 295 | + | |
| 296 | + | |
| 297 | + | |
| 298 | + | |
| 299 | + | |
242 | 300 | | |
243 | | - | |
244 | | - | |
| 301 | + | |
| 302 | + | |
245 | 303 | | |
246 | | - | |
| 304 | + | |
247 | 305 | | |
248 | | - | |
249 | | - | |
250 | | - | |
251 | | - | |
252 | | - | |
253 | | - | |
254 | | - | |
255 | | - | |
| 306 | + | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
| 310 | + | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
| 315 | + | |
| 316 | + | |
| 317 | + | |
| 318 | + | |
| 319 | + | |
| 320 | + | |
| 321 | + | |
| 322 | + | |
| 323 | + | |
| 324 | + | |
| 325 | + | |
| 326 | + | |
| 327 | + | |
| 328 | + | |
| 329 | + | |
| 330 | + | |
| 331 | + | |
| 332 | + | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
| 337 | + | |
| 338 | + | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
| 353 | + | |
| 354 | + | |
| 355 | + | |
| 356 | + | |
0 commit comments