Releases: shapely/shapely
2.0.6
Wheels are available for Python 3.13 (and still include GEOS 3.11.4).
Bug fixes:
- Fix compatibility with NumPy 2.1.0 (#2099).
For a full changelog, see https://shapely.readthedocs.io/en/latest/release/2.x.html#version-2-0-6
2.0.5
Binary wheels on PyPI include GEOS 3.11.4 from 2024-06-05. Furthermore, universal2 wheels are removed for macOS since both x86_64 and arm64 wheels are provided.
Bug fixes:
- Fix Point x/y/z attributes to return Python floats (#2074).
- Fix affinity for Apple silicon with NumPy 2.0 by reverting matmul, and use direct matrix multiplication instead (#2085).
For a full changelog, see https://shapely.readthedocs.io/en/latest/release/2.x.html#version-2-0-5
2.0.4
Wheels for Python versions >= 3.9 will be compatible with the upcoming NumPy 2.0 release (as well as with supported NumPy 1.x versions).
Bug fixes:
- Fix bug in
to_wkt
with multiple empty Z geometries (#2012). - Fix bug in
to_ragged_array
for an array of Points with missing values (#2034).
For a full changelog, see https://shapely.readthedocs.io/en/latest/release/2.x.html#version-2-0-4
2.0.3
Bug fixes:
- Fix regression in the
oriented_envelope
ufunc to accept array-like input in case of GEOS<3.12 (#1929).
Packaging related:
- The binary wheels are not yet compatible with a future NumPy 2.0 release, therefore a
numpy<2
upper pin was added to the requirements (#1972). - Upgraded the GEOS version in the binary wheel distributions to 3.11.3.
For a full changelog , see https://shapely.readthedocs.io/en/latest/release/2.x.html#version-2-0-3
2.0.2
Bug fixes:
- Fix regression in the (in)equality comparison (
geom1 == geom2
) using__eq__
to
not ignore the z-coordinates (#1732). - Fix
MultiPolygon()
constructor to accept polygons without holes (#1850). - Fix
minimum_rotated_rectangle
(oriented_envelope
) to always return
the minimum area solution (instead of minimum width). In practice, it will use the
GEOS implementation only for GEOS 3.12+, and for older GEOS versions fall back to the
implementation that was included in Shapely < 2 (#1670). - Fix
from_ragged_array
to work with read-only array input (#1744). - Fix the handling of z coordinates
shapely.ops.substring
(#1699).
Wheels are available for Python 3.12 (and still include GEOS 3.11.2). Building
from source is now compatible with Cython 3.
For a full changelog , see https://shapely.readthedocs.io/en/latest/release/2.x.html#version-2-0-2
2.0.1
Bug fixes:
- Fix regression in the
Polygon()
constructor taking a sequence of Points (#1662). - Fix regression in the geometry constructors when passing
decimal.Decimal
coordinate values (#1707). - Fix
STRtree()
to not make the passed geometry array immutable as side-effect of the constructor (#1714). - Fix the
directed
keyword inshapely.ops.linemerge()
(#1695).
Improvements:
- Expose the function to get a matplotlib Patch object from a (Multi)Polygon (without already plotting it) publicly as :func:
shapely.plotting.patch_from_polygon
(#1704).
For a full changelog, see https://shapely.readthedocs.io/en/latest/release/2.x.html#version-2-0-1
2.0.0
Shapely version 2.0.0 is a major release featuring a complete refactor of the internals and new vectorized (element-wise) array operations providing considerable performance improvements.
For a full changelog, see https://shapely.readthedocs.io/en/latest/release/2.x.html#version-2-0-0
Relevant changes in behaviour compared to 2.0rc3:
- Added temporary support for unpickling shapely<2.0 geometries.
2.0rc3
Version 2.0 rc 3
2.0rc2
Version 2.0 rc 2
2.0rc1
Relevant changes in behaviour compared to 2.0b2:
- The
Point(..)
constructor no longer accepts a sequence of coordinates consisting of more than one coordinate pair (previously, subsequent coordinates were ignored) (#1600). - Fix performance regression in the
LineString()
constructor when passing a numpy array of coordinates (#1602).
Wheels for 2.0rc1 published on PyPI include GEOS 3.11.1.