feat: add support for GDAL 3.9 and Python 3.12 and 3.13 #60
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This change adds support for GDAL 3.9 and verifying compatibility with Python versions 3.12 and 3.13. GDAL 3.9 was previously unsupported because it contained an undocumented breaking change to the structure of the xml:DES metadata that broke how our toolkit was accessing SICD/SIDD metadata. The only functional update in this commit is code that will let us work with either xml:DES structure and therefore retain compatibility with GDAL versions 3.7 through 3.9. See: OSGeo/gdal#8953 for more information.
The default tox environments have been expanded to verify these changes and maintain future compatibility. Instead of a single environment that will always pull the latest versions within an approved range, multiple environments with pinned GDAL and Proj versions have been setup and associated with the Python versions under test. This table shows the combinations currently checked with a full build:
The intent is to ensure this library can be deployed by customers to a variety of environments and verify compatibility with multiple GDAL versions in wide use today. We will drop support for older python versions once they reach end-of-life status. See: Status of Python Versions
Checklist
Before you submit a pull request, please make sure you have the following:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.