Releases: pygeos/pygeos
Releases · pygeos/pygeos
0.14
0.13
Version 0.13
0.12.0
Version 0.12.0
0.11.1
Version 0.11.1
0.10.2
Version 0.10.2
0.10.2a2
Version 0.10.2a2
0.10.2a1
Version 0.10.2a1
0.10.1
Version 0.10.1 (2021-07-06)
Bug fixes
- Fixed the
boxandset_precisionfunctions with numpy 1.21 (#367). - Fixed
STRtreecreation to allow querying the tree in a multi-threaded
context (#361).
Acknowledgements
Thanks to everyone who contributed to this release!
People with a "+" by their names contributed a patch for the first time.
- Brendan Ward
- Casper van der Wel
- Joris Van den Bossche
Version 0.10
Version 0.10 (2021-05-18)
Major enhancements
- Addition of
nearestandnearest_allfunctions toSTRtreefor
GEOS >= 3.6 to find the nearest neighbors (#272). - Enable bulk construction of geometries with different number of coordinates
by optionally taking index arrays in all creation functions (#230, #322, #326, #346). - Released the GIL in all geometry creation functions (#310, #326).
- Added the option to return the geometry index in
get_coordinates(#318). - Added the
get_ringsfunction, similar asget_partsbut specifically
to extract the rings of Polygon geometries (#342). - Updated
boxufunc to use internal C function for creating polygon
(about 2x faster) and addedccwparameter to create polygon in
counterclockwise (default) or clockwise direction (#308). - Added
to_shapelyand improved performance offrom_shapelyin the case
GEOS versions are different (#312).
API Changes
- STRtree default leaf size is now 10 instead of 5, for somewhat better performance
under normal conditions (#286) - Deprecated
VALID_PREDICATESset frompygeos.strtreepackage; these can be constructed
in downstream libraries using thepygeos.strtree.BinaryPredicateenum.
This will be removed in a future release. points,linestrings,linearrings, andpolygonsnow return aGEOSException
instead of aValueErrororTypeErrorfor invalid input (#310, #326).- Addition of
on_invalidparameter tofrom_wkbandfrom_wktto
optionally return invalid WKB geometries asNone. - Removed the (internal) function
lib.polygons_without_holesand renamed
lib.polygons_with_holestolib.polygons(#326). polygonswill now return an empty polygon forNoneinputs (#346).- Removed compatibility with Python 3.5 (#341).
Added GEOS functions
- Addition of a
contains_properlyfunction (#267) - Addition of a
polygonizefunction (#275) - Addition of a
polygonize_fullfunction (#298) - Addition of a
segmentizefunction for GEOS >= 3.10 (#299) - Addition of
oriented_envelopeandminimum_rotated_rectanglefunctions (#314) - Addition of
minimum_bounding_circleandminimum_bounding_radiusfunctions for GEOS >= 3.8 (#315) - Addition of a
shortest_line("nearest points") function (#334)
Bug fixes
- Fixed portability issue for ARM architecture (#293)
- Fixed segfault in
linearringsandboxwhen constructing a geometry with nan
coordinates (#310). - Fixed segfault in
polygons(with holes) when None was provided. - Fixed memory leak in
polygonswhen non-linearring input was provided.
Acknowledgments
Thanks to everyone who contributed to this release!
People with a "+" by their names contributed a patch for the first time.
- Brendan Ward
- Casper van der Wel
- Joris Van den Bossche
- Martin Fleischmann
- Mike Taves
- Tanguy Ophoff +
- James Myatt +
Version 0.9
Version 0.9 (2021-01-23)
Major enhancements
- Addition of
preparefunction that generates a GEOS prepared geometry which is stored on
the Geometry object itself. All binary predicates (exceptequals) make use of this.
Helper functionsdestroy_preparedandis_preparedare also available. (#92, #252) - Use previously prepared geometries within
STRtreequeryandquery_bulk
functions if available (#246) - Official support for Python 3.9 and numpy 1.20 (#278, #279)
- Drop support for Python 3.5 (#211)
- Added support for pickling to
Geometryobjects (#190) - The
applyfunction for coordinate transformations and theset_coordinates
function now support geometries with z-coordinates (#131) - Addition of Cython and internal PyGEOS C API to enable easier development of internal
functions (previously all significant internal functions were developed in C).
Added a Cython-implementedget_partsfunction (#51)
API Changes
- Geometry and counting functions (
get_num_coordinates,
get_num_geometries,get_num_interior_rings,get_num_points) now return 0
forNoneinput values instead of -1 (#218) intersection_allandsymmetric_difference_allnow ignore None values
instead of returning None if any value is None (#249)union_allnow returns None (instead ofGEOMETRYCOLLECTION EMPTY) if
all input values are None (#249)- The default axis of
union_all,intersection_all,symmetric_difference_all,
andcoverage_union_allcan now reduce over multiple axes. The default changed from the first
axis (0) to all axes (None) (#266) - Argument in
line_interpolate_pointandline_locate_point
was renamed fromnormalizetonormalized(#209) - Addition of
grid_sizeparameter to specify fixed-precision grid fordifference,
intersection,symmetric_difference,union, andunion_alloperations for
GEOS >= 3.9 (#276)
Added GEOS functions
- Release the GIL for
is_geometry(),is_missing(), and
is_valid_input()(#207) - Addition of a
is_ccw()function for GEOS >= 3.7 (#201) - Addition of a
minimum_clearancefunction for GEOS >= 3.6.0 (#223) - Addition of a
offset_curvefunction (#229) - Addition of a
relate_patternfunction (#245) - Addition of a
clip_by_rectfunction (#273) - Addition of a
reversefunction for GEOS >= 3.7 (#254) - Addition of
get_precisionto get precision of a geometry andset_precision
to set the precision of a geometry (may round and reduce coordinates) (#257)
Bug fixes
- Fixed internal GEOS error code detection for
get_dimensionsandget_srid(#218) - Limited the length of geometry repr to 80 characters (#189)
- Fixed error handling in
line_locate_pointfor incorrect geometry
types, now actually requiring line and point geometries (#216) - Addition of
get_partsfunction to get individual parts of an array of multipart
geometries (#197) - Ensure that
python setup.py cleanremoves all previously Cythonized and compiled
files (#239) - Handle GEOS beta versions (#262)
Acknowledgments
Thanks to everyone who contributed to this release!
People with a "+" by their names contributed a patch for the first time.
- Brendan Ward
- Casper van der Wel
- Joris Van den Bossche
- Mike Taves