All notable changes to this project will be documented in this file.
This project adheres to Semantic Versioning.
We track the MAJOR and MINOR version levels of Uber's H3 project (https://github.com/uber/h3) but maintain independent patch levels so we can make small fixes and non breaking changes.
H3.from_string(nil)should not crash
- kRing of invalid indexes should not crash.
- Area and haversine distance functions:
cellAreaRads2cellAreaKm2cellAreaM2pointDistRadspointDistKmpointDistMexactEdgeLengthRadsexactEdgeLengthKmexactEdgeLengthM
- Speeds up
getH3UnidirectionalEdgeBoundaryby about 3x.
- Finding invalid edge boundaries should not crash.
- Reinstate new
polyfillalgorithm for up to 3x perf boost.
- Revert new polyfill algorithm until reported issues are fixed.
- Remove deprecated methods: (#66)
compacthandles zero length input correctly.bboxHexRadiusscaling factor adjusted to guarantee containment forpolyfill.polyfillnew algorithm for up to 3x perf boost.- Fix CMake targets for KML generation.
center_childmethod to find center child at given resolution (#62).pentagons(andpentagon_count) method to find pentagons at given resolution (#62).
- Renamed 26 methods to be more idiomatic with Ruby conventions. The old names are deprecated until 2020 when they will be removed (#59).
- Added Zeitwerk as the code loader.
h3_facesandmax_face_countsupport (#56)
- New CMake options to prevent unnecessary building of filter apps and benchmarks.
- Internal h3 bugfixes.
res_0_indexesandres_0_index_countsupport (#51).
h3_lineandh3_line_sizesupport (#43).
- Use FFI types to enforce sane resolution values (#41).
- Internal refactoring (#44).
- Include and compile H3 when gem installs (#45). The gem will use a locally built .so and ignore any H3 versions that are installed on the system. This is achieved by submoduling the H3 C code and updating to the matching version tag.
- Various documentation corrections.
Initial release.