remove all deprecated features from `geo-types`
This PR includes #798, which should be merged before this one
- BREAKING: Remove deprecated functions on the
Geometry<T>: *into_point- Switch tostd::convert::TryInto<Point>*into_line_string- Switch tostd::convert::TryInto<LineString>*into_line- Switch tostd::convert::TryInto<Line>*into_polygon- Switch tostd::convert::TryInto<Polygon>*into_multi_point- Switch tostd::convert::TryInto<MultiPoint>*into_multi_line_string- Switch tostd::convert::TryInto<MultiLineString>*into_multi_polygon- Switch tostd::convert::TryInto<MultiPolygon> - BREAKING: Remove deprecated
CoordinateTypetrait. UseCoordFloatorCoordNuminstead. - BREAKING: Remove deprecated functions from
LineString<T>* Removepoints_iter()-- usepoints()instead. * Removenum_coords()-- usegeo::algorithm::coords_iter::CoordsIter::coords_countinstead. - BREAKING: Remove deprecated functions from
Point<T>* Removelng()-- usex()instead. * Removeset_lng()-- useset_x()instead. * Removelat()-- usey()instead. * Removeset_lat()-- useset_y()instead. - BREAKING: Remove deprecated
Polygon<T>::is_convex()-- usegeo::is_convexonpoly.exterior()instead. - BREAKING: Remove deprecated
Rect<T>::try_new()-- useRect::newinstead, sinceRect::try_newwill never Error. Also removes correspondingInvalidRectCoordinatesError.
- [x] I agree to follow the project's code of conduct.
- [x] I added an entry to
CHANGES.mdif knowledge of this change could be valuable to users.
As I said in discord where this conversation was also happening:
There is a cost associated with maintaining two branches. I think it would make sense to do something like this once an 0.8 release is in sight, but we don't yet have a single compelling reason to break geo-types, so I'd prefer to hold off for now.
Other people can feel free to weigh in on this though.
There is a cost associated with maintaining two branches. I think it would make sense to do something like this once an 0.8 release is in sight, but we don't yet have a single compelling reason to break geo-types, so I'd prefer to hold off for now.
sounds good, I will maintain this PR until more breaking features have accumulated. BTW, note that there is already one breaking change merged to main with the winding order, and another breaking one that we now use Rust 2021 -- https://github.com/georust/geo/blob/master/geo-types/CHANGES.md
I don't think we're really in a position to maintain a separate maintenance release branch. It has its own costs, and looking at the recent changes, most of them have been new features and breaking changes in themselves, as opposed to bug fixes.
I don't think we're really in a position to maintain a separate maintenance release branch.
Agreed: we do not have the resources to maintain a separate maintenance branch. We can revisit this when 0.8 is in sight – I would personally be fine with removing these features, but others may have a more conservative view.
Considering we already have a breaking change in geo-types on main
My understanding is that we don't yet have any changes merged that warrant a breaking bump to geo-types yet.
1
note that there is already one breaking change merged to main with the winding order
Please see the earlier discussion about why I didn't think this was a breaking change: https://github.com/georust/geo/pull/757#discussion_r821124529
The summary that made sense to me was:
I think this falls in the "Possibly-breaking change" per cargo book and in unstable packages, it's OK to bump just the patch version for these changes. The order of returned lines isn't part of an explicit contract, so someone depending on that order to not conform to the winding order is unlikely.
2
another breaking one that we now use Rust 2021 --
Is upgrading to Rust 2021 a breaking change? To me that seems like taking advantage of any other new feature from an MSRV bump, and like with much of the rust community, we wouldn't consider it a breaking change.
I'm OK with the change.
@michaelkirk Gotcha, thanks for explaining. In that case, do you (or anyone) have any hesitations about a 0.7.4 release for geo-types?
do you (or anyone) have any hesitations about a 0.7.4 release for geo-types?
SGTM!
Closing for inactivity. Feel free to reopen if you resume work on this.