geopandas / pyogrio

Vectorized vector I/O using OGR
https://pyogrio.readthedocs.io
MIT License
260 stars 22 forks source link

Add total_bounds of layer to `read_info` #281

Closed theroggy closed 9 months ago

theroggy commented 10 months ago

I made force_feature_count default to False, which is a breaking change for eg. geojson: will return -1 for read_info()["features"] now by default because determining number features is not fast for this file type. Not sure if this is OK? If OK, I'll add it as a breaking change in the changelog.

closes #274

theroggy commented 10 months ago

What do you think about exposing a couple items to the capabilities list as well as suggested in 274:

  • fast_total_bounds: OGR_L_TestCapability(ogr_layer, OLCFastGetExtent)
  • fast_feature_count: OGR_L_TestCapability(ogr_layer, OLCFastFeatureCount)

Oops, forgot that one... Added them. Apparently the existing capabilities there had value 0 or 1, which isn't ideal I think? So I changed them to boolean.

I'm OK with adding a breaking change for counts for GeoJSON data sources for read_info; this keeps us closer in parity to the underlying driver's capabilities.

Done. The capabilities weren't documented anywhere yet (now i mention them in the read_info doc), but to be clear I also added a breaking change to clarify that they are now booleans.