Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Renamed geojson::GeoJson to geojson::Object to improve clarity #169

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

mkatychev
Copy link

@mkatychev mkatychev commented Jul 30, 2021

  • I agree to follow the project's code of conduct.
  • I added an entry to CHANGES.md if knowledge of this change could be valuable to users.

The GeoJson enum, especially when fully specified as geojson::geojson::GeoJson does not effectively convey functionality through name. This can lead to some confusion when dealing with types using the crate and module prefixes.

Copy link
Member

@michaelkirk michaelkirk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry that this PR sat here without comment for a long time and is now stale. 😞

I'm hopeful the changes could be pretty quick to remake with an IDE rather than trying to actually rebase it or something. But I'm wondering how controversial it is.

FWIW, I'm on board with this change - I've always struggled a bit with the idea of having "a" GeoJSON. I think having a geojson::Object sounds a little less weird, and I think it aligns better with the RFC terminology of "GeoJSON Object".

To bike-shed on naming, I'd also be open to geojson::GeoJsonObject, but it's admittedly verbose. I think I have a slight preference for your proposed naming.

One change request: Rather than supporting two different names for this entity indefinitely, I think we should add a deprecation warning to the legacy type alias. Since this will affect basically every user of the crate, it will be somewhat disruptive, and the deprecated type alias should probably be maintained for a good long while.

Since this is a pretty wide-sweeping change, I'd love to get input from at least one or two other maintainers.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants