Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package nanopb for openSUSE:Factory checked in at 2021-04-17 23:25:08 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/nanopb (Old) and /work/SRC/openSUSE:Factory/.nanopb.new.12324 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "nanopb" Sat Apr 17 23:25:08 2021 rev:7 rq:886295 version:0.4.5 Changes: -------- --- /work/SRC/openSUSE:Factory/nanopb/nanopb.changes 2020-09-30 19:55:26.520841064 +0200 +++ /work/SRC/openSUSE:Factory/.nanopb.new.12324/nanopb.changes 2021-04-17 23:25:16.777626211 +0200 @@ -1,0 +2,34 @@ +Wed Apr 14 20:12:08 UTC 2021 - Ferdinand Thiessen <[email protected]> + +- Update to 0.4.5: + * Fix CVE-2021-21401: Release of Invalid Pointer or Reference + * Fix unordered field numbers inside oneof causing fields to be ignored + * Fix pb_decode() not initializing fields inside oneof + * Fix compiler errors with complex oneof hierarchy and sizeof() + * Fix descriptor width calculation for 64-bit types + * Fix compiler error in generated initializer for submessage callback + * Fix duplicate union definition in generated file + * Add support for including comments from .proto file +- Update to 0.4.4: + * Fix CVE-2020-26243, memory leak + * Fix generator error when oneof contains a single unresolved field size + * Fix unsigned enums not working correctly inside OneOf + * Fix recursion depth exceeded error in generator + * Add support for proto3 optional fields introduced in protoc 3.12 + * Add better error message when enum type is not found + * Allow specifying descriptorsize on field level also + * Allow multiple targets to be created by calling NANOPB_GENERATE_CPP() +- Update to 0.4.3 + * Fix issue with unknown message sizes being referred inside oneof + encoded size calculation + * Fix problem with [default=xxxx, (nanopb).proto3=true] field + option combination + * Better support C++ types in generated structs + * Use grpcio protoc + * Make pb_decode_varint32() reject overlong varint encodings. + * Performance optimizations + * !! NOTE: version 0.4.3 changes layout of pb_msgdesc_t. It requires + recompiling .pb.c files and thus breaks ABI compatibility. +- Enabled build of generator (requires Python3) + +------------------------------------------------------------------- Old: ---- nanopb-0.4.2.tar.gz New: ---- nanopb-0.4.5.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ nanopb.spec ++++++ --- /var/tmp/diff_new_pack.6JDPRm/_old 2021-04-17 23:25:17.201626933 +0200 +++ /var/tmp/diff_new_pack.6JDPRm/_new 2021-04-17 23:25:17.205626940 +0200 @@ -1,7 +1,7 @@ # # spec file for package nanopb # -# Copyright (c) 2020 SUSE LLC +# Copyright (c) 2021 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -19,15 +19,18 @@ %define sover 0 %define src_install_dir %{_prefix}/src/%{name} Name: nanopb -Version: 0.4.2 +Version: 0.4.5 Release: 0 Summary: Protocol Buffers with small code size License: Zlib +Group: Development/Libraries/C and C++ URL: https://jpa.kapsi.fi/nanopb/ -Source: https://github.com/nanopb/nanopb/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz +Source: https://github.com/nanopb/nanopb/archive/refs/tags/%{version}.tar.gz#/%{name}-%{version}.tar.gz BuildRequires: cmake BuildRequires: fdupes BuildRequires: protobuf-devel +BuildRequires: python-rpm-macros +BuildRequires: python3 %description Nanopb is a C implementation of Google's Protocol Buffers data format. It is @@ -36,6 +39,7 @@ %package -n libprotobuf-nanopb%{sover} Summary: Shared library for nanopb +Group: System/Libraries %description -n libprotobuf-nanopb%{sover} Shared library for nanopb - a C implementation of Google's Protocol Buffers @@ -43,6 +47,7 @@ %package devel Summary: Development files for nanopb +Group: Development/Libraries/C and C++ Requires: libprotobuf-nanopb%{sover} = %{version} %description devel @@ -51,6 +56,7 @@ %package source Summary: Source code of nanopb +Group: Development/Libraries/C and C++ BuildArch: noarch %description source @@ -59,24 +65,22 @@ %prep %setup -q -# Add support for tag numbers > 255 and fields larger than 255 bytes. -sed -i 's|/\* #define PB_FIELD_16BIT 1 \*/|#define PB_FIELD_16BIT 1|' ./pb.h %build -# nanopb_BUILD_GENERATOR - requires python2 -%cmake \ - -Dnanopb_BUILD_GENERATOR=OFF +%cmake %cmake_build %install %cmake_install - +# Install source code mkdir -p %{buildroot}%{src_install_dir} tar -xf %{SOURCE0} --strip-components=1 -C %{buildroot}%{src_install_dir} +find %{buildroot}%{src_install_dir} -name ".*" -exec rm -rfv \{\} + # Fix env-script-interpreter rpmlint error -find %{buildroot}%{src_install_dir} -type f -name "*.py" -exec sed -i 's|#!%{_bindir}/env python|#!%{_bindir}/python|' "{}" + -# Add support for tag numbers > 255 and fields larger than 255 bytes. -sed -i 's|/\* #define PB_FIELD_16BIT 1 \*/|#define PB_FIELD_16BIT 1|' %{buildroot}%{src_install_dir}/pb.h +files=$(grep -rl '#!/usr/bin/env python' %{buildroot}%{src_install_dir}) && echo $files | xargs sed -i 's|#!/usr/bin/env python|#!%{_bindir}/python|' +# Fix name and interpreter +mv %{buildroot}%{_bindir}/nanopb_generator.py %{buildroot}%{_bindir}/nanopb_generator +sed -i 's|env python3|python3|' %{buildroot}%{_bindir}/nanopb_generator %fdupes %{buildroot}%{src_install_dir} @@ -89,15 +93,14 @@ %{_libdir}/libprotobuf-nanopb.so.%{sover} %files devel +%{_bindir}/nanopb_generator +%{_bindir}/protoc-gen-nanopb +%{python3_sitelib}/proto %{_includedir}/pb.h %{_includedir}/pb_common.h %{_includedir}/pb_decode.h %{_includedir}/pb_encode.h %{_libdir}/cmake/nanopb -%{_libdir}/cmake/nanopb/nanopb-config-version.cmake -%{_libdir}/cmake/nanopb/nanopb-config.cmake -%{_libdir}/cmake/nanopb/nanopb-targets-relwithdebinfo.cmake -%{_libdir}/cmake/nanopb/nanopb-targets.cmake %{_libdir}/libprotobuf-nanopb.so %files source ++++++ nanopb-0.4.2.tar.gz -> nanopb-0.4.5.tar.gz ++++++ ++++ 10276 lines of diff (skipped)
