dependabot[bot] opened a new pull request, #732: URL: https://github.com/apache/sedona-db/pull/732
Bumps [geojson](https://github.com/georust/geojson) from 0.24.2 to 1.0.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/georust/geojson/blob/main/CHANGES.md">geojson's changelog</a>.</em></p> <blockquote> <h2>v1.0.0 - 2025-03-16</h2> <ul> <li>BREAKING: <code>Position</code> is now a struct, rather than a type alias for <code>Vec</code>. The new struct uses the <a href="https://crates.io/crates/tinyvec">tinyvec crate</a>, which allows for faster GeoJSON processing in the common (2-D) case by avoiding per-coordinate heap allocations. <pre lang="rust"><code>// BEFORE: Position *was* a Vec. A Vec is always allocated on the heap, which is slow. let position: Position = vec![1.0, 2.0]; let x = position[0]; <p>// AFTER: Position is its own type, buildable <em>from</em> a Vec. let position: Position = vec![1.0, 2.0].into(); // index access is unchanged let x = position[0];</p> <p>// Alternatively, you can now construct from an Array, avoiding the Vec's heap allocation. let position: Position = [1.0, 2.0].into(); // equivalently: let position = Position::from([1.0, 2.0]);</p> <p>// You can still build 3D+ Positions. These higher dimension coordinates will use Heap storage. let position = Position::from([1.0, 2.0, 3.0]); let position = Position::from(vec![1.0, 2.0, 3.0, 4.0, 5.0, 6.0]); </code></pre></p> <ul> <li>See <a href="https://redirect.github.com/georust/geojson/pulls/222">georust/geojson#222</a></li> </ul> </li> <li>Substantially speed up parsing (Benches show 30% reduction). This was essentially a rewrite of our deserialization logic. Instead of going from input -> serde_json::JsonObject -> geojson types we now go directly from input -> geojson types.</li> <li>Deserialization errors now include line number and column position. Before: <blockquote> <p>Encountered neither number type nor string type for 'id' field on 'feature' object: <code>{}</code> After: Error while deserializing GeoJSON: Feature 'id' must be a string or a number at line 3 column 11</p> </blockquote> </li> <li>BREAKING: <code>geojson::Error</code> has had many cases removed and some new cases added, reflecting the deserialization rewrite.</li> <li>BREAKING: TryInto/From implementations for <code>serde_json::Value</code> and <code>serde_json::Object</code> have been removed now that they are not used for deserialization.</li> <li><code>type</code> is now the first field when serializing GeoJSON objects.</li> <li>Since <code>feature.id</code> is optional, we now accept "id: null", whereas previously you were required to omit the <code>id</code> key. Now either is acceptable.</li> <li>Fix: Return <code>[]</code> instead of <code>[[]]</code> for <code>POLYGON EMPTY</code>. <ul> <li>See <a href="https://redirect.github.com/georust/geojson/pulls/262">georust/geojson#262</a></li> </ul> </li> <li>Potentially breaking: De/Serializing your custom structs with serde now maps your struct's <code>id</code> field to <code>Feature.id</code>, rather than to <code>Feature.properties.id</code>.</li> <li>Fix <code>geo_rect_conversion_test</code> to conform to the correctly-wound <code>Polygon</code> output from <code>geo_types::geometry::Rect.to_polygon</code></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/georust/geojson/commit/f6eafedf98f385b2be77c3ba3f18b258ea7db00b"><code>f6eafed</code></a> prepare for 1.0.0 release</li> <li><a href="https://github.com/georust/geojson/commit/8c1281626b6b3a1d2355bc6237801bae405409f0"><code>8c12816</code></a> prepare for 0.25.0 release</li> <li><a href="https://github.com/georust/geojson/commit/c64043f69184e1c40981f8bed9bd567976e2cd4b"><code>c64043f</code></a> simpler docs</li> <li><a href="https://github.com/georust/geojson/commit/fa96c26df598b7852cf95b9bfaf31474e99bf02c"><code>fa96c26</code></a> update to rust 2024 (<a href="https://redirect.github.com/georust/geojson/issues/273">#273</a>)</li> <li><a href="https://github.com/georust/geojson/commit/3c362b47a4540ff6c1afc0b58e361b748578c831"><code>3c362b4</code></a> Additional ergonomic constructors (for Geometry and FeatureCollection) (<a href="https://redirect.github.com/georust/geojson/issues/271">#271</a>)</li> <li><a href="https://github.com/georust/geojson/commit/f5fffd0ad76e6638a87d2f66ada549d1756c7311"><code>f5fffd0</code></a> Remove methods related to json to/from now that we ser/de directly (<a href="https://redirect.github.com/georust/geojson/issues/270">#270</a>)</li> <li><a href="https://github.com/georust/geojson/commit/de445d91af270ec1717e4578d25bb9e76ef416f6"><code>de445d9</code></a> Speed up parsing by deserializing directly to geojson (without intermediate s...</li> <li><a href="https://github.com/georust/geojson/commit/a7870dbf6a86add43b949fe81c7bed00e67e70af"><code>a7870db</code></a> Move code around - no new functionality (<a href="https://redirect.github.com/georust/geojson/issues/268">#268</a>)</li> <li><a href="https://github.com/georust/geojson/commit/37ea3c939b25777f886a3b282a6a1df88802550f"><code>37ea3c9</code></a> Merge branch 'mkirk/derive-serialization-3'</li> <li><a href="https://github.com/georust/geojson/commit/67c07a108dd284feb08d2fc95077098abd7d474c"><code>67c07a1</code></a> derive Serialization rather than manual impls</li> <li>Additional commits viewable in <a href="https://github.com/georust/geojson/compare/0.24.2...v1.0.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
