Releases: mapbox/protozero
Releases · mapbox/protozero
Version 1.7.1
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
anddouble
byteswap. - Add missing includes of "config.hpp".
- Avoid narrowing conversion by doing an explicit
static_cast
.
Version 1.7.0
Added
- Support for buffer types other that
std::string
.pbf_writer
is now just a typedef forbasic_pbf_writer<std::string>
. Other buffer types can be used withbasic_pbf_writer
. Seedoc/advanced.md
for details.
Changed
- Switched to catch2 for testing.
- Some minor tweaks.
Fixed
- Removed some undefined behaviour.
Version 1.6.8
Changed
- Various code cleanups due to clang-tidy warnings.
Fixed
- Made
data_view::compare
noexcept.
Version 1.6.7
Fixed
- Signed-unsigned comparison on 32 bit systems.
Version 1.6.6
Fixed
- Fixed several place with possible undefined behaviour.
Version 1.6.5
Fixed
- Avoid UB: Do not calculate pointer outside array bounds.
- Specify proto2 syntax in .proto files to appease protoc.
Version 1.6.4
Added
- Add function
data()
to get the not yet read data from apbf_reader
. - New
add_packed_fixed()
template function forpbf_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
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
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
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 usingstd::distance
) - Overloads
std::distance
for the varint and svarint iterators. This is better than the workaround with therage_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()
.