Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package aws-crt-cpp for openSUSE:Factory checked in at 2025-02-10 17:31:41 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/aws-crt-cpp (Old) and /work/SRC/openSUSE:Factory/.aws-crt-cpp.new.21275 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "aws-crt-cpp" Mon Feb 10 17:31:41 2025 rev:24 rq:1244776 version:0.30.1 Changes: -------- --- /work/SRC/openSUSE:Factory/aws-crt-cpp/aws-crt-cpp.changes 2025-01-21 21:11:33.065632838 +0100 +++ /work/SRC/openSUSE:Factory/.aws-crt-cpp.new.21275/aws-crt-cpp.changes 2025-02-10 17:53:27.912365567 +0100 @@ -1,0 +2,14 @@ +Thu Feb 6 09:12:43 UTC 2025 - John Paul Adrian Glaubitz <adrian.glaub...@suse.com> + +- Update to version 0.30.1 + * Temporarily rollback s2n by @DmitriyMusatkin in (#705) +- from version 0.30.0 + * Add topic argument to publish callback in request-response + stream client by @sfod in (#703) + * CMake modules by @sfod in #702 +- from version 0.29.10 + * Fix segfaults -- CRC64NVME on machines with disabled + AVX and uri parsing corner case. by @TingDaoK in (#700) +- Drop acc_fix-cmake-modules-path.patch, fixed upstream + +------------------------------------------------------------------- Old: ---- acc_fix-cmake-modules-path.patch v0.29.9.tar.gz New: ---- v0.30.1.tar.gz BETA DEBUG BEGIN: Old: AVX and uri parsing corner case. by @TingDaoK in (#700) - Drop acc_fix-cmake-modules-path.patch, fixed upstream BETA DEBUG END: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ aws-crt-cpp.spec ++++++ --- /var/tmp/diff_new_pack.8bljdx/_old 2025-02-10 17:53:28.656396149 +0100 +++ /var/tmp/diff_new_pack.8bljdx/_new 2025-02-10 17:53:28.660396314 +0100 @@ -20,14 +20,13 @@ %define library_soversion 1 Name: aws-crt-cpp -Version: 0.29.9 +Version: 0.30.1 Release: 0 Summary: AWS C++ wrapper for AWS SDK C libraries License: Apache-2.0 Group: Development/Languages/Other URL: https://aws.amazon.com/sdk-for-cpp/ Source0: https://github.com/awslabs/aws-crt-cpp/archive/v%{version}.tar.gz -Patch0: acc_fix-cmake-modules-path.patch BuildRequires: cmake BuildRequires: fdupes BuildRequires: gcc ++++++ v0.29.9.tar.gz -> v0.30.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-crt-cpp-0.29.9/.github/workflows/ci.yml new/aws-crt-cpp-0.30.1/.github/workflows/ci.yml --- old/aws-crt-cpp-0.29.9/.github/workflows/ci.yml 2025-01-14 20:41:48.000000000 +0100 +++ new/aws-crt-cpp-0.30.1/.github/workflows/ci.yml 2025-01-30 22:25:12.000000000 +0100 @@ -49,7 +49,7 @@ # that are up-to-date (AL2) or don't provide OpenSSL development packages that is found in CMake (alpine) # or are not able to connect on the socket even with the correct setup (manylinux2014) linux-compat: - runs-on: ubuntu-24.04 # latest + runs-on: ubuntu-22.04 # temporarily downgrade to old ubuntu until https://github.com/actions/runner-images/issues/11471 resolves strategy: fail-fast: false matrix: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-crt-cpp-0.29.9/CMakeLists.txt new/aws-crt-cpp-0.30.1/CMakeLists.txt --- old/aws-crt-cpp-0.29.9/CMakeLists.txt 2025-01-14 20:41:48.000000000 +0100 +++ new/aws-crt-cpp-0.30.1/CMakeLists.txt 2025-01-30 22:25:12.000000000 +0100 @@ -1,8 +1,4 @@ -cmake_minimum_required(VERSION 3.9) - -if(POLICY CMP0077) - cmake_policy(SET CMP0077 NEW) -endif() +cmake_minimum_required(VERSION 3.9...3.31) option(BUILD_DEPS "Builds aws common runtime dependencies as part of build. Turn off if you want to control your dependency chain." ON) option(BYO_CRYPTO "Don't build a tls implementation or link against a crypto interface. This feature is only for unix builds currently" OFF) @@ -30,24 +26,7 @@ VERSION ${SIMPLE_VERSION}) include(CTest) - -if(DEFINED CMAKE_PREFIX_PATH) - file(TO_CMAKE_PATH "${CMAKE_PREFIX_PATH}" CMAKE_PREFIX_PATH) -endif() - -if(DEFINED CMAKE_INSTALL_PREFIX) - file(TO_CMAKE_PATH "${CMAKE_INSTALL_PREFIX}" CMAKE_INSTALL_PREFIX) -endif() - -if(UNIX AND NOT APPLE) - include(GNUInstallDirs) -elseif(NOT DEFINED CMAKE_INSTALL_LIBDIR) - set(CMAKE_INSTALL_LIBDIR "lib") -endif() - -if(${CMAKE_INSTALL_LIBDIR} STREQUAL "lib64") - set(FIND_LIBRARY_USE_LIB64_PATHS true) -endif() +include(GNUInstallDirs) if(NOT CMAKE_CXX_STANDARD) set(CMAKE_CXX_STANDARD 11) @@ -65,13 +44,6 @@ set(GENERATED_CONFIG_HEADER "${GENERATED_INCLUDE_DIR}/aws/crt/Config.h") configure_file(include/aws/crt/Config.h.in ${GENERATED_CONFIG_HEADER} @ONLY) -# This is required in order to append /lib/cmake to each element in CMAKE_PREFIX_PATH -set(AWS_MODULE_DIR "/${CMAKE_INSTALL_LIBDIR}/cmake") -string(REPLACE ";" "${AWS_MODULE_DIR};" AWS_MODULE_PATH "${CMAKE_PREFIX_PATH}${AWS_MODULE_DIR}") - -# Append that generated list to the module search path -list(APPEND CMAKE_MODULE_PATH ${AWS_MODULE_PATH}) - if(BUILD_DEPS) list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/crt/aws-c-common/cmake") @@ -132,6 +104,9 @@ add_subdirectory(crt/aws-c-s3) set(BUILD_TESTING ${BUILD_TESTING_PREV}) else() + # this is required so we can use aws-c-common's CMake modules + find_package(aws-c-common REQUIRED) + include(AwsFindPackage) set(IN_SOURCE_BUILD OFF) endif() @@ -356,23 +331,23 @@ target_link_libraries(${PROJECT_NAME} PUBLIC ${DEP_AWS_LIBS}) -install(FILES ${AWS_CRT_HEADERS} DESTINATION "include/aws/crt" COMPONENT Development) -install(FILES ${AWS_CRT_AUTH_HEADERS} DESTINATION "include/aws/crt/auth" COMPONENT Development) -install(FILES ${AWS_CRT_CHECKSUM_HEADERS} DESTINATION "include/aws/crt/checksum" COMPONENT Development) -install(FILES ${AWS_CRT_CRYPTO_HEADERS} DESTINATION "include/aws/crt/crypto" COMPONENT Development) -install(FILES ${AWS_CRT_IO_HEADERS} DESTINATION "include/aws/crt/io" COMPONENT Development) -install(FILES ${AWS_CRT_IOT_HEADERS} DESTINATION "include/aws/iot" COMPONENT Development) -install(FILES ${AWS_CRT_MQTT_HEADERS} DESTINATION "include/aws/crt/mqtt" COMPONENT Development) -install(FILES ${AWS_CRT_HTTP_HEADERS} DESTINATION "include/aws/crt/http" COMPONENT Development) -install(FILES ${AWS_CRT_ENDPOINT_HEADERS} DESTINATION "include/aws/crt/endpoints" COMPONENT Development) -install(FILES ${AWS_CRT_CBOR_HEADERS} DESTINATION "include/aws/crt/cbor" COMPONENT Development) +install(FILES ${AWS_CRT_HEADERS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/aws/crt" COMPONENT Development) +install(FILES ${AWS_CRT_AUTH_HEADERS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/aws/crt/auth" COMPONENT Development) +install(FILES ${AWS_CRT_CHECKSUM_HEADERS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/aws/crt/checksum" COMPONENT Development) +install(FILES ${AWS_CRT_CRYPTO_HEADERS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/aws/crt/crypto" COMPONENT Development) +install(FILES ${AWS_CRT_IO_HEADERS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/aws/crt/io" COMPONENT Development) +install(FILES ${AWS_CRT_IOT_HEADERS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/aws/iot" COMPONENT Development) +install(FILES ${AWS_CRT_MQTT_HEADERS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/aws/crt/mqtt" COMPONENT Development) +install(FILES ${AWS_CRT_HTTP_HEADERS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/aws/crt/http" COMPONENT Development) +install(FILES ${AWS_CRT_ENDPOINT_HEADERS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/aws/crt/endpoints" COMPONENT Development) +install(FILES ${AWS_CRT_CBOR_HEADERS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/aws/crt/cbor" COMPONENT Development) install( TARGETS ${PROJECT_NAME} EXPORT ${PROJECT_NAME}-targets ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Development LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Development - RUNTIME DESTINATION bin COMPONENT Runtime + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Runtime ) if(BUILD_SHARED_LIBS) @@ -382,7 +357,7 @@ endif() install(EXPORT "${PROJECT_NAME}-targets" - DESTINATION "${CMAKE_INSTALL_LIBDIR}/${PROJECT_NAME}/cmake/${TARGET_DIR}" + DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}/${TARGET_DIR}" NAMESPACE AWS:: COMPONENT Development) @@ -398,11 +373,11 @@ ) install(FILES "${GENERATED_ROOT_DIR}/${PROJECT_NAME}-config.cmake" - DESTINATION "${CMAKE_INSTALL_LIBDIR}/${PROJECT_NAME}/cmake/" + DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}/" COMPONENT Development) install(FILES "${GENERATED_ROOT_DIR}/${PROJECT_NAME}-config-version.cmake" - DESTINATION "${CMAKE_INSTALL_LIBDIR}/${PROJECT_NAME}/cmake/" + DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}/" COMPONENT Development) if(NOT CMAKE_CROSSCOMPILING) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-crt-cpp-0.29.9/VERSION new/aws-crt-cpp-0.30.1/VERSION --- old/aws-crt-cpp-0.29.9/VERSION 2025-01-14 20:41:48.000000000 +0100 +++ new/aws-crt-cpp-0.30.1/VERSION 2025-01-30 22:25:12.000000000 +0100 @@ -1 +1 @@ -0.29.9 +0.30.1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-crt-cpp-0.29.9/bin/elasticurl_cpp/CMakeLists.txt new/aws-crt-cpp-0.30.1/bin/elasticurl_cpp/CMakeLists.txt --- old/aws-crt-cpp-0.29.9/bin/elasticurl_cpp/CMakeLists.txt 2025-01-14 20:41:48.000000000 +0100 +++ new/aws-crt-cpp-0.30.1/bin/elasticurl_cpp/CMakeLists.txt 2025-01-30 22:25:12.000000000 +0100 @@ -1,7 +1,5 @@ project(elasticurl_cpp CXX) -list(APPEND CMAKE_MODULE_PATH "${CMAKE_PREFIX_PATH}/lib/cmake") - file(GLOB ELASTICURL_CPP_SRC "*.cpp" ) @@ -43,5 +41,5 @@ EXPORT ${ELASTICURL_CPP_PROJECT_NAME}-targets COMPONENT Runtime RUNTIME - DESTINATION bin + DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Runtime) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-crt-cpp-0.29.9/bin/mqtt5_app/CMakeLists.txt new/aws-crt-cpp-0.30.1/bin/mqtt5_app/CMakeLists.txt --- old/aws-crt-cpp-0.29.9/bin/mqtt5_app/CMakeLists.txt 2025-01-14 20:41:48.000000000 +0100 +++ new/aws-crt-cpp-0.30.1/bin/mqtt5_app/CMakeLists.txt 2025-01-30 22:25:12.000000000 +0100 @@ -1,7 +1,5 @@ project(mqtt5_app CXX) -list(APPEND CMAKE_MODULE_PATH "${CMAKE_PREFIX_PATH}/lib/cmake") - file(GLOB MQTT5_APP_SRC "*.cpp" ) @@ -43,5 +41,5 @@ EXPORT ${MQTT5_APP_PROJECT_NAME}-targets COMPONENT Runtime RUNTIME - DESTINATION bin + DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Runtime) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-crt-cpp-0.29.9/bin/mqtt5_canary/CMakeLists.txt new/aws-crt-cpp-0.30.1/bin/mqtt5_canary/CMakeLists.txt --- old/aws-crt-cpp-0.29.9/bin/mqtt5_canary/CMakeLists.txt 2025-01-14 20:41:48.000000000 +0100 +++ new/aws-crt-cpp-0.30.1/bin/mqtt5_canary/CMakeLists.txt 2025-01-30 22:25:12.000000000 +0100 @@ -1,7 +1,5 @@ project(mqtt5_canary CXX) -list(APPEND CMAKE_MODULE_PATH "${CMAKE_PREFIX_PATH}/lib/cmake") - file(GLOB MQTT5_CANARY_SRC "*.cpp" ) @@ -43,5 +41,5 @@ EXPORT ${MQTT5_CANARY_PROJECT_NAME}-targets COMPONENT Runtime RUNTIME - DESTINATION bin + DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Runtime) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-crt-cpp-0.29.9/include/aws/iot/MqttRequestResponseClient.h new/aws-crt-cpp-0.30.1/include/aws/iot/MqttRequestResponseClient.h --- old/aws-crt-cpp-0.29.9/include/aws/iot/MqttRequestResponseClient.h 2025-01-14 20:41:48.000000000 +0100 +++ new/aws-crt-cpp-0.30.1/include/aws/iot/MqttRequestResponseClient.h 2025-01-30 22:25:12.000000000 +0100 @@ -121,12 +121,28 @@ /** * Default constructor */ - IncomingPublishEvent() : m_payload() { AWS_ZERO_STRUCT(m_payload); } + IncomingPublishEvent() : m_topic(), m_payload() + { + AWS_ZERO_STRUCT(m_topic); + AWS_ZERO_STRUCT(m_payload); + } + + /** + * Sets the message response topic associated with this event. The event does not own this topic. + * + * @param topic the message response topic associated with this event + * @return reference to this + */ + IncomingPublishEvent &WithTopic(Aws::Crt::ByteCursor topic) + { + m_topic = topic; + return *this; + } /** * Sets the message payload associated with this event. The event does not own this payload. * - * @param payload he message payload associated with this event + * @param payload the message payload associated with this event * @return reference to this */ IncomingPublishEvent &WithPayload(Aws::Crt::ByteCursor payload) @@ -136,6 +152,13 @@ } /** + * Gets the message response topic associated with this event. + * + * @return the message response topic associated with this event + */ + Aws::Crt::ByteCursor GetTopic() const { return m_topic; } + + /** * Gets the message payload associated with this event. * * @return the message payload associated with this event @@ -143,6 +166,7 @@ Aws::Crt::ByteCursor GetPayload() const { return m_payload; } private: + Aws::Crt::ByteCursor m_topic; Aws::Crt::ByteCursor m_payload; }; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-crt-cpp-0.29.9/source/iot/MqttRequestResponseClient.cpp new/aws-crt-cpp-0.30.1/source/iot/MqttRequestResponseClient.cpp --- old/aws-crt-cpp-0.29.9/source/iot/MqttRequestResponseClient.cpp 2025-01-14 20:41:48.000000000 +0100 +++ new/aws-crt-cpp-0.30.1/source/iot/MqttRequestResponseClient.cpp 2025-01-30 22:25:12.000000000 +0100 @@ -89,7 +89,10 @@ int error_code, void *user_data); - static void OnIncomingPublishCallback(struct aws_byte_cursor payload, void *user_data); + static void OnIncomingPublishCallback( + struct aws_byte_cursor payload, + struct aws_byte_cursor topic, + void *user_data); static void OnTerminatedCallback(void *user_data); @@ -187,7 +190,10 @@ } } - void StreamingOperationImpl::OnIncomingPublishCallback(struct aws_byte_cursor payload, void *user_data) + void StreamingOperationImpl::OnIncomingPublishCallback( + struct aws_byte_cursor payload, + struct aws_byte_cursor topic, + void *user_data) { auto *handle = static_cast<StreamingOperationImplHandle *>(user_data); StreamingOperationImpl *impl = handle->m_impl.get(); @@ -198,7 +204,7 @@ if (!impl->m_closed && impl->m_config.incomingPublishEventHandler) { IncomingPublishEvent event; - event.WithPayload(payload); + event.WithTopic(topic).WithPayload(payload); impl->m_config.incomingPublishEventHandler(std::move(event)); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-crt-cpp-0.29.9/tests/MqttRequestResponse.cpp new/aws-crt-cpp-0.30.1/tests/MqttRequestResponse.cpp --- old/aws-crt-cpp-0.29.9/tests/MqttRequestResponse.cpp 2025-01-14 20:41:48.000000000 +0100 +++ new/aws-crt-cpp-0.30.1/tests/MqttRequestResponse.cpp 2025-01-30 22:25:12.000000000 +0100 @@ -40,6 +40,12 @@ bool complete; }; +struct TestPublishEvent +{ + Aws::Crt::String topic; + Aws::Crt::String payload; +}; + struct TestState { TestState(Aws::Crt::Allocator *allocator) : allocator(allocator) {} @@ -54,7 +60,7 @@ Aws::Crt::Vector<std::shared_ptr<ResponseTracker>> responseTrackers; Aws::Crt::Vector<Aws::Iot::RequestResponse::SubscriptionStatusEvent> subscriptionStatusEvents; - Aws::Crt::Vector<Aws::Crt::String> incomingPublishEvents; + Aws::Crt::Vector<TestPublishEvent> incomingPublishEvents; }; static void s_waitForConnected(struct TestState *state) @@ -168,17 +174,20 @@ { std::unique_lock<std::mutex> lock(state->lock); + auto topicCursor = event.GetTopic(); + Aws::Crt::String topicAsString((const char *)topicCursor.ptr, topicCursor.len); + auto payloadCursor = event.GetPayload(); Aws::Crt::String payloadAsString((const char *)payloadCursor.ptr, payloadCursor.len); - state->incomingPublishEvents.push_back(payloadAsString); + state->incomingPublishEvents.push_back({std::move(topicAsString), std::move(payloadAsString)}); } state->signal.notify_one(); } static void s_waitForIncomingPublishWithPredicate( TestState *state, - const std::function<bool(const Aws::Crt::String &)> &predicate) + const std::function<bool(const TestPublishEvent &)> &predicate) { { std::unique_lock<std::mutex> lock(state->lock); @@ -189,7 +198,7 @@ return std::any_of( state->incomingPublishEvents.cbegin(), state->incomingPublishEvents.cend(), - [=](const Aws::Crt::String &payload) { return predicate(payload); }); + [=](const TestPublishEvent &publishEvent) { return predicate(publishEvent); }); }); } } @@ -1077,7 +1086,9 @@ s_publishToProtocolClient(context, uuid, s_publishPayload, allocator); s_waitForIncomingPublishWithPredicate( - &state, [](const Aws::Crt::String &payload) { return payload == Aws::Crt::String(s_publishPayload); }); + &state, + [&uuid](const TestPublishEvent &publishEvent) + { return publishEvent.topic == uuid && publishEvent.payload == Aws::Crt::String(s_publishPayload); }); return AWS_OP_SUCCESS; }