* Add a context manager that records errors, links them, and raises
An approach to surface the deeper causes of errors in a GDAL
function call.
* Fix Cython compiler error and improve test
* Add a thread local chained error stack and modernize handlers.
* Fix erroneous early return
* Chain warp errors and bring back logging
* Use chained error stack with other io_* functions.
* Apply suggestions from code review
Rename three objects.
Co-authored-by: Alan D. Snow <alansnow21@gmail.com>
* Complete renaming.
* Add note in change log.
---------
Co-authored-by: Alan D. Snow <alansnow21@gmail.com>
fixes#2847
Note: if testing this against GDAL 3.8.0dev before
https://github.com/OSGeo/gdal/pull/7963,
build rasterio with "GDAL_VERSION=3.7.0 pip install -e ."
so that the compile-time conditions are met.
See https://stackoverflow.com/a/54624956 for discussion of the
memory optimizations that might complicated things. Numpy provides
methods to check for memory sharing but I don't think we benefit
from using them.
* Refactor of _CRS class to make WKT canonical
* Finish work on making WKT canonical
Many test assertions needed update
* Accept {'init': 'EPSG:xxxx'}
Also removed commented code
* Restore previous rio-info behavior when there's an EPSG code
* Remove unneeded import
* Use from_proj4 in from_epsg
* Rewrite of _CRS to keep an OGRSpatialReferenceH (#1602)
* Rewrite of _CRS to keep an OGRSpatialReferenceH
Rewrite of CRS to use _CRS by composition, not inheritance
New OGRErr handling function exc_wrap_ogrerr
* Remove commented code
* Add back in the error stack check for ImportFromProj
Also fix up docstrings
Intent is to return no data when the window is beyond the dataset's
extent and clip to the dataset's extent when the window overflows.
In other words, just like Python slices and Numpy extended slices.
Closes#191.