Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package aws-c-http for openSUSE:Factory checked in at 2026-01-09 17:04:48 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/aws-c-http (Old) and /work/SRC/openSUSE:Factory/.aws-c-http.new.1928 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "aws-c-http" Fri Jan 9 17:04:48 2026 rev:22 rq:1326345 version:0.10.8 Changes: -------- --- /work/SRC/openSUSE:Factory/aws-c-http/aws-c-http.changes 2025-11-18 15:35:22.900160319 +0100 +++ /work/SRC/openSUSE:Factory/.aws-c-http.new.1928/aws-c-http.changes 2026-01-09 17:06:57.160606826 +0100 @@ -1,0 +2,8 @@ +Mon Jan 5 09:00:28 UTC 2026 - John Paul Adrian Glaubitz <[email protected]> + +- Update to 0.10.8 + * Fix CI issues by @azkrishpy in (#538) + * Update cert as it's expired by @TingDaoK in (#539) + * Add helper to check for transient errors by @azkrishpy in (#537) + +------------------------------------------------------------------- Old: ---- v0.10.7.tar.gz New: ---- v0.10.8.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ aws-c-http.spec ++++++ --- /var/tmp/diff_new_pack.jUiLLi/_old 2026-01-09 17:06:58.452660382 +0100 +++ /var/tmp/diff_new_pack.jUiLLi/_new 2026-01-09 17:06:58.460660713 +0100 @@ -20,7 +20,7 @@ %define library_version 1.0.0 %define library_soversion 1_0_0 Name: aws-c-http -Version: 0.10.7 +Version: 0.10.8 Release: 0 Summary: C99 implementation of the HTTP/1.1 and HTTP/2 specifications License: Apache-2.0 ++++++ v0.10.7.tar.gz -> v0.10.8.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-c-http-0.10.7/.github/workflows/ci.yml new/aws-c-http-0.10.8/.github/workflows/ci.yml --- old/aws-c-http-0.10.7/.github/workflows/ci.yml 2025-10-28 00:43:25.000000000 +0100 +++ new/aws-c-http-0.10.8/.github/workflows/ci.yml 2025-12-22 23:34:40.000000000 +0100 @@ -206,8 +206,6 @@ runs-on: macos-14 strategy: fail-fast: false - matrix: - eventloop: ["kqueue", "dispatch_queue"] steps: - uses: aws-actions/configure-aws-credentials@v4 with: @@ -250,8 +248,6 @@ runs-on: macos-14 strategy: fail-fast: false - matrix: - eventloop: ["kqueue", "dispatch_queue"] steps: - uses: aws-actions/configure-aws-credentials@v4 with: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-c-http-0.10.7/include/aws/http/http.h new/aws-c-http-0.10.8/include/aws/http/http.h --- old/aws-c-http-0.10.7/include/aws/http/http.h 2025-10-28 00:43:25.000000000 +0100 +++ new/aws-c-http-0.10.8/include/aws/http/http.h 2025-12-22 23:34:40.000000000 +0100 @@ -123,6 +123,14 @@ AWS_HTTP_API void aws_http_library_clean_up(void); +/* + * This API provides a recommendation on whether an error code should be considered retryable for transient + * errors like host resolution, sockets, and TLS. + * Note: This is a recommendation only. Retry behavior should be determined based on your specific use case. + */ +AWS_HTTP_API +bool aws_http_error_code_is_retryable(int error_code); + /** * Returns the description of common status codes. * Ex: 404 -> "Not Found" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-c-http-0.10.7/source/http.c new/aws-c-http-0.10.8/source/http.c --- old/aws-c-http-0.10.7/source/http.c 2025-10-28 00:43:25.000000000 +0100 +++ new/aws-c-http-0.10.8/source/http.c 2025-12-22 23:34:40.000000000 +0100 @@ -556,6 +556,19 @@ } } +/* + * This might need to get updated with more http error codes based on consensus. + */ +bool aws_http_error_code_is_retryable(int error_code) { + switch (error_code) { + case AWS_ERROR_HTTP_CONNECTION_CLOSED: + case AWS_ERROR_HTTP_SERVER_CLOSED: + case AWS_ERROR_HTTP_PROXY_CONNECT_FAILED_RETRYABLE: + return true; + } + return aws_io_error_code_is_retryable(error_code); +} + const struct aws_byte_cursor aws_http_method_get = AWS_BYTE_CUR_INIT_FROM_STRING_LITERAL("GET"); const struct aws_byte_cursor aws_http_method_head = AWS_BYTE_CUR_INIT_FROM_STRING_LITERAL("HEAD"); const struct aws_byte_cursor aws_http_method_post = AWS_BYTE_CUR_INIT_FROM_STRING_LITERAL("POST"); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-c-http-0.10.7/tests/CMakeLists.txt new/aws-c-http-0.10.8/tests/CMakeLists.txt --- old/aws-c-http-0.10.7/tests/CMakeLists.txt 2025-10-28 00:43:25.000000000 +0100 +++ new/aws-c-http-0.10.8/tests/CMakeLists.txt 2025-12-22 23:34:40.000000000 +0100 @@ -18,6 +18,8 @@ add_test_case("${NAME}_one_byte_at_a_time") endmacro() +add_test_case(test_http_error_code_is_retryable) + add_test_case(headers_add) add_test_case(headers_add_array) add_test_case(headers_set) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-c-http-0.10.7/tests/resources/unittests.crt new/aws-c-http-0.10.8/tests/resources/unittests.crt --- old/aws-c-http-0.10.7/tests/resources/unittests.crt 2025-10-28 00:43:25.000000000 +0100 +++ new/aws-c-http-0.10.8/tests/resources/unittests.crt 2025-12-22 23:34:40.000000000 +0100 @@ -1,23 +1,24 @@ -----BEGIN CERTIFICATE----- -MIID7DCCAtSgAwIBAgIJALEv6FDrJ/8NMA0GCSqGSIb3DQEBCwUAMIGaMQswCQYD -VQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEP -MA0GA1UECgwGQW1hem9uMQ0wCwYDVQQLDARTREtzMRIwEAYDVQQDDAlsb2NhbGhv -c3QxMDAuBgkqhkiG9w0BCQEWIWF3cy1zZGstY29tbW9uLXJ1bnRpbWVAYW1hem9u -LmNvbTAeFw0yMzA5MTgxNDIyMTZaFw0yNTEyMjAxNDIyMTZaMIGaMQswCQYDVQQG -EwJVUzETMBEGA1UECAwKV2FzaGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEPMA0G -A1UECgwGQW1hem9uMQ0wCwYDVQQLDARTREtzMRIwEAYDVQQDDAlsb2NhbGhvc3Qx -MDAuBgkqhkiG9w0BCQEWIWF3cy1zZGstY29tbW9uLXJ1bnRpbWVAYW1hem9uLmNv -bTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANdqV0j4DkQDJULWEW8b -s/znGqK2p9wthY8o4btL7nEhGUsMQyae+UwUBDGn0qUhCgEC3g7e8bg0Q2J+dleF -BOnBfsU1obc7H+5oTf5R2gz3L0dgEjwBJM5IpfCgi2OHurU8UsEPe7KZTbhGdPfR -6CWE0yxWkXiH3dQ982dRGHEsPMPhmdksRFH2FEi9ghZiGEpEI55bCQiKQqBoA4gQ -D2yFCTtylgQ19CYBg28d1n941xv2Ok+tyz7DvgEttEQr3BBdBf65QyDcyORABztU -zhHfXyjrviQCtOj8NZu+wYDqxOxbbyBu5GDVbjhD3iJzh5Drqq8g4rAdT8IsjzSG -6nUCAwEAAaMzMDEwEwYDVR0lBAwwCgYIKwYBBQUHAwEwGgYDVR0RBBMwEYIJbG9j -YWxob3N0hwR/AAABMA0GCSqGSIb3DQEBCwUAA4IBAQDSURKIog6XLQQDbVpyfAW0 -V8exQDzWyjwSF+ZwiTzATPZAiRg5K4UcBa9rB/+I9nkkWeSBBBSYlF5D4QKPEp9a -fZLQ5GRU4AQ1FOQyvvbt+bQJx5nEE68ebuVPkZVQdHlQKmrJVuOzFlO+6tZwvyfP -YppnMJsQawlRgZqPKAronU/5U2S7Z3CPHzAhWH3TsyJAEuu94UabLE3cXM2243rN -HOT7JxKHrCxJotxvsxQEl42wwSZ7tw2cIK6MtavLs3k7OpDol8uge7jWCE32oNQ2 -heg5USXHy1qAdw7YXG0WjDq9WN8pz6FwNT51IQSKvn1dcLIVW2uLVv8wn/v69A8z +MIIEFjCCAv6gAwIBAgIUAJcN1JUZsK4iXspnvkz3LBB7quMwDQYJKoZIhvcNAQEL +BQAwgZoxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApXYXNoaW5ndG9uMRAwDgYDVQQH +DAdTZWF0dGxlMQ8wDQYDVQQKDAZBbWF6b24xDTALBgNVBAsMBFNES3MxEjAQBgNV +BAMMCWxvY2FsaG9zdDEwMC4GCSqGSIb3DQEJARYhYXdzLXNkay1jb21tb24tcnVu +dGltZUBhbWF6b24uY29tMB4XDTI1MTIyMjIxMTY0MloXDTI4MDMyNTIxMTY0Mlow +gZoxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApXYXNoaW5ndG9uMRAwDgYDVQQHDAdT +ZWF0dGxlMQ8wDQYDVQQKDAZBbWF6b24xDTALBgNVBAsMBFNES3MxEjAQBgNVBAMM +CWxvY2FsaG9zdDEwMC4GCSqGSIb3DQEJARYhYXdzLXNkay1jb21tb24tcnVudGlt +ZUBhbWF6b24uY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA12pX +SPgORAMlQtYRbxuz/Ocaoran3C2Fjyjhu0vucSEZSwxDJp75TBQEMafSpSEKAQLe +Dt7xuDRDYn52V4UE6cF+xTWhtzsf7mhN/lHaDPcvR2ASPAEkzkil8KCLY4e6tTxS +wQ97splNuEZ099HoJYTTLFaReIfd1D3zZ1EYcSw8w+GZ2SxEUfYUSL2CFmIYSkQj +nlsJCIpCoGgDiBAPbIUJO3KWBDX0JgGDbx3Wf3jXG/Y6T63LPsO+AS20RCvcEF0F +/rlDINzI5EAHO1TOEd9fKOu+JAK06Pw1m77BgOrE7FtvIG7kYNVuOEPeInOHkOuq +ryDisB1PwiyPNIbqdQIDAQABo1IwUDATBgNVHSUEDDAKBggrBgEFBQcDATAaBgNV +HREEEzARgglsb2NhbGhvc3SHBH8AAAEwHQYDVR0OBBYEFA1xMLFkbCGnUD5dfnF7 +5Wcuz9kUMA0GCSqGSIb3DQEBCwUAA4IBAQCYcyTKwaOiX+MFYiNlu5M704XlDefx +UiUCsCZ2quT3x6HNufSa+L+6UGR5kxeGKqTU2lt4Vd7Lw7A7j7l+8LFEXeIskjH9 +qZFYyeArgEOX/1dW70ZX4ACQy1Pgwv7+QYqloeaTosHU7KJB5ti2Y+ZbQNmeX9n1 +grtq/Yww8LqFEBADT8lIwkY+gn0XDJX1RiVuWpWZV7eh9CfyaVl1mHu+oitoJFB8 +pWV2bGvaRGof/ItoxtjST3GpIq8cMgxX6fUR/CEtANjTImV2mA7vvaDrO7xnTMQA +lVByJeGJjR0hiR4Q6FeDvOtCGj5deejz/7HZiplhY+uJs4TPmsxR7oGI -----END CERTIFICATE----- Binary files old/aws-c-http-0.10.7/tests/resources/unittests.p12 and new/aws-c-http-0.10.8/tests/resources/unittests.p12 differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-c-http-0.10.7/tests/resources/unittests.readme new/aws-c-http-0.10.8/tests/resources/unittests.readme --- old/aws-c-http-0.10.7/tests/resources/unittests.readme 2025-10-28 00:43:25.000000000 +0100 +++ new/aws-c-http-0.10.8/tests/resources/unittests.readme 2025-12-22 23:34:40.000000000 +0100 @@ -13,4 +13,7 @@ Once it expires unit tests will start failing and it will need to be updated like so: $ openssl req -x509 -new -key unittests.key -config unittests.conf -out unittests.crt -days 824 -$ openssl pkcs12 -export -out unittests.p12 -inkey unittests.key -in unittests.crt -password pass:1234 +$ openssl pkcs12 -export -out unittests.p12 -inkey unittests.key -in unittests.crt -password pass:1234 -keypbe PBE-SHA1-3DES -certpbe PBE-SHA1-3DES -macalg sha1 + +Note: The PKCS#12 command uses SHA1 and 3DES encryption for macOS compatibility. +Modern OpenSSL 3.x defaults to algorithms that macOS Security Framework cannot import. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-c-http-0.10.7/tests/test_connection.c new/aws-c-http-0.10.8/tests/test_connection.c --- old/aws-c-http-0.10.7/tests/test_connection.c 2025-10-28 00:43:25.000000000 +0100 +++ new/aws-c-http-0.10.8/tests/test_connection.c 2025-12-22 23:34:40.000000000 +0100 @@ -735,14 +735,11 @@ tester.wait_client_connection_num = 1; tester.wait_server_connection_num = 1; -#ifndef __APPLE__ /* Server side ALPN doesn't work for MacOS */ ASSERT_FAILS(s_tester_wait(&tester, s_tester_connection_setup_pred)); /* Assert that we have the negotiated protocol and error returned from callback */ ASSERT_TRUE(aws_byte_buf_eq_c_str(&tester.negotiated_protocol, customized_alpn_string)); ASSERT_INT_EQUALS(aws_last_error(), AWS_ERROR_HTTP_UNSUPPORTED_PROTOCOL); -#else - ASSERT_SUCCESS(s_tester_wait(&tester, s_tester_connection_setup_pred)); -#endif + /* clean up */ release_all_client_connections(&tester); release_all_server_connections(&tester); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-c-http-0.10.7/tests/test_http.c new/aws-c-http-0.10.8/tests/test_http.c --- old/aws-c-http-0.10.7/tests/test_http.c 1970-01-01 01:00:00.000000000 +0100 +++ new/aws-c-http-0.10.8/tests/test_http.c 2025-12-22 23:34:40.000000000 +0100 @@ -0,0 +1,31 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include <aws/http/http.h> +#include <aws/testing/aws_test_harness.h> + +static int s_test_http_error_code_is_retryable(struct aws_allocator *allocator, void *ctx) { + (void)allocator; + (void)ctx; + + int error_code = 0; + ASSERT_FALSE(aws_http_error_code_is_retryable(error_code)); + + { + error_code = AWS_ERROR_HTTP_CONNECTION_CLOSED; + ASSERT_TRUE(aws_http_error_code_is_retryable(error_code)); + } + { + error_code = AWS_ERROR_HTTP_SERVER_CLOSED; + ASSERT_TRUE(aws_http_error_code_is_retryable(error_code)); + } + + error_code = AWS_ERROR_SUCCESS; + ASSERT_FALSE(aws_http_error_code_is_retryable(error_code)); + + return AWS_OP_SUCCESS; +} + +AWS_TEST_CASE(test_http_error_code_is_retryable, s_test_http_error_code_is_retryable); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aws-c-http-0.10.7/tests/test_proxy.c new/aws-c-http-0.10.8/tests/test_proxy.c --- old/aws-c-http-0.10.7/tests/test_proxy.c 2025-10-28 00:43:25.000000000 +0100 +++ new/aws-c-http-0.10.8/tests/test_proxy.c 2025-12-22 23:34:40.000000000 +0100 @@ -344,8 +344,15 @@ /* * For tls-enabled tunneling proxy connections: * Test the happy path by verifying CONNECT request, tls upgrade attempt + * TODO: This test is temporarily disabled on Apple platforms following a breaking change + * due to migration to the new Apple Network Framework. Investigations underway for rethinking + * proxy implementation on Apple platforms. Test should be re-enabled post-fix. */ static int s_test_https_tunnel_proxy_connection_success(struct aws_allocator *allocator, void *ctx) { +#if defined(AWS_OS_APPLE) + (void)allocator; + return AWS_OP_SKIP; +#endif (void)ctx; struct mocked_proxy_test_options options = {
