Pickling the HTTP server requires the 'fork' multiprocessing context,
and in some places, `HTTPServer.server_name` returns something that
doesn't work with curl. So force the 'fork' mode, and use
`HTTPServer.server_address` instead.
Also, remove the `network` marker, as it does nothing for fixtures and
isn't required since that marker signifies _external_ networking.
* Eliminate boundless reads in merge, new compositing implementation (#3234)
* Eliminate boundless reads in merge, new compositing implementation
Resolves#3228
* Fix nits
* Compare non-zero mean of arrays
* Implement and use Window.align()
Combines the effects of Window.round_offsets and
Window.round_lengths, producing the same effect as gdal_merge.py
* Remove unused math import
* Add more docs about align()
Also increase the fraction used in round_offsets() to be
consistent with align()
* Move align() to a private func, use two existing methods in tests
* Add a test for merging WarpedVRTs (#3237)
Resolves#3196
* Backport of #3217 (#3243)
* Backport of #3217
* Update change log
* Increment GDAL and Python versions for CI (#3244)
* Rewrite _matches() to better support to_authority() and to_epsg() (#3255)
* Rewrite _matches() to better support to_authority() and to_epsg()
Resolves#3239
* Remove list() call and update change log
* Use to_epsg() in is_epsg_code() (#3258)
* Use to_epsg() in is_epsg_code()
Resolves#3248
* Update change log
* Allow MRF compression to surface in properties (#3259)
* Allow MRF compression to surface in properties
Resolves#3256
* Update change log
* Register drivers at most once per process (#3260)
* Register drivers at most once per process
Resolves#3250
* Appease flake8
* Add a note about GDAL_SKIP in the change log
* Support all GDALFillNodata() options in rasterio.fill (#3265)
* Support all GDALFillNodata() options
Resolve#3175.
* Cast values to str and update docs
* Update change log
* Prevent rasterio from trying to open a dataset object (#3266)
Resolves#3105.
* Fix typos discovered by codespell (#3264) (#3267)
* Fix typos discovered by codespell
* crasher
---------
Co-authored-by: Christian Clauss <cclauss@me.com>
* Fix erroneous masking of 0-valued data (#3268)
* Fix erroneous masking of 0-valued data
Resolves#3245
* Add an assertion about data values and update change log
* This is 1.4.3
---------
Co-authored-by: Christian Clauss <cclauss@me.com>
* adds IAU as known authority to CRS.to_authority
* slight change to match quote convention
* it looks like the IAU authority is incorporating the version year into the name of the authority
* making the IAU_2015 authority explicit in tests and etc
* Adds CRS.to_geodetic function
* inspired by pyproj's .geodetic_crs function to return the
corresponding base geographic CRS for a given CRS
* helpful for projections that may not use common geographic CRSs
* switch to else rather than finally in to_geodetic
* improve docstring and remove todos
* fixed test comment
* added .geodetic_crs property following pyproj's approach
* change to throw exception, added an aux.xml to .gitignore I keep almost committing
* Update rasterio/crs.pyx
Co-authored-by: Sean Gillies <sean.gillies@gmail.com>
* Update rasterio/crs.pyx
Co-authored-by: Sean Gillies <sean.gillies@gmail.com>
---------
Co-authored-by: Sean Gillies <sean.gillies@gmail.com>
* Eliminate from_user_inputs calls to prevent unintended recursion
* Eliminate usage of to_epsg(), implement speed up from #3208
Additionally: stop asserting on "init=epsg:dddd" as this is no
longer recommended usage.
* Remove tests of equivalence with "+init=" CRS
* Add EPSG:4326 vs OGC:CRS84 test. These are not equivalent.
* Partial fix for CRS.__eq__ #3207
does away with to_epsg conversion and instead uses OSRIsSameEx to do the
comparison with OGR. Might not be fast...
* * added improvement suggested by @rouault
* added test that demonstrates ogc:crs84 is equivalent to epsg:4326 for
the purposes of rasterio
* fix to ignore axis order by default, causes changes elsewhere, not yet micro benchmarked
* This is the maint-1.4 branch
* Check for lowerCase netCDF instead of NetCDF (#3189)
Some tests were accidentally skipped even though netCDF driver was installed due to incorrect capitalization.
* Return ints from dataset index() (#3195)
Resolves#3192
* Mark additional tests that use the network (#3193)
The network marker is already used in other places, but these tests are
new.
* Restore xy transform of grid coordinates (#3198)
Resolves#3191
* Add fsspec to test dependencies (#3197)
Resolve#3190
* This is 1.4.1
* Configuration for our internal use of MEM:: datasets
---------
Co-authored-by: Wei Ji <23487320+weiji14@users.noreply.github.com>
Co-authored-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
* Use mask as alpha when reprojecting a masked array
Resolves#2575
* Remove unnecessary nodata wranging
* Masked reprojection results depend on GDAL version
* Fix test expectations and mask scaling value
The tests of this PR are now only run for GDAL 3.8+ because the
outputs are too variable.
* Update change log
* Add a merge CLI and Python tool option to use best source res
Resolves#2045
* Compute best resolution without a list
* Add a stack tool and update rio-stack command
* Add another test, comment out image generation
* Remove commented code, replace "merge" with "stack" in docs
* Add option to get a masked array.
Resolves#2691.
* ENH: enable support for more dtypes in features.shapes
* Update CHANGES.txt
* int8 needs gdal 3.7
* Add extra types to docstring
* Apply feedback: int8 only from version 3.7
* Add a new MergeError and use it in the merge tool
Flipped and upside down sources now trigger this exception.
Resolves#3123
* Define new exception in merge.py
* Move MergeError, improve docs, add tests
* add multi-range-read for VSIPlugin
* Update tests/test_pyopener.py
* Add and use abstract base classes in the opener implementation
* Silence flake8
---------
Co-authored-by: Sean Gillies <sean.gillies@gmail.com>