Skip to content

v0.12.0

Latest
Compare
Choose a tag to compare
@jmr jmr released this 17 Feb 12:57
7c96080

Interface Changes

  • Remove glog and gflags dependencies. Now abseil-cpp is used.
    • ABSL_LOG macros are used instead of S2_LOG
      • The indirection could be added back if requested
    • ABSL_CHECK macros are used instead of S2_CHECK
    • S2_DEFINE_ now forwards to ABSL_FLAG
  • New files:
    • s2chain_interpolation_query
    • s2density_tree
    • s2gmock_matchers
    • s2fractal
    • s2shapeutil_count_vertices
    • s2shapeutil_edge_wrap
  • New S2Shape functions:
    • Incoming
    • Outgoing
    • IncidentOn
  • Remove S2Shape::id()
  • New predicates in s2predicates.h
  • S2Region::GetCellUnionBound is now pure virtual
  • Replace S2Testing::Random, which was based on random(3), with
    new s2random:: namespace, based on abseil-cpp's random library.
    This removes the use of global state.
  • Use int64_t instead of int64, etc.
  • constexpr fixes
  • Remove some old SWIG workarounds.
  • Now requires abseil-cpp LTS 20240116
  • S2Shape derived classes: Add decoding interface with S2Error
  • S2Error: Interface is now similar to absl::Status, just with a
    different error code type. In the future, this will probably
    be replaced by absl::Status.
  • S2CellId: Made some functions constexpr
  • s2edge_crossings: Fix CompareEdges for a case that never happens
  • S2Polygon uses new S2LegacyValidQuery to validate geometry.
  • S2ValidationQuery: New class

What's Changed

New Contributors

Full Changelog: v0.11.1...v0.12.0