geopython / pycsw

pycsw is an OGC CSW server implementation written in Python. pycsw fully implements the OpenGIS Catalogue Service Implementation Specification [Catalogue Service for the Web]. Initial development started in 2010 (more formally announced in 2011). The project is certified OGC Compliant, and is an OGC Reference Implementation. pycsw allows for the publishing and discovery of geospatial metadata via numerous APIs (CSW 2/CSW 3, OpenSearch, OAI-PMH, SRU). Existing repositories of geospatial metadata can also be exposed, providing a standards-based metadata and catalogue component of spatial data infrastructures. pycsw is Open Source, released under an MIT license, and runs on all major platforms (Windows, Linux, Mac OS X). Please read the docs at https://pycsw.org/docs for more information.
https://pycsw.org
MIT License
197 stars 153 forks source link

fix parse of nested multiple binary ops (#782) #932

Closed barelsh closed 6 months ago

barelsh commented 6 months ago

Overview

Bug fix - binary operations parsed incorrectly when used multiple times in a nested constraint

Related Issue / Discussion

Issue #782

Additional Information

The inner queries list was not clened between iterations, so the expressions were appended on the previous iterations' expressions, resulting in a wrong SQL query built. (first properties were duplicated into the second condition)

Contributions and Licensing

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

kalxas commented 6 months ago

Thank you @barelsh for your contribution. We will review in the following days