Do not share query_types between subclasses of BaseEDRProvider#2049
Merged
tomkralidis merged 3 commits intogeopython:masterfrom Jun 29, 2025
Merged
Do not share query_types between subclasses of BaseEDRProvider#2049tomkralidis merged 3 commits intogeopython:masterfrom
tomkralidis merged 3 commits intogeopython:masterfrom
Conversation
- Automatically register EDR query types - Ensure subclasses of `BaseEDRProvider` does not share query_types between instances of its subclass
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Overview
This PR changes the way query types are registered within pygeoapi to automatically register queries. Furthermore this implementation leaves query_types as a class variable, but subclasses do not share the information from their parent class.
Related Issue / discussion
#2048
Additional information
Here is a link to the GitHub action run before webb-ben@1ed640e fixed the shared query types https://github.com/webb-ben/pygeoapi/actions/runs/15880865957/job/44780554060
I added a regression test to
tests/test_base_provider.py, which might not be the appropriate place for BaseEDR provider tests. I also had to patchtest_load_and_prepare_item_missing_geojson_partsto get the base provider test passing. This file is now included in the CI testing. Here is the failed run before the patch of the unrelated test: https://github.com/webb-ben/pygeoapi/actions/runs/15880766482/job/44780212119This removes
BaseEDRProvider.registerso any external EDR plugins will need to updated remove the deprecated function.Dependency policy (RFC2)
Updates to public demo
Contributions and licensing
(as per https://github.com/geopython/pygeoapi/blob/master/CONTRIBUTING.md#contributions-and-licensing)