What is the minimal GEOS version that Shapely still (aims to) supports?
At the moment, Shapely starts testing for GEOS 3.5 and up on CI, but actually has code in shapely/geos.py going back to GEOS 3.0, and requires GEOS 3.3 as a minimum in setup.py.
In PyGEOS, we also test (and have workarounds) going back to GEOS 3.5, and have certain functionality that only works for more recent GEOS versions (raises an error for older versions, see eg the decorator used here for get_z: https://github.com/pygeos/pygeos/blob/32397d998d2fc7fe3afef673539dace9fd8efe7f/pygeos/geometry.py#L251).
We did have some discussion related to this at pygeos/pygeos#116, and @caspervdw gave the argument of supporting at minimum GEOS 3.5 since this is the GEOS version included in Ubuntu 16.04 (which reaches end of life in April 2021). Supporting GEOS versions back to 3.5 is not that big of a burden, because we need the machinery for version checks anyway to support functionalities added in the latest GEOS versions anyway.
I don't think PyGEOS actively checks the used GEOS version and raises for older GEOS < 3.5 versions (@caspervdw is that correct?).
Are we fine to also have GEOS 3.5 as a minimum supported version in Shapely? And thus not have workarounds for older versions, as is the case now (and next year, we can then discuss moving to GEOS 3.6 as a minimum)
(I would say that in practice, this is the only option if we don't even test older versions)
What is the minimal GEOS version that Shapely still (aims to) supports?
At the moment, Shapely starts testing for GEOS 3.5 and up on CI, but actually has code in
shapely/geos.pygoing back to GEOS 3.0, and requires GEOS 3.3 as a minimum in setup.py.In PyGEOS, we also test (and have workarounds) going back to GEOS 3.5, and have certain functionality that only works for more recent GEOS versions (raises an error for older versions, see eg the decorator used here for
get_z: https://github.com/pygeos/pygeos/blob/32397d998d2fc7fe3afef673539dace9fd8efe7f/pygeos/geometry.py#L251).We did have some discussion related to this at pygeos/pygeos#116, and @caspervdw gave the argument of supporting at minimum GEOS 3.5 since this is the GEOS version included in Ubuntu 16.04 (which reaches end of life in April 2021). Supporting GEOS versions back to 3.5 is not that big of a burden, because we need the machinery for version checks anyway to support functionalities added in the latest GEOS versions anyway.
I don't think PyGEOS actively checks the used GEOS version and raises for older GEOS < 3.5 versions (@caspervdw is that correct?).
Are we fine to also have GEOS 3.5 as a minimum supported version in Shapely? And thus not have workarounds for older versions, as is the case now (and next year, we can then discuss moving to GEOS 3.6 as a minimum)
(I would say that in practice, this is the only option if we don't even test older versions)