Skip to content

Releases: mapbox/protozero

Version 1.7.1

10 Jan 10:04
Compare
Choose a tag to compare

Changed

  • Don't build tests if the standard CMake BUILD_TESTING variable is set to off.
  • Now needs CMake 3.5.0 or greater.
  • Update included catch2 framework to current version v2.13.8.
  • Only enable clang-tidy make target if protobuf was found.
  • Allow setting C++ version to compile with in CMake config.

Fixed

  • Fixes undefined behaviour in float and double byteswap.
  • Add missing includes of "config.hpp".
  • Avoid narrowing conversion by doing an explicit static_cast.

Version 1.7.0

08 Jun 07:45
Compare
Choose a tag to compare

Added

  • Support for buffer types other that std::string. pbf_writer is now just a typedef for basic_pbf_writer<std::string>. Other buffer types can be used with basic_pbf_writer. See doc/advanced.md for details.

Changed

  • Switched to catch2 for testing.
  • Some minor tweaks.

Fixed

  • Removed some undefined behaviour.

Version 1.6.8

15 Aug 07:15
Compare
Choose a tag to compare

Changed

  • Various code cleanups due to clang-tidy warnings.

Fixed

  • Made data_view::compare noexcept.

Version 1.6.7

21 Feb 10:36
Compare
Choose a tag to compare

Fixed

  • Signed-unsigned comparison on 32 bit systems.

Version 1.6.6

20 Feb 21:09
Compare
Choose a tag to compare

Fixed

  • Fixed several place with possible undefined behaviour.

Version 1.6.5

05 Feb 16:04
Compare
Choose a tag to compare

Fixed

  • Avoid UB: Do not calculate pointer outside array bounds.
  • Specify proto2 syntax in .proto files to appease protoc.

Version 1.6.4

08 Nov 09:51
Compare
Choose a tag to compare

Added

  • Add function data() to get the not yet read data from a pbf_reader.
  • New add_packed_fixed() template function for pbf_writer.
  • New length_of_varint() helper function calculates how long a varint would be for a specified value.

Changed

  • More consistent implementation of operators as free friend functions.

Fixed

  • Fixed some zigzag encoding tests on MSVC.
  • Add extra cast so we do an xor with unsigned ints.
  • No more bitwise operations on signed integers in varint decoder.
  • No more bitwise operations on signed integers in zigzag encoder/decoder.

Version 1.6.3

17 Jul 09:33
Compare
Choose a tag to compare

Changed

  • Moved byteswap_inplace functions from detail into protozero namespace. They can be useful outsize protozero.
  • More asserts and unit tests and small cleanups.

Version 1.6.2

09 Mar 10:25
Compare
Choose a tag to compare

Changed

  • Update included catch.hpp to v1.12.0.
  • Move basic unit tests into their own directory (test/unit).
  • Improved clang-tidy config and fixed some code producing warnings.

Fixed

  • Buffer overflow in pbf-decoder tool.

Version 1.6.1

16 Nov 16:49
Compare
Choose a tag to compare

Added

  • Document internal handling of varints.
  • Add aliases for fixed iterators, too.

Changed

  • The const_fixed_iterator is now a random access iterator making code using it potentially more performant (for instance when using std::distance)
  • Overloads std::distance for the varint and svarint iterators. This is better than the workaround with the rage_size function used before.

Fixed

  • Rename .proto files in some tests to be unique. This solves a problem when building with newer versions of the Google Protobuf library.
  • Floating point comparisons in tests are now always correctly done using Approx().