mirror of
https://github.com/owncloud/ocis
synced 2026-04-25 17:25:21 +02:00
Add NumericRestrictionNode to the KQL PEG grammar so that range operators work with numeric values, not just DateTimes. This enables queries like `size>=1048576`, `photo.iso>=100`, `photo.fNumber>=2.8`, and `photo.focalLength<50`. Changes: - ast: add NumericNode with Key, Operator, Value (float64) - kql/dictionary.peg: add NumericRestrictionNode and Number rules - kql/factory.go: add buildNumericNode() - kql/cast.go: add toFloat64() - bleve/compiler.go: compile NumericNode to NumericRangeQuery Fixes: #12093 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
525 B
525 B
Enhancement: Support numeric range queries in KQL
The KQL parser now supports numeric range queries using comparison
operators (>=, <=, >, <) on numeric fields. Previously, range operators
only worked with DateTime values, causing queries like size>=1048576
or photo.iso>=100 to silently fail by falling through to free-text
search.
Affected numeric fields: Size, photo.iso, photo.fNumber, photo.focalLength, photo.orientation.
https://github.com/owncloud/ocis/pull/12094 https://github.com/owncloud/ocis/issues/12093