Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 3.0.0 #381

Closed
Roel opened this issue Mar 28, 2023 · 1 comment
Closed

Release 3.0.0 #381

Roel opened this issue Mar 28, 2023 · 1 comment
Milestone

Comments

@Roel
Copy link
Member

Roel commented Mar 28, 2023

Changelog for the upcoming 3.0.0 release:

  • News

    • This version drops support for Python 3.7.
    • This version adds support for Python 3.11.
    • This version is supported on Python 3.8, 3.9, 3.10 and 3.11.
  • Breaking changes

    • pydov3 uses WFS 2.0.0 instead of WFS 1.1.0, as a consequence attribute filters should now use FES2.0 and location filters should now use GML3.2. This change impacts a number of places:

      • query parameter in the pydov.search.abstract.AbstractSearch.search method

        Attribute query operators, like PropertyIsEqualTo, PropertyIsGreaterThan and so on, should from now on be imported from the owslib.fes2 package instead of the owslib.fes package. E.g.:

         # change this
         from owslib.fes import And, PropertyIsEqualTo
        
         # into this
         from owslib.fes2 import And, PropertyIsEqualTo
      • sort_by parameter in the pydov.search.abstract.AbstractSearch.search method

        Also the SortBy operator should from now on be imported from the the owslib.fes2 package instead of the owslib.fes package. E.g.:

          # change this
          from owslib.fes import SortBy, SortProperty
        
          # into this
          from owslib.fes2 import SortBy, SortProperty
      • The pydov.util.location.GmlObject class now expects GML3.2 geometries instead of GML3.1.1.

        Use GML3.2 objects from now on.

      • The pydov.util.location.GmlFilter class now expects GML3.2 documents instead of GML3.1.1.

        Transform the document to GML3.2 yourself or use a pydov.util.location.GeometryFilter instead.

    • The new WFS 2.0.0 querying also allows paged WFS requests which has impact on a number of hooks:

      • pydov.util.hooks.AbstractReadHook.wfs_search_init` now has a single argument params with all the parameters used to initiate the WFS search.

      • pydov.util.hooks.AbstractReadHook.wfs_search_result now has two arguments number_matched and number_returned. Since there can be multiple (paged) WFS results per search, this hook can now be called multiple times per search query. It can also be called simultaneously from different threads.

      • pydov.util.hooks.AbstractReadHook.wfs_search_result_received is affected in a similar manner: this too can now be called multiple times per search, simultaneously from different threads.

      • pydov.util.hooks.AbstractInjectHook.inject_wfs_getfeature_response is affected as well. This too can now be called multiple times per search, simultaneously from different threads.

  • New features

    • Add support for WFS paging, allowing larger queries. It is now possible to execute queries larger than the WFS response feature limit of 10000 features without running into a FeatureOverflowError. (Switch to WFS 2.0.0 #194)

      Please be kind to our infrastructure and only request the data you need.

    • Add support for repeatable sessions, allowing recording and replaying of pydov sessions. More information and use cases can be found in the documentation. (Add data log to save reproducible pydov sessions #224)

  • Fixes and improvements

@Roel Roel added this to the v3.0.0 milestone Mar 28, 2023
@Roel
Copy link
Member Author

Roel commented Apr 4, 2023

Version 3.0.0 is released.

@Roel Roel closed this as completed Apr 4, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant