The main new features in this version are the simplified API, a new geo operation
"apply" and dissolve supporting aggregations on columns now.
Improvements
- Add apply geo operation. Info on how to use it can be found [here](https://geofileops.readthedocs.io/en/latest/api/geofileops.apply.html#geofileops.apply) (41)
- Add support for different aggregations on columns in dissolve operation. Info on how to use it can be found [here](https://geofileops.readthedocs.io/en/latest/api/geofileops.dissolve.html#geofileops.dissolve) (3)
- Simplify API by removing the seperation in geofile versus geofileops (52)
- Improve type annotations and documentation
- Increase test coverage, including tests on latlon files which weren't available yet
(32)
- Improve performance of buffer, simplify and complexhull by using the spatialite/sql
implementation (53)
- Improve benchmarks, eg. add graphs,... (55)
- Improve performance of _harmonize_to_multitype + improve test (56)
Bugs fixed
- In the two-layer operations, in some cases columns could get "lost" in the output file (67)
Deprecations and compatibility notes
- Breaking change: in `gfo.dissolve`, the parameters `aggfunc` and `columns` are
replaced by `agg_columns`. More info on the usage can be found
[here](https://geofileops.readthedocs.io/en/latest/api/geofileops.dissolve.html#geofileops.dissolve).
- Due to flattening the API, using `from geofileops import geofile` and
`from geofileops import geofileops` is deprecated, and you should use eg.
`import geofileops as gfo`. A "FutureWarning" is shown now, in a future version this
possibility will probably be removed.
- The following functions are deprecated. A "FutureWarning" is shown now, in a future
version this function they will be removed:
- `gfo.get_driver(path)` can be replaced by `GeofileType(Path(path)).ogrdriver`.
- `get_driver_for_ext(file_ext: str)` can be replaced by `GeofileType(file_ext).ogrdriver`.
- `gfo.to_multi_type(geometrytypename: str)` can be replaced by `GeometryType(geometrytypename).to_multitype`.
- `gfo.to_generaltypeid(geometrytypename: str)` can be replaced by `GeometryType(geometrytypename).to_primitivetype.value`.