geopandas/geopandas (geopandas)
### [`v1.0.1`](https://togithub.com/geopandas/geopandas/blob/HEAD/CHANGELOG.md#Version-101-July-2-2024)
[Compare Source](https://togithub.com/geopandas/geopandas/compare/v1.0.0...v1.0.1)
Bug fixes:
- Support a named datetime or object dtype index in `explore()` ([#3360](https://togithub.com/geopandas/geopandas/issues/3360), [#3364](https://togithub.com/geopandas/geopandas/issues/3364)).
- Fix a regression preventing a Series as an argument for geometric methods ([#3363](https://togithub.com/geopandas/geopandas/issues/3363))
### [`v1.0.0`](https://togithub.com/geopandas/geopandas/blob/HEAD/CHANGELOG.md#Version-100-June-24-2024)
[Compare Source](https://togithub.com/geopandas/geopandas/compare/v0.14.4...v1.0.0)
Notes on dependencies:
- GeoPandas 1.0 drops support for shapely<2 and PyGEOS. The only geometry engine that is
currently supported is shapely >= 2. As a consequence, spatial indexing based on the
rtree package has also been removed ([#3035](https://togithub.com/geopandas/geopandas/issues/3035)).
- The I/O engine now defaults to Pyogrio which is now installed with GeoPandas instead
of Fiona ([#3223](https://togithub.com/geopandas/geopandas/issues/3223)).
New methods:
- Added `count_geometries` method from shapely to GeoSeries/GeoDataframe ([#3154](https://togithub.com/geopandas/geopandas/issues/3154)).
- Added `count_interior_rings` method from shapely to GeoSeries/GeoDataframe ([#3154](https://togithub.com/geopandas/geopandas/issues/3154))
- Added `relate_pattern` method from shapely to GeoSeries/GeoDataframe ([#3211](https://togithub.com/geopandas/geopandas/issues/3211)).
- Added `intersection_all` method from shapely to GeoSeries/GeoDataframe ([#3228](https://togithub.com/geopandas/geopandas/issues/3228)).
- Added `line_merge` method from shapely to GeoSeries/GeoDataframe ([#3214](https://togithub.com/geopandas/geopandas/issues/3214)).
- Added `set_precision` and `get_precision` methods from shapely to GeoSeries/GeoDataframe ([#3175](https://togithub.com/geopandas/geopandas/issues/3175)).
- Added `count_coordinates` method from shapely to GeoSeries/GeoDataframe ([#3026](https://togithub.com/geopandas/geopandas/issues/3026)).
- Added `minimum_clearance` method from shapely to GeoSeries/GeoDataframe ([#2989](https://togithub.com/geopandas/geopandas/issues/2989)).
- Added `shared_paths` method from shapely to GeoSeries/GeoDataframe ([#3215](https://togithub.com/geopandas/geopandas/issues/3215)).
- Added `is_ccw` method from shapely to GeoSeries/GeoDataframe ([#3027](https://togithub.com/geopandas/geopandas/issues/3027)).
- Added `is_closed` attribute from shapely to GeoSeries/GeoDataframe ([#3092](https://togithub.com/geopandas/geopandas/issues/3092)).
- Added `force_2d` and `force_3d` methods from shapely to GeoSeries/GeoDataframe ([#3090](https://togithub.com/geopandas/geopandas/issues/3090)).
- Added `voronoi_polygons` method from shapely to GeoSeries/GeoDataframe ([#3177](https://togithub.com/geopandas/geopandas/issues/3177)).
- Added `contains_properly` method from shapely to GeoSeries/GeoDataframe ([#3105](https://togithub.com/geopandas/geopandas/issues/3105)).
- Added `build_area` method exposing `build_area` shapely to GeoSeries/GeoDataframe ([#3202](https://togithub.com/geopandas/geopandas/issues/3202)).
- Added `snap` method from shapely to GeoSeries/GeoDataframe ([#3086](https://togithub.com/geopandas/geopandas/issues/3086)).
- Added `transform` method from shapely to GeoSeries/GeoDataFrame ([#3075](https://togithub.com/geopandas/geopandas/issues/3075)).
- Added `get_geometry` method from shapely to GeoSeries/GeoDataframe ([#3287](https://togithub.com/geopandas/geopandas/issues/3287)).
- Added `dwithin` method to check for a "distance within" predicate on
GeoSeries/GeoDataFrame ([#3153](https://togithub.com/geopandas/geopandas/issues/3153)).
- Added `to_geo_dict` method to generate GeoJSON-like dictionary from a GeoDataFrame ([#3132](https://togithub.com/geopandas/geopandas/issues/3132)).
- Added `polygonize` method exposing both `polygonize` and `polygonize_full` from
shapely to GeoSeries/GeoDataframe ([#2963](https://togithub.com/geopandas/geopandas/issues/2963)).
- Added `is_valid_reason` method from shapely to GeoSeries/GeoDataframe ([#3176](https://togithub.com/geopandas/geopandas/issues/3176)).
- Added `to_arrow` method and `from_arrow` class method to
GeoSeries/GeoDataFrame to export and import to/from Arrow data with GeoArrow
extension types ([#3219](https://togithub.com/geopandas/geopandas/issues/3219), [#3301](https://togithub.com/geopandas/geopandas/issues/3301)).
New features and improvements:
- Added `predicate="dwithin"` option and `distance` argument to the `sindex.query()` method
and `sjoin` ([#2882](https://togithub.com/geopandas/geopandas/issues/2882)).
- GeoSeries and GeoDataFrame `__repr__` now trims trailing zeros for a more readable
output ([#3087](https://togithub.com/geopandas/geopandas/issues/3087)).
- Add `on_invalid` parameter to `from_wkt` and `from_wkb` ([#3110](https://togithub.com/geopandas/geopandas/issues/3110)).
- `make_valid` option in `overlay` now uses the `make_valid` method instead of
`buffer(0)` ([#3113](https://togithub.com/geopandas/geopandas/issues/3113)).
- Passing `"geometry"` as `dtype` to `pd.read_csv` will now return a GeoSeries for
the specified columns ([#3101](https://togithub.com/geopandas/geopandas/issues/3101)).
- Added support to `read_file` for the `mask` keyword for the pyogrio engine ([#3062](https://togithub.com/geopandas/geopandas/issues/3062)).
- Added support to `read_file` for the `columns` keyword for the fiona engine ([#3133](https://togithub.com/geopandas/geopandas/issues/3133)).
- Added support to `to_parquet` and `read_parquet` for writing and reading files
using the GeoArrow-based native geometry encoding of GeoParquet 1.1 ([#3253](https://togithub.com/geopandas/geopandas/issues/3253), [#3275](https://togithub.com/geopandas/geopandas/issues/3275)).
- Add `sort` keyword to `clip` method for GeoSeries and GeoDataFrame to allow optional
preservation of the original order of observations ([#3233](https://togithub.com/geopandas/geopandas/issues/3233)).
- Added `show_bbox`, `drop_id` and `to_wgs84` arguments to allow further customization of
`GeoSeries.to_json` ([#3226](https://togithub.com/geopandas/geopandas/issues/3226)).
- `explore` now supports `GeoDataFrame`s with additional columns containing datetimes, uuids and
other non JSON serializable objects ([#3261](https://togithub.com/geopandas/geopandas/issues/3261)).
- The `GeoSeries.fillna` method now supports the `limit` keyword ([#3290](https://togithub.com/geopandas/geopandas/issues/3290)).
- Added `on_attribute` option argument to the `sjoin()`
method, allowing to restrict joins to the observations with
matching attributes. ([#3231](https://togithub.com/geopandas/geopandas/issues/3231))
- Added support for `bbox` covering encoding in geoparquet. Can filter reading of parquet
files based on a bounding box, and write out a bounding box column to parquet files ([#3282](https://togithub.com/geopandas/geopandas/issues/3282)).
- `align` keyword in binary methods now defaults to `None`, treated as True. Explicit True
will silence the warning about mismatched indices ([#3212](https://togithub.com/geopandas/geopandas/issues/3212)).
- `GeoSeries.set_crs` can now be used to remove CRS information by passing
`crs=None, allow_override=True` ([#3316](https://togithub.com/geopandas/geopandas/issues/3316)).
- Added `autolim` keyword argument to `GeoSeries.plot()` and `GeoDataFrame.plot()` ([#2817](https://togithub.com/geopandas/geopandas/issues/2817)).
- Added `metadata` parameter to `GeoDataFrame.to_file` ([#2850](https://togithub.com/geopandas/geopandas/issues/2850))
- Updated documentation to clarify that passing a named (Geo)Series as the `geometry`
argument to the GeoDataFrame constructor will not use the name but will always
produce a GeoDataFrame with an active geometry column named "geometry" ([#3337](https://togithub.com/geopandas/geopandas/issues/3337)).
- `read_postgis` will query the spatial_ref_sys table to determine the CRS authority
instead of its current behaviour of assuming EPSG. In the event the spiatal_ref_sys
table is not present, or the SRID is not present, `read_postgis` will fallback
on assuming EPSG CRS authority. ([#3329](https://togithub.com/geopandas/geopandas/issues/3329))
Backwards incompatible API changes:
- The `sjoin` method will now preserve the name of the index of the right
GeoDataFrame, if it has one, instead of always using `"index_right"` as the
name for the resulting column in the return value ([#846](https://togithub.com/geopandas/geopandas/issues/846), [#2144](https://togithub.com/geopandas/geopandas/issues/2144)).
- GeoPandas now raises a ValueError when an unaligned Series is passed as a method
argument to avoid confusion of whether the automatic alignment happens or not ([#3271](https://togithub.com/geopandas/geopandas/issues/3271)).
- The deprecated default value of GeoDataFrame/ GeoSeries `explode(.., index_parts=True)` is now
set to false for consistency with pandas ([#3174](https://togithub.com/geopandas/geopandas/issues/3174)).
- The behaviour of `set_geometry` has been changed when passed a (Geo)Series `ser` with a name.
The new active geometry column name in this case will be `ser.name`, if not None, rather than
the previous active geometry column name. This means that if the new and old names are
different, then both columns will be preserved in the GeoDataFrame. To replicate the previous
behaviour, you can instead call `gdf.set_geometry(ser.rename(gdf.active_geometry_name))` ([#3237](https://togithub.com/geopandas/geopandas/issues/3237)).
Note that this behaviour change does not affect the `GeoDataframe` constructor, passing a named
GeoSeries `ser` to `GeoDataFrame(df, geometry=ser)` will always produce a GeoDataFrame with a
geometry column named "geometry" to preserve backwards compatibility. If you would like to
instead propagate the name of `ser` when constructing a GeoDataFrame, you can instead call
`df.set_geometry(ser)` or `GeoDataFrame(df, geometry=ser).rename_geometry(ser.name)` ([#3337](https://togithub.com/geopandas/geopandas/issues/3337)).
- `delaunay_triangles` now considers all geometries together when creating the Delaunay triangulation
instead of performing the operation element-wise. If you want to generate Delaunay
triangles for each geometry separately, use `shapely.delaunay_triangles` instead. ([#3273](https://togithub.com/geopandas/geopandas/issues/3273))
- Reading a data source that does not have a geometry field using `read_file`
now returns a Pandas DataFrame instead of a GeoDataFrame with an empty
`geometry` column.
Enforced deprecations:
- The deprecation of `geopandas.datasets` has been enforced and the module has been
removed. New sample datasets are now available in the
[geodatasets](https://geodatasets.readthedocs.io/en/latest/) package ([#3084](https://togithub.com/geopandas/geopandas/issues/3084)).
- Many longstanding deprecated functions, methods and properties have been removed ([#3174](https://togithub.com/geopandas/geopandas/issues/3174)), ([#3190](https://togithub.com/geopandas/geopandas/issues/3190))
- Removed deprecated functions
`geopandas.io.read_file`, `geopandas.io.to_file` and `geopandas.io.sql.read_postgis`.
`geopandas.read_file`, `geopandas.read_postgis` and the GeoDataFrame/GeoSeries `to_file(..)`
method should be used instead.
- Removed deprecated `GeometryArray.data` property, `np.asarray(..)` or the `to_numpy()`
method should be used instead.
- Removed deprecated `sindex.query_bulk` method, using `sindex.query` instead.
- Removed deprecated `sjoin` parameter `op`, `predicate` should be supplied instead.
- Removed deprecated GeoSeries/ GeoDataFrame methods `__xor__`, `__or__`, `__and__` and
`__sub__`. Instead use methods `symmetric_difference`, `union`, `intersection` and
`difference` respectively.
- Removed deprecated plotting functions `plot_polygon_collection`,
`plot_linestring_collection` and `plot_point_collection`, use the GeoSeries/GeoDataFrame `.plot`
method directly instead.
- Removed deprecated GeoSeries/GeoDataFrame `.plot` parameters `axes` and `colormap`, instead use
`ax` and `cmap` respectively.
- Removed compatibility for specifying the `version` keyword in `to_parquet` and `to_feather`.
This keyword will now be passed through to pyarrow and use `schema_version` to specify the GeoParquet specification version ([#3334](https://togithub.com/geopandas/geopandas/issues/3334)).
New deprecations:
- `unary_union` attribute is now deprecated and replaced by the `union_all()` method ([#3007](https://togithub.com/geopandas/geopandas/issues/3007)) allowing
opting for a faster union algorithm for coverages ([#3151](https://togithub.com/geopandas/geopandas/issues/3151)).
- The `include_fields` and `ignore_fields` keywords in `read_file()` are deprecated
for the default pyogrio engine. Currently those are translated to the `columns` keyword
for backwards compatibility, but you should directly use the `columns` keyword instead
to select which columns to read ([#3133](https://togithub.com/geopandas/geopandas/issues/3133)).
- The `drop` keyword in `set_geometry` has been deprecated, and in future the `drop=True`
behaviour will be removed ([#3237](https://togithub.com/geopandas/geopandas/issues/3237)). To prepare for this change, you should remove any explicit
`drop=False` calls in your code (the default behaviour already is the same as `drop=False`).
To replicate the previous `drop=True` behaviour you should replace
`gdf.set_geometry(new_geo_col, drop=True)` with
```python
geo_col_name = gdf.active_geometry_name
gdf.set_geometry(new_geo_col).drop(columns=geo_col_name).rename_geometry(geo_col_name)
```
- The `geopandas.use_pygeos` option has been deprecated and will be removed in GeoPandas
1.1 ([#3283](https://togithub.com/geopandas/geopandas/issues/3283))
- Manual overriding of an existing CRS of a GeoSeries or GeoDataFrame by setting the `crs` property has been deprecated
and will be disabled in future. Use the `set_crs()` method instead ([#3085](https://togithub.com/geopandas/geopandas/issues/3085)).
Bug fixes:
- Fix `GeoDataFrame.merge()` incorrectly returning a `DataFrame` instead of a
`GeoDataFrame` when the `suffixes` argument is applied to the active
geometry column ([#2933](https://togithub.com/geopandas/geopandas/issues/2933)).
- Fix bug in `GeoDataFrame` constructor where if `geometry` is given a named
`GeoSeries` the name was not used as the active geometry column name ([#3237](https://togithub.com/geopandas/geopandas/issues/3237)).
- Fix bug in `GeoSeries` constructor when passing a Series and specifying a `crs` to not change the original input data ([#2492](https://togithub.com/geopandas/geopandas/issues/2492)).
- Fix regression preventing reading from file paths containing hashes in `read_file`
with the fiona engine ([#3280](https://togithub.com/geopandas/geopandas/issues/3280)). An analgous fix for pyogrio is included in
pyogrio 0.8.1.
- Fix `to_parquet` to write correct metadata in case of 3D geometries ([#2824](https://togithub.com/geopandas/geopandas/issues/2824)).
- Fixes for compatibility with psycopg ([#3167](https://togithub.com/geopandas/geopandas/issues/3167)).
- Fix to allow appending dataframes with no CRS to PostGIS tables with no CRS ([#3328](https://togithub.com/geopandas/geopandas/issues/3328))
- Fix plotting of all-empty GeoSeries using `explore` ([#3316](https://togithub.com/geopandas/geopandas/issues/3316)).
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR contains the following updates:
^0.14.0
->^1.0.0
Release Notes
geopandas/geopandas (geopandas)
### [`v1.0.1`](https://togithub.com/geopandas/geopandas/blob/HEAD/CHANGELOG.md#Version-101-July-2-2024) [Compare Source](https://togithub.com/geopandas/geopandas/compare/v1.0.0...v1.0.1) Bug fixes: - Support a named datetime or object dtype index in `explore()` ([#3360](https://togithub.com/geopandas/geopandas/issues/3360), [#3364](https://togithub.com/geopandas/geopandas/issues/3364)). - Fix a regression preventing a Series as an argument for geometric methods ([#3363](https://togithub.com/geopandas/geopandas/issues/3363)) ### [`v1.0.0`](https://togithub.com/geopandas/geopandas/blob/HEAD/CHANGELOG.md#Version-100-June-24-2024) [Compare Source](https://togithub.com/geopandas/geopandas/compare/v0.14.4...v1.0.0) Notes on dependencies: - GeoPandas 1.0 drops support for shapely<2 and PyGEOS. The only geometry engine that is currently supported is shapely >= 2. As a consequence, spatial indexing based on the rtree package has also been removed ([#3035](https://togithub.com/geopandas/geopandas/issues/3035)). - The I/O engine now defaults to Pyogrio which is now installed with GeoPandas instead of Fiona ([#3223](https://togithub.com/geopandas/geopandas/issues/3223)). New methods: - Added `count_geometries` method from shapely to GeoSeries/GeoDataframe ([#3154](https://togithub.com/geopandas/geopandas/issues/3154)). - Added `count_interior_rings` method from shapely to GeoSeries/GeoDataframe ([#3154](https://togithub.com/geopandas/geopandas/issues/3154)) - Added `relate_pattern` method from shapely to GeoSeries/GeoDataframe ([#3211](https://togithub.com/geopandas/geopandas/issues/3211)). - Added `intersection_all` method from shapely to GeoSeries/GeoDataframe ([#3228](https://togithub.com/geopandas/geopandas/issues/3228)). - Added `line_merge` method from shapely to GeoSeries/GeoDataframe ([#3214](https://togithub.com/geopandas/geopandas/issues/3214)). - Added `set_precision` and `get_precision` methods from shapely to GeoSeries/GeoDataframe ([#3175](https://togithub.com/geopandas/geopandas/issues/3175)). - Added `count_coordinates` method from shapely to GeoSeries/GeoDataframe ([#3026](https://togithub.com/geopandas/geopandas/issues/3026)). - Added `minimum_clearance` method from shapely to GeoSeries/GeoDataframe ([#2989](https://togithub.com/geopandas/geopandas/issues/2989)). - Added `shared_paths` method from shapely to GeoSeries/GeoDataframe ([#3215](https://togithub.com/geopandas/geopandas/issues/3215)). - Added `is_ccw` method from shapely to GeoSeries/GeoDataframe ([#3027](https://togithub.com/geopandas/geopandas/issues/3027)). - Added `is_closed` attribute from shapely to GeoSeries/GeoDataframe ([#3092](https://togithub.com/geopandas/geopandas/issues/3092)). - Added `force_2d` and `force_3d` methods from shapely to GeoSeries/GeoDataframe ([#3090](https://togithub.com/geopandas/geopandas/issues/3090)). - Added `voronoi_polygons` method from shapely to GeoSeries/GeoDataframe ([#3177](https://togithub.com/geopandas/geopandas/issues/3177)). - Added `contains_properly` method from shapely to GeoSeries/GeoDataframe ([#3105](https://togithub.com/geopandas/geopandas/issues/3105)). - Added `build_area` method exposing `build_area` shapely to GeoSeries/GeoDataframe ([#3202](https://togithub.com/geopandas/geopandas/issues/3202)). - Added `snap` method from shapely to GeoSeries/GeoDataframe ([#3086](https://togithub.com/geopandas/geopandas/issues/3086)). - Added `transform` method from shapely to GeoSeries/GeoDataFrame ([#3075](https://togithub.com/geopandas/geopandas/issues/3075)). - Added `get_geometry` method from shapely to GeoSeries/GeoDataframe ([#3287](https://togithub.com/geopandas/geopandas/issues/3287)). - Added `dwithin` method to check for a "distance within" predicate on GeoSeries/GeoDataFrame ([#3153](https://togithub.com/geopandas/geopandas/issues/3153)). - Added `to_geo_dict` method to generate GeoJSON-like dictionary from a GeoDataFrame ([#3132](https://togithub.com/geopandas/geopandas/issues/3132)). - Added `polygonize` method exposing both `polygonize` and `polygonize_full` from shapely to GeoSeries/GeoDataframe ([#2963](https://togithub.com/geopandas/geopandas/issues/2963)). - Added `is_valid_reason` method from shapely to GeoSeries/GeoDataframe ([#3176](https://togithub.com/geopandas/geopandas/issues/3176)). - Added `to_arrow` method and `from_arrow` class method to GeoSeries/GeoDataFrame to export and import to/from Arrow data with GeoArrow extension types ([#3219](https://togithub.com/geopandas/geopandas/issues/3219), [#3301](https://togithub.com/geopandas/geopandas/issues/3301)). New features and improvements: - Added `predicate="dwithin"` option and `distance` argument to the `sindex.query()` method and `sjoin` ([#2882](https://togithub.com/geopandas/geopandas/issues/2882)). - GeoSeries and GeoDataFrame `__repr__` now trims trailing zeros for a more readable output ([#3087](https://togithub.com/geopandas/geopandas/issues/3087)). - Add `on_invalid` parameter to `from_wkt` and `from_wkb` ([#3110](https://togithub.com/geopandas/geopandas/issues/3110)). - `make_valid` option in `overlay` now uses the `make_valid` method instead of `buffer(0)` ([#3113](https://togithub.com/geopandas/geopandas/issues/3113)). - Passing `"geometry"` as `dtype` to `pd.read_csv` will now return a GeoSeries for the specified columns ([#3101](https://togithub.com/geopandas/geopandas/issues/3101)). - Added support to `read_file` for the `mask` keyword for the pyogrio engine ([#3062](https://togithub.com/geopandas/geopandas/issues/3062)). - Added support to `read_file` for the `columns` keyword for the fiona engine ([#3133](https://togithub.com/geopandas/geopandas/issues/3133)). - Added support to `to_parquet` and `read_parquet` for writing and reading files using the GeoArrow-based native geometry encoding of GeoParquet 1.1 ([#3253](https://togithub.com/geopandas/geopandas/issues/3253), [#3275](https://togithub.com/geopandas/geopandas/issues/3275)). - Add `sort` keyword to `clip` method for GeoSeries and GeoDataFrame to allow optional preservation of the original order of observations ([#3233](https://togithub.com/geopandas/geopandas/issues/3233)). - Added `show_bbox`, `drop_id` and `to_wgs84` arguments to allow further customization of `GeoSeries.to_json` ([#3226](https://togithub.com/geopandas/geopandas/issues/3226)). - `explore` now supports `GeoDataFrame`s with additional columns containing datetimes, uuids and other non JSON serializable objects ([#3261](https://togithub.com/geopandas/geopandas/issues/3261)). - The `GeoSeries.fillna` method now supports the `limit` keyword ([#3290](https://togithub.com/geopandas/geopandas/issues/3290)). - Added `on_attribute` option argument to the `sjoin()` method, allowing to restrict joins to the observations with matching attributes. ([#3231](https://togithub.com/geopandas/geopandas/issues/3231)) - Added support for `bbox` covering encoding in geoparquet. Can filter reading of parquet files based on a bounding box, and write out a bounding box column to parquet files ([#3282](https://togithub.com/geopandas/geopandas/issues/3282)). - `align` keyword in binary methods now defaults to `None`, treated as True. Explicit True will silence the warning about mismatched indices ([#3212](https://togithub.com/geopandas/geopandas/issues/3212)). - `GeoSeries.set_crs` can now be used to remove CRS information by passing `crs=None, allow_override=True` ([#3316](https://togithub.com/geopandas/geopandas/issues/3316)). - Added `autolim` keyword argument to `GeoSeries.plot()` and `GeoDataFrame.plot()` ([#2817](https://togithub.com/geopandas/geopandas/issues/2817)). - Added `metadata` parameter to `GeoDataFrame.to_file` ([#2850](https://togithub.com/geopandas/geopandas/issues/2850)) - Updated documentation to clarify that passing a named (Geo)Series as the `geometry` argument to the GeoDataFrame constructor will not use the name but will always produce a GeoDataFrame with an active geometry column named "geometry" ([#3337](https://togithub.com/geopandas/geopandas/issues/3337)). - `read_postgis` will query the spatial_ref_sys table to determine the CRS authority instead of its current behaviour of assuming EPSG. In the event the spiatal_ref_sys table is not present, or the SRID is not present, `read_postgis` will fallback on assuming EPSG CRS authority. ([#3329](https://togithub.com/geopandas/geopandas/issues/3329)) Backwards incompatible API changes: - The `sjoin` method will now preserve the name of the index of the right GeoDataFrame, if it has one, instead of always using `"index_right"` as the name for the resulting column in the return value ([#846](https://togithub.com/geopandas/geopandas/issues/846), [#2144](https://togithub.com/geopandas/geopandas/issues/2144)). - GeoPandas now raises a ValueError when an unaligned Series is passed as a method argument to avoid confusion of whether the automatic alignment happens or not ([#3271](https://togithub.com/geopandas/geopandas/issues/3271)). - The deprecated default value of GeoDataFrame/ GeoSeries `explode(.., index_parts=True)` is now set to false for consistency with pandas ([#3174](https://togithub.com/geopandas/geopandas/issues/3174)). - The behaviour of `set_geometry` has been changed when passed a (Geo)Series `ser` with a name. The new active geometry column name in this case will be `ser.name`, if not None, rather than the previous active geometry column name. This means that if the new and old names are different, then both columns will be preserved in the GeoDataFrame. To replicate the previous behaviour, you can instead call `gdf.set_geometry(ser.rename(gdf.active_geometry_name))` ([#3237](https://togithub.com/geopandas/geopandas/issues/3237)). Note that this behaviour change does not affect the `GeoDataframe` constructor, passing a named GeoSeries `ser` to `GeoDataFrame(df, geometry=ser)` will always produce a GeoDataFrame with a geometry column named "geometry" to preserve backwards compatibility. If you would like to instead propagate the name of `ser` when constructing a GeoDataFrame, you can instead call `df.set_geometry(ser)` or `GeoDataFrame(df, geometry=ser).rename_geometry(ser.name)` ([#3337](https://togithub.com/geopandas/geopandas/issues/3337)). - `delaunay_triangles` now considers all geometries together when creating the Delaunay triangulation instead of performing the operation element-wise. If you want to generate Delaunay triangles for each geometry separately, use `shapely.delaunay_triangles` instead. ([#3273](https://togithub.com/geopandas/geopandas/issues/3273)) - Reading a data source that does not have a geometry field using `read_file` now returns a Pandas DataFrame instead of a GeoDataFrame with an empty `geometry` column. Enforced deprecations: - The deprecation of `geopandas.datasets` has been enforced and the module has been removed. New sample datasets are now available in the [geodatasets](https://geodatasets.readthedocs.io/en/latest/) package ([#3084](https://togithub.com/geopandas/geopandas/issues/3084)). - Many longstanding deprecated functions, methods and properties have been removed ([#3174](https://togithub.com/geopandas/geopandas/issues/3174)), ([#3190](https://togithub.com/geopandas/geopandas/issues/3190)) - Removed deprecated functions `geopandas.io.read_file`, `geopandas.io.to_file` and `geopandas.io.sql.read_postgis`. `geopandas.read_file`, `geopandas.read_postgis` and the GeoDataFrame/GeoSeries `to_file(..)` method should be used instead. - Removed deprecated `GeometryArray.data` property, `np.asarray(..)` or the `to_numpy()` method should be used instead. - Removed deprecated `sindex.query_bulk` method, using `sindex.query` instead. - Removed deprecated `sjoin` parameter `op`, `predicate` should be supplied instead. - Removed deprecated GeoSeries/ GeoDataFrame methods `__xor__`, `__or__`, `__and__` and `__sub__`. Instead use methods `symmetric_difference`, `union`, `intersection` and `difference` respectively. - Removed deprecated plotting functions `plot_polygon_collection`, `plot_linestring_collection` and `plot_point_collection`, use the GeoSeries/GeoDataFrame `.plot` method directly instead. - Removed deprecated GeoSeries/GeoDataFrame `.plot` parameters `axes` and `colormap`, instead use `ax` and `cmap` respectively. - Removed compatibility for specifying the `version` keyword in `to_parquet` and `to_feather`. This keyword will now be passed through to pyarrow and use `schema_version` to specify the GeoParquet specification version ([#3334](https://togithub.com/geopandas/geopandas/issues/3334)). New deprecations: - `unary_union` attribute is now deprecated and replaced by the `union_all()` method ([#3007](https://togithub.com/geopandas/geopandas/issues/3007)) allowing opting for a faster union algorithm for coverages ([#3151](https://togithub.com/geopandas/geopandas/issues/3151)). - The `include_fields` and `ignore_fields` keywords in `read_file()` are deprecated for the default pyogrio engine. Currently those are translated to the `columns` keyword for backwards compatibility, but you should directly use the `columns` keyword instead to select which columns to read ([#3133](https://togithub.com/geopandas/geopandas/issues/3133)). - The `drop` keyword in `set_geometry` has been deprecated, and in future the `drop=True` behaviour will be removed ([#3237](https://togithub.com/geopandas/geopandas/issues/3237)). To prepare for this change, you should remove any explicit `drop=False` calls in your code (the default behaviour already is the same as `drop=False`). To replicate the previous `drop=True` behaviour you should replace `gdf.set_geometry(new_geo_col, drop=True)` with ```python geo_col_name = gdf.active_geometry_name gdf.set_geometry(new_geo_col).drop(columns=geo_col_name).rename_geometry(geo_col_name) ``` - The `geopandas.use_pygeos` option has been deprecated and will be removed in GeoPandas 1.1 ([#3283](https://togithub.com/geopandas/geopandas/issues/3283)) - Manual overriding of an existing CRS of a GeoSeries or GeoDataFrame by setting the `crs` property has been deprecated and will be disabled in future. Use the `set_crs()` method instead ([#3085](https://togithub.com/geopandas/geopandas/issues/3085)). Bug fixes: - Fix `GeoDataFrame.merge()` incorrectly returning a `DataFrame` instead of a `GeoDataFrame` when the `suffixes` argument is applied to the active geometry column ([#2933](https://togithub.com/geopandas/geopandas/issues/2933)). - Fix bug in `GeoDataFrame` constructor where if `geometry` is given a named `GeoSeries` the name was not used as the active geometry column name ([#3237](https://togithub.com/geopandas/geopandas/issues/3237)). - Fix bug in `GeoSeries` constructor when passing a Series and specifying a `crs` to not change the original input data ([#2492](https://togithub.com/geopandas/geopandas/issues/2492)). - Fix regression preventing reading from file paths containing hashes in `read_file` with the fiona engine ([#3280](https://togithub.com/geopandas/geopandas/issues/3280)). An analgous fix for pyogrio is included in pyogrio 0.8.1. - Fix `to_parquet` to write correct metadata in case of 3D geometries ([#2824](https://togithub.com/geopandas/geopandas/issues/2824)). - Fixes for compatibility with psycopg ([#3167](https://togithub.com/geopandas/geopandas/issues/3167)). - Fix to allow appending dataframes with no CRS to PostGIS tables with no CRS ([#3328](https://togithub.com/geopandas/geopandas/issues/3328)) - Fix plotting of all-empty GeoSeries using `explore` ([#3316](https://togithub.com/geopandas/geopandas/issues/3316)).Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.