geopython / pygeoapi

pygeoapi is a Python server implementation of the OGC API suite of standards. The project emerged as part of the next generation OGC API efforts in 2018 and provides the capability for organizations to deploy a RESTful OGC API endpoint using OpenAPI, GeoJSON, and HTML. pygeoapi is open source and released under an MIT license.
https://pygeoapi.io
MIT License
490 stars 260 forks source link

Revert pydantic models to v1 version #1584

Closed francbartoli closed 6 months ago

francbartoli commented 7 months ago

Overview

This PR addresses the issue with pydantic v2 which doesn't allow to cut a release as per our dependency policy (RFC2).

Please be aware that this is a breaking change for all downstream projects which are using pygeoapi as a dependent library together with pydantic-settings like fastgeoapi. pydantic-settings is only compatible with pydantic>2.0. The plan is to move back to pydantic v2 as soon as it will be released as debian package and then remove it as a dependency in favor of dataclasses and the approach with duck typing pattern as per meeting notes. Here the progress of the request.

Related Issue / discussion

1573

Additional information

Dependency policy (RFC2)

Updates to public demo

Contributions and licensing

(as per https://github.com/geopython/pygeoapi/blob/master/CONTRIBUTING.md#contributions-and-licensing)

kalxas commented 6 months ago

This looks great @francbartoli Thank you!

francbartoli commented 6 months ago

I would wait to merge @kalxas, I'd like to add more tests for the models so that it would be easier to do the next steps

kalxas commented 6 months ago

ok, I will wait

francbartoli commented 6 months ago

@kalxas @tomkralidis, it is now ready for review/merge