wkt
Rust read/write support for well-known text (WKT)
0.14.0
9.2M downloads/mo
#3263 most downloaded on crates.io
georust/wkt
What this package is like to depend on
Last release 1 years ago
14 May 2025
Ships unpredictably
gaps range from 2 weeks to 2.1 years
Some releases are documented
notes for 13 of 29 stable releases
Nothing withdrawn
no release was ever pulled
12 years old
29 releases · first in 2015
0 releases in the last 12 months
see the full history below
Release timeline
29 releases · Jan 2015 to May 2025Releases
latest 29-
0.14.014 May 2025Release notes
Open source →- BREAKING: Adapt to changes in geo-traits 0.3.0 (See georust/geo#1346). (#146)
-
0.13.025 Apr 2025Release notes
Open source →- New
wkt!macro for compile time checking of static WKT text. (#137) - BREAKING: Store dimension in wkt types (#135)
- This removes the publicly-accessible tuple member for each struct in
wkt::types. Use public constructors to construct new objects and new public accessors to access internal data. - WKT dimension is now always correctly inferred from the WKT string, even for empty geometries.
infer_typenow never returnsNone.
- This removes the publicly-accessible tuple member for each struct in
- Remove allocation to
Wktwhen writing geo-types viawrite_wkt(#140) - Default to using
f64forWktNumin WKT types - Add
Copyimpl toCoord
- New
-
0.12.027 Nov 2024Release notes
Open source →- Writing WKT is now up to 50% faster by avoiding extra allocations and writing directly to an underlying buffer.
- Any
geo_traitsinput is now supported when writing to WKT. - Implements
geo_traitsonWktand all structs intypes. This allows for easier interoperability when reading WKT data to other representations thangeo-types. - BREAKING: removed the
fmt::Displayimpl onwkt::Coord.
-
0.11.110 Oct 2024Release notes
Open source →- Add an
infer_typefunction to extract only the geometry type and dimension from a WKT string.
- Add an
-
0.11.025 Jul 2024Release notes
Open source →- Support parsing Z, M, and ZM WKT strings.
- Changed license field to SPDX 2.1 license expression
- Bump min version of geo-types, and update geo_types::Coordinate to non-deprecated geo_types::Coord
- BREAKING: WktNum must implement PartialEq
- Implement PartialEq for Wkt
- BREAKING: Simplify Wkt data structure by replacing it with its only field (formerly known as
item: Geometry) - BREAKING: Replace geometry_variant.as_item() with Wkt::from(geometry_variant)
-
0.10.322 Jun 2022 -
0.10.222 Jun 2022Release notes
Open source →Added
- serialize integer geometries to WKT, so you can now:
geo_types::Point::<i32>::new(1, 2).wkt_string() - deserialize integer geometries from WKT, so you can now:
geo_types::Point::<i32>::try_from_wkt_str("POINT(1 2)")Note that trying to parse numbers with a decimal point as integer geometries will errorgeo_types::Point::<i32>::try_from_wkt_str("POINT(1.1 2.9)").unwrap_err() - docs.rs documentation now shows all optional features.
- docs.rs documentation items are annotated with their feature requirements.
deserialize_wktserde integration for all the geo-types (and any other implementer of TryFromWkt)- add support for serializing integer geometries, so you can now:
geo_types::Point::new(1i32, 2i32).wkt_string()Note that deserializing integer geometries is not yet supported.
- serialize integer geometries to WKT, so you can now:
-
0.10.102 May 2022Release notes
Open source →Added
- impl
std::fmt::DisplayforWkt. - Additions to ToWkt trait:
- added
wkt_stringandwrite_wktmethods toToWkttrait - impl
ToWkton geo_type Geometry variants directly, so you canpoint!(x: 1., y: 2.).wkt_string() ToWktis no longer tied to geo-types. You can implement it on your own custom (non-geo_type) geometry types.
- added
- New
FromWkttrait allows a way to convert from a string or reader directly to geo-types, without exposing you to the intermediateWktstructs. - Implemented
geo_types::GeometryCollection::from(Wkt::from_str(wkt_str))
- impl
-
0.10.025 Feb 2022Release notes
Open source →77: Prepare for 0.10.0 release r=urschrei a=urschrei
- I agree to follow the project's code of conduct.
- I added an entry to
CHANGES.mdif knowledge of this change could be valuable to users.
Co-authored-by: Stephan Hügel [email protected]
Release notes
Open source →Changed
- Now accepts
MULTIPOINTs with fewer parentheses, as output byST_AsTextin postgis:MULTIPOINT(0 1, 2 3)in addition toMULTIPOINT((0 1), (2 3)) - BREAKING: Replace
Wkt::itemswithWkt::itemand removeWkt::add_item(). - BREAKING: Reject empty strings instead of parsing them into an empty
Wkt. - BREAKING: move
Wkt::from_strtoFromStrtrait. Adduse std::str::FromStr;to your code to use it. - Switch to 2021 edition and add examples
- Update to geo-types v0.7.3
- Add MIT license file
-
0.9.230 Apr 2021Release notes
Open source →Added
- Minimal support for JTS extension:
LINEARRINGby parsing it as aLINESTRING. - Support
POINT EMPTYin conversion togeo_types. Converts toMultiPoint([]).
Fixed
- Some "numeric" characters like
¾and①were being treated as digits.
Changed
- Approximately 40% faster according to
cargo bench.
- Minimal support for JTS extension:
-
0.9.125 Feb 2021Release notes
Open source →- Add
serde::DeserializeforWktandGeometry. - Add helper functions for deserializing from WKT format into
geo_types::Geometryandgeo_types::Point
- Add
-
0.9.010 Feb 2021Release notes
Open source →- WKT errors impl
std::error::Error - Add TryFrom for converting directly to geo-types::Geometry enum members, such
as
geo_types::LineString::try_from(wkt) - Add
geo-types::Geometry::from(wkt) - BREAKING: update geo-types, apply new
geo_types::CoordFloat - BREAKING: Add Debug to Wkt structs by using new WktFloat instead of num_traits::Float
- WKT errors impl
-
0.8.007 Jul 2020 -
0.7.012 Apr 2020Nothing published for this version
-
0.6.026 Oct 2019Nothing published for this version
-
0.5.022 Feb 2019Nothing published for this version
-
0.4.002 Feb 2019Nothing published for this version
-
0.2.118 Nov 2018Nothing published for this version
-
0.2.003 Nov 2018Nothing published for this version
-
0.1.330 Aug 2018Nothing published for this version
-
0.1.214 Jul 2018Nothing published for this version
-
0.1.105 Jul 2018Nothing published for this version
-
0.1.003 Jul 2018Nothing published for this version
-
0.0.616 Apr 2016Nothing published for this version
-
0.0.503 Mar 2016Nothing published for this version
-
0.0.412 Jul 2015Nothing published for this version
-
0.0.301 Feb 2015Nothing published for this version
-
0.0.215 Jan 2015Nothing published for this version
-
0.0.110 Jan 2015Nothing published for this version