View Source Changelog
v3.6.0 — 2023-10-19
As of v3.6.0, geo
(like geo_postgis
) is being maintained by the Felt team. As a company building a geospatial product on Elixir, with a track record of supporting open source software, we're excited for the future of the project.
New features
- Add support for empty point by new contributor @bolek
- Add support for LineStringZM by new contributor @kanatohodets
- Support decoding MultiLineStringZ by new contributor @caspg
Misc. changes
- Fix compile warnings (#186 by @s3cur3)
- Docs improvements (#177 by new contributor @ghecho, #182 by @s3cur3)
- Dependency updates:
ex_doc
(#185),jason
(#183),stream_data
(#184)
Full Changelog: https://github.com/felt/geo/compare/v3.5.1...v3.6.0
v3.5.1 - 2023-06-07
v3.5 - 2023-06-05
- Enhancement
v3.4.3 - 2021-12-15
- Fix
v3.4.2 - 2021-04-11
v3.4.1 - 2021-04-10
- Fix
v3.4.0 - 2021-04-09
Add
Geo.WKB.encode_to_iodata
Enhancements
- The implementation of encoding and decoding WKBs has been updated to use iodata instead of binaries, improving overall performance.
Geo.WKB.decode!
andGeo.WKB.decode
can now take iodata in addition to binary data
v3.3.8 - 2021-04-02
v3.3.7 - 2020-11-20
v3.3.6 - 2020-11-05
- Enhancement
v3.3.5 - 2020-08-26
- Fixed
- Typespec on Point
v3.3.4 - 2020-08-07
v3.3.3 - 2019-12-13
v3.3.2 - 2019-08-26
- Fixed
- Some optimizations based on benchmarking
v3.3.1 - 2019-08-26
- Fixed
- Bugs found while property testing
v3.3.0 - 2019-08-20
v3.2.0 - 2019-07-23
v3.1.0 - 2019-02-08
Fixed
Added
v3.0.0 - 2018-04-14
Add
Geo.WKT.encode!
Geo.WKT.decode!
Geo.WKB.encode!
Geo.WKB.decode!
Geo.JSON.encode!
Geo.JSON.decode!
Enhancement
- Geometry struct now have a
properties
field. This is used to convert GeoJSON properties
- Geometry struct now have a
Breaking
Geo.WKT.encode
now returns either{:ok, binary}
or{:error, exception}
Geo.WKT.decode
now returns either{:ok, geometry}
or{:error, exception}
Geo.WKB.encode
now returns either{:ok, binary}
or{:error, exception}
Geo.WKB.decode
now returns either{:ok, geometry}
or{:error, exception}
Geo.JSON.encode
now returns either{:ok, map}
or{:error, exception}
Geo.JSON.decode
now returns either{:ok, geom}
or{:error, exception}
- All Ecto.Type behaviour implementations were removed. This may not effect too many people, but it was moved to the geo_postgis package
v2.1.0 - 2018-01-28
- Fix
- Make stricter patterns for casts functions so that error pattern is used when types are wrong
- Change handling of EPSG/SRID to match standard
- Fix String.strip() deprecations in Elixir 1.5+
v2.0.0 - 2017-07-15
- Breaking
- Split out PostGIS functionality into its own library, geo_postgis
v1.5.0 - 2017-06-10
- Enhancement
v1.4.1 - 2017-02-17
v1.4.0 - 2017-02-17
- Enhancements
v1.3.1 - 2016-12-24
- Enhancements
- Relax Poison dependency requirement
v1.3.0 - 2016-12-19
Enhancements
Breaking
- Now only supports Postgrex 0.13+
- Now only supports Ecto 2.1+
v1.2.1 - 2016-11-04
- Enhancements
v1.2.0 - 2016-10-26
- Enhancements
v1.1.2 - 2016-09-14
- Bug Fixes
- WKBs that are GeometryCollections with one element should now properly decode
v1.1.1 - 2016-07-19
- Enhancements
- Added
Geo.JSON.EncodeError
andGeo.JSON.DecodeError
thrown wheneverGeo.JSON.encode
orGeo.JSON.decode
are given invalid data
- Added
v1.1.0 - 2016-07-09
- Enhancements
- Add Geo.Geometry custom Ecto type to allow multiple geometries in a single field
v1.0.6 - 2016-06-26
- Enhancements
- Fixed warnings that appeared in Elixir 1.3
v1.0.5 - 2016-06-22
- Enhancements
- Update to allow use with Ecto 2.0
v1.0.4 - 2016-05-23
- Enhancements
- Ecto.Type: matching on geojson properties so that Ecto.DataType can be used by users
v1.0.3 - 2016-05-14
- Enhancements
- Updated dependencies to allow for using ecto 2.0 release candidate versions
v1.0.2 - 2016-04-03
- Enhancements
- Updated dependencies to allow for using ecto 2.0 beta versions
v1.0.1 - 2016-01-31
- Enhancements
- Updated Postgrex and Poison optional dependencies
v1.0.0 - 2015-11-29
v0.18.0 - 2015-11-11
- Enhancements
- Made Postgrex, Ecto, and Poison optional dependencies
v0.17.0 - 2015-10-13
- Breaking
- Geo.JSON.encode and Geo.JSON.decode now do not do any JSON parsing at all and instead work on a map representation of GeoJSON. All JSON encoding and decoding must be done before or after calling those functions.
v0.16.1 - 2015-08-27
- Enhancements
- Made Postgrex a required dependency
v0.16.0 - 2015-08-27
- Enhancements
- Updated to Ecto 1.0
v0.15.2 - 2015-08-10
- Enhancements
- Added an
opts
parameter toGeo.JSON.encode
to allow for skipping JSON encoding
- Added an
v0.15.1 - 2015-07-27
- Enhancements
- Fixed st_dwithin macro
v0.15.0 - 2015-07-24
- Enhancements
- Updated cast function on structs to handle maps and strings
- Now reading the srid from geo json
v0.14.0 - 2015-07-19
- Enhancements
- Basic Support for Geography datatype
v0.13.0 - 2015-06-08
Enhancements
- Added PostGIS function macros for use in Ecto Queries. Currently only the OpenGIS ones
Breaking
Geo.PostGIS
is nowGeo.PostGIS.Extension
- Changed from Jazz to Poison for JSON encoding and decoding
v0.12.0 - 2015-03-08
- Enhancements
- Geo.PostGIS is now a Postgrex Extension
- Updated to work with latest version of Ecto
v0.11.2 - 2015-02-13
- Bug fixes
- Correctly decoding WKB strings that caused invalid geometries to be produced when there is one element in a multi geometry
v0.11.1 - 2015-02-12
- Bug fixes
- Fixed bug when decoding multi geometry wkb with one geometry inside would cause a crash
v0.11.0 - 2015-02-03
Enhancements
- Created structs for the supported geospatial types (Point, LineString, Polygon, MultiPoint, MultiLineString, MultiPolygon, GeometryCollection)
- GeoJson module will encode the srid as a crs property if an srid exists
Backwards incompatible changes
- Removed the Geometry struct. Use one of the geometry type structs instead
- The base coordinate pairs are now tuples ({0,0} instead of [0,0])