Breaking changes
- Rename functions according to the terminology RFC (622, 586, 571, 403, 466, 495, 466)
- Functions that can experience errors now have an `H3Error` return value. (617, 586, 581, 551, 550, 509, 505, 507, 508, 503, 478, 468, 436, 359)
- Cell count parameters use `int64_t` instead of `int`.
- `polygonToCells` (previously `polyfill`) accepts a flags argument for future expansion. (570)
- `cellToLocalIj` and `localIjToCell` accept a mode argument for future expansion. (586)
- `exactEdgeLength` functions renamed to `edgeLength` (639)
Fixed
- Fix polyfill bug when vertex latitude exactly matches cell center. (603)
- A number of issues detected via unit tests and fuzzers were fixed. (568, 562, 558, 559, 560, 430)
- `polygonToCells` returns an error if Infinity is passed in. (636)
Changed
- The file `CMakeTests.cmake` is no longer included if `ENABLE_TESTING` is off. (609)
Added
- Vertex mode and associated functions: (422, 420, 417)
- `cellToVertex(cell, vertexNum)`
- `cellToVertexes(cell, out)`
- `vertexToLatLng(vertex, out)`
- `isValidVertex(vertex)`
- `h3` CLI application. (556, 497)
Other changes
- Generally use `lng` instead of `lon`
- Closed-form implementation of `numHexagons`
- A number of fuzzer harnesses are now included in the H3 core library. (557, 553, 545, 433)
- Additional benchmarks are added and benchmarks are regularly run in CI. (524, 518)