Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-boto3 for openSUSE:Factory checked in at 2025-12-12 21:40:50 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-boto3 (Old) and /work/SRC/openSUSE:Factory/.python-boto3.new.1939 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-boto3" Fri Dec 12 21:40:50 2025 rev:131 rq:1322631 version:1.42.5 Changes: -------- --- /work/SRC/openSUSE:Factory/python-boto3/python-boto3.changes 2025-11-25 15:56:08.566817625 +0100 +++ /work/SRC/openSUSE:Factory/.python-boto3.new.1939/python-boto3.changes 2025-12-12 21:41:21.813304738 +0100 @@ -1,0 +2,191 @@ +Tue Dec 9 12:28:56 UTC 2025 - John Paul Adrian Glaubitz <[email protected]> + +- Update to 1.42.5 + * api-change:``ce``: [``botocore``] Add support for Cost Category resource associations including + filtering by resource type on ListCostCategoryDefinitions and new + ListCostCategoryResourceAssociations API. + * api-change:``ec2``: [``botocore``] Amazon EC2 P6-B300 instances provide 8x NVIDIA Blackwell Ultra + GPUs with 2.1 TB high bandwidth GPU memory, 6.4 Tbps EFA networking, 300 Gbps dedicated ENA + throughput, and 4 TB of system memory. Amazon EC2 C8a instances are powered by 5th Gen AMD EPYC + processors with a maximum frequency of 4.5 GHz. + * api-change:``identitystore``: [``botocore``] Updating AWS Identity Store APIs to support + Attribute Extensions capability, with the first release adding Enterprise Attributes. This launch + aligns Identity Store APIs with SCIM for enterprise attributes, reducing cases when customers are + forced to use SCIM due to lack of SigV4 API support. + * api-change:``partnercentral-selling``: [``botocore``] Deal Sizing Service for AI-based deal size + estimation with AWS service-level breakdown, supporting Expansion and Migration deals across + Technology, and Reseller partner cohorts, including Pricing Calculator AddOn for MAP deals and + funding incentives. + * api-change:``rds``: [``botocore``] Adding support for tagging RDS Instance/Cluster Automated + Backups + * api-change:``redshift-serverless``: [``botocore``] Added GetIdentityCenterAuthToken API to + retrieve encrypted authentication tokens for Identity Center integrated serverless workgroups. This + API enables programmatic access to secure Identity Center tokens with proper error handling and + parameter validation across supported SDK languages. + * api-change:``rolesanywhere``: [``botocore``] Increases certificate string length for trust anchor + source data to support ML-DSA certificates. + * api-change:``sesv2``: [``botocore``] Update Mail Manager Archive ARN validation + * enhancement:ContainerProvider: [``botocore``] The ContainerProvider now works with arbitray HTTPS + URLs for `AWS_CONTAINER_CREDENTIALS_FULL_URI`. +- from version 1.42.4 + * api-change:``ecs``: [``botocore``] Updating stop-task API to encapsulate containers with custom + stop signal + * api-change:``iam``: [``botocore``] Adding the ExpirationTime attribute to the delegation request + resource. + * api-change:``inspector2``: [``botocore``] This release adds a new ScanStatus called "Unsupported + Code Artifacts". This ScanStatus will be returned when a Lambda function was not code scanned + because it has unsupported code artifacts. + * api-change:``partnercentral-account``: [``botocore``] Adding Verification API's to Partner + Central Account SDK. + * api-change:``sesv2``: [``botocore``] Updating the desired url for + `PutEmailIdentityDkimSigningAttributes` from v1 to v2 + * enhancement:AWSCRT: [``botocore``] Update awscrt version to 0.29.2 +- from version 1.42.3 + * api-change:``lambda``: [``botocore``] Add DisallowedByVpcEncryptionControl to the + LastUpdateStatusReasonCode and StateReasonCode enums to represent failures caused by VPC Encryption + Controls. +- from version 1.42.2 + * api-change:``bedrock``: [``botocore``] Adding support in Amazon Bedrock to customize models with + reinforcement fine-tuning (RFT) and support for updating the existing Custom Model Deployments. + * api-change:``sagemaker``: [``botocore``] Introduces Serverless training: A fully managed compute + infrastructure that abstracts away all infrastructure complexity, allowing you to focus purely on + model development. + Added AI model customization assets used to train, refine, and evaluate custom models during the + model customization process. +- from version 1.42.1 + * api-change:``bedrock``: [``botocore``] Adds the audioDataDeliveryEnabled boolean field to the + Model Invocation Logging Configuration. + * api-change:``bedrock-agentcore``: [``botocore``] Support for AgentCore Evaluations and Episodic + memory strategy for AgentCore Memory. + * api-change:``bedrock-agentcore-control``: [``botocore``] Supports AgentCore Evaluations, Policy, + Episodic Memory Strategy, Resource Based Policy for Runtime and Gateway APIs, API Gateway Rest API + Targets and enhances JWT authorizer. + * api-change:``bedrock-runtime``: [``botocore``] Adds support for Audio Blocks and Streaming Image + Output plus new Stop Reasons of malformed_model_output and malformed_tool_use. + * api-change:``ce``: [``botocore``] This release updates existing Savings Plans Purchase Analyzer + and Recommendations APIs to support Database Savings Plans. + * api-change:``datazone``: [``botocore``] Amazon DataZone now supports exporting Catalog datasets + as Amazon S3 tables, and provides automatic business glossary term suggestions for data assets. + * api-change:``endpoint-rules``: [``botocore``] Update endpoint-rules client to latest version + * api-change:``fsx``: [``botocore``] S3 Access Points support for FSx for NetApp ONTAP + * api-change:``guardduty``: [``botocore``] Adding support for extended threat detection for Amazon + EC2 and Amazon ECS. Adding support for wild card suppression rules. + * api-change:``lambda``: [``botocore``] Launching Lambda durable functions - a new feature to build + reliable multi-step applications and AI workflows natively within the Lambda developer experience. + * api-change:``logs``: [``botocore``] CloudWatch Logs adds managed S3 Tables integration to access + logs using other analytical tools, as well as facets and field indexing to simplify log analytics + in CloudWatch Logs Insights. + * api-change:``nova-act``: [``botocore``] Initial release of Nova Act SDK. The Nova Act service + enables customers to build and manage fleets of agents for automating production UI workflows with + high reliability, fastest time-to-value, and ease of implementation at scale. + * api-change:``observabilityadmin``: [``botocore``] CloudWatch Observability Admin adds pipelines + configuration for third party log ingestion and transformation of all logs ingested, integration of + CloudWatch logs with S3 Tables, and AWS account or organization level enablement for 7 AWS services. + * api-change:``opensearch``: [``botocore``] GPU-acceleration helps you build large-scale vector + databases faster and more efficiently. You can enable this feature on new OpenSearch domains and + OpenSearch Serverless collections. This feature uses GPU-acceleration to reduce the time needed to + index data into vector indexes. + * api-change:``opensearchserverless``: [``botocore``] GPU-acceleration helps you build large-scale + vector databases faster and more efficiently. You can enable this feature on new OpenSearch domains + and OpenSearch Serverless collections. This feature uses GPU-acceleration to reduce the time needed + to index data into vector indexes. + * api-change:``rds``: [``botocore``] RDS Oracle and SQL Server: Add support for adding, modifying, + and removing additional storage volumes, offering up to 256TiB storage; RDS SQL Server: Support + Developer Edition via custom engine versions for development and testing purposes; M7i/R7i + instances with Optimize CPU for cost savings. + * api-change:``s3``: [``botocore``] New S3 Storage Class FSX_ONTAP + * api-change:``s3control``: [``botocore``] Add support for S3 Storage Lens Advanced Performance + Metrics, Expanded Prefixes metrics report, and export to S3 Tables. + * api-change:``s3tables``: [``botocore``] Add storage class, replication, and table record + expiration features to S3 Tables. + * api-change:``s3vectors``: [``botocore``] Amazon S3 Vectors provides cost-effective, elastic, and + durable vector storage for queries based on semantic meaning and similarity. + * api-change:``sagemaker``: [``botocore``] Added support for serverless MLflow Apps. + Added support for new HubContentTypes (DataSet and JsonDoc) in Private Hub for AI model + customization assets, enabling tracking and management of training datasets and evaluators (reward + functions/prompts) throughout the ML lifecycle. + * api-change:``savingsplans``: [``botocore``] Added support for Amazon Database Savings Plans + * api-change:``securityhub``: [``botocore``] ITSM enhancements: DRYRUN mode for testing ticket + creation, ServiceNow now uses AWS Secrets Manager for credentials, ConnectorRegistrationsV2 renamed + to RegisterConnectorV2, added ServiceQuotaExceededException error, and ConnectorStatus visibility + in CreateConnectorV2. +- from version 1.42.0 + * api-change:``appintegrations``: [``botocore``] This release adds support for MCP servers via the + ApplicationType field, allowing customers to register their Bedrock AgentCore gateways as third + party applications. + * api-change:``bedrock-agent``: [``botocore``] Support audio and video ingestion on Bedrock + Knowledge Bases. + * api-change:``bedrock-agent-runtime``: [``botocore``] Support audio and video content retrieval on + Bedrock Knowledge Bases. + * api-change:``cleanrooms``: [``botocore``] AWS Clean Rooms now supports privacy-enhancing + synthetic dataset generation for custom ML training. + * api-change:``cleanroomsml``: [``botocore``] AWS Clean Rooms ML now supports privacy-enhancing + synthetic dataset generation for custom ML training. + * api-change:``connect``: [``botocore``] This is a combined re:Invent release for Amazon Connect. + * api-change:``connectcampaignsv2``: [``botocore``] This release added support for new WhatsApp + channel and Journey type outbound campaign + * api-change:``connectparticipant``: [``botocore``] Amazon Connect now supports message processing + that intercepts and processes chat messages before they reach any participant. + * api-change:``customer-profiles``: [``botocore``] This release introduces, CRUD APIs for the + DomainObjectType and Recommender resources, APIs to offer statistical insights on Object Type + Attributes, Changes to SegmentDefinition APIs to support SQL queries to create Segments, and + Changes to Domain APIs to support Data Store. + * api-change:``eks``: [``botocore``] This release adds support for EKS Capabilities + * api-change:``endpoint-rules``: [``botocore``] Update endpoint-rules client to latest version + * api-change:``glue``: [``botocore``] feature: Glue: Add support for Iceberg materialized view in + Glue Data Catalog, including updated CreateTable API to support materialized views and new APIs for + managing data refresh for materialized views. + feature: Glue: Add support for Iceberg table encryption keys and struct field defaults. + * api-change:``lambda``: [``botocore``] Launching Lambda Managed Instances - a new feature to run + Lambda on EC2. + * api-change:``lexv2-models``: [``botocore``] Adds support for speech-to-speech models for + human-like, adaptive, and expressive voice interactions. Also adds support for speech model + preference, allowing customers to select which speech model they want to use for speech-to-text + requests. + * api-change:``marketplace-agreement``: [``botocore``] This release supports 1/multi-product + transactions via offer sets. DescribeAgreement and SearchAgreements APIs now return offer set IDs. + SearchAgreements also supports filtering by offer set ID and 2/variable payment pricing terms will + be returned through GetAgreementTerms. + * api-change:``marketplace-catalog``: [``botocore``] This release introduces offer set entity in + AWS Marketplace Catalog API to enable multi-product transaction. Offer set enables sellers to group + multiple private offers into a single-click purchase experience, simplifying procurement for + customers purchasing multi-product solutions. + * api-change:``partnercentral-account``: [``botocore``] Initial GA launch of Partner Central Account + * api-change:``partnercentral-benefits``: [``botocore``] Initial GA launch of Partner Central + Benefits + * api-change:``partnercentral-selling``: [``botocore``] New Features: + Lead Management APIs for capturing and nurturing leads + Lead invitation support for partner collaboration + Lead-to-opportunity conversion operations + AWS Marketplace OfferSets support for opportunities + * api-change:``personalize``: [``botocore``] This release adds support for includedDatasetColumns + and performIncrementalUpdate in solution APIs, and rankingInfluence in campaign and batch inference + APIs. + * api-change:``qconnect``: [``botocore``] New AIAgent types: Orchestration for ModelContextProtocol + tool integration, CaseSummary for Amazon Connect Case summaries, NoteTaker for Agent Assistance + notes. Added ListSpans and Retrieve APIs. Enhanced Q in Connect AssistantAssociationType to support + Bring Your Own Bedrock Knowledge Bases. + * api-change:``route53globalresolver``: [``botocore``] Add SDK for Amazon Route 53 Global Resolver, + a fully managed DNS resolver service that offers broad DNS-filtering security controls. + * enhancement:AWSCRT: [``botocore``] Update awscrt version to 0.29.1 + * enhancement:``s3``: Adds partial ``TransferConfig`` support for CRT transfer managers. + * feature:``s3``: Added ``crt`` mode to ``preferred_transfer_client`` parameter in + ``TransferConfig`` to enable CRT transfer client in all environments. +- from version 1.41.5 + * api-change:``bedrock-runtime``: [``botocore``] Bedrock Runtime Reserved Service Support + * api-change:``compute-optimizer``: [``botocore``] Compute Optimizer now identifies idle NAT + Gateway resources for cost optimization based on traffic patterns and backup configuration + analysis. Access recommendations via the GetIdleRecommendations API. + * api-change:``cost-optimization-hub``: [``botocore``] This release enables AWS Cost Optimization + Hub to show cost optimization recommendations for NAT Gateway. +- from version 1.41.4 + * api-change:``ec2``: [``botocore``] This release adds support to view Network firewall proxy + appliances attached to an existing NAT Gateway via DescribeNatGateways API + NatGatewayAttachedAppliance structure. + * api-change:``network-firewall``: [``botocore``] Network Firewall release of the Proxy feature. + * api-change:``organizations``: [``botocore``] Add support for policy operations on the S3_POLICY + and BEDROCK_POLICY policy type. + * api-change:``route53``: [``botocore``] Adds support for new route53 feature: accelerated recovery. +- Update BuildRequires and Requires from setup.py + +------------------------------------------------------------------- Old: ---- 1.41.3.tar.gz New: ---- 1.42.5.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-boto3.spec ++++++ --- /var/tmp/diff_new_pack.ONU4HV/_old 2025-12-12 21:41:22.441331208 +0100 +++ /var/tmp/diff_new_pack.ONU4HV/_new 2025-12-12 21:41:22.441331208 +0100 @@ -23,25 +23,25 @@ %define pytestjobs -n ${RPM_BUILD_NCPUS:-1} %endif Name: python-boto3 -Version: 1.41.3 +Version: 1.42.5 Release: 0 Summary: Amazon Web Services Library License: Apache-2.0 URL: https://github.com/boto/boto3 Source: https://github.com/boto/boto3/archive/%{version}.tar.gz # Related test dependencies -BuildRequires: %{python_module botocore >= 1.41.3 with %python-botocore < 1.42.0} +BuildRequires: %{python_module botocore >= 1.42.5 with %python-botocore < 1.43.0} BuildRequires: %{python_module pip} BuildRequires: %{python_module pytest-xdist} BuildRequires: %{python_module pytest} -BuildRequires: %{python_module s3transfer >= 0.15.0 with %python-s3transfer < 0.16.0} +BuildRequires: %{python_module s3transfer >= 0.16.0 with %python-s3transfer < 0.17.0} BuildRequires: %{python_module setuptools} BuildRequires: %{python_module wheel} BuildRequires: fdupes BuildRequires: python-rpm-macros -Requires: (python-botocore >= 1.41.3 with python-botocore < 1.42.0) +Requires: (python-botocore >= 1.42.5 with python-botocore < 1.43.0) Requires: (python-jmespath >= 0.7.1 with python-jmespath < 2.0.0) -Requires: (python-s3transfer >= 0.15.0 with python-s3transfer < 0.16.0) +Requires: (python-s3transfer >= 0.16.0 with python-s3transfer < 0.17.0) BuildArch: noarch %if 0%{?sle_version} >= 150400 Obsoletes: python3-boto3 < %{version} @@ -57,21 +57,6 @@ http://boto3.readthedocs.org/en/latest/ - - - - - - - - - - - - - - - # Note to maintainers also familia with python-boto: # The documentation generation requires access to AWS, thus it is not # possible to generate the documentation in OBS ++++++ 1.41.3.tar.gz -> 1.42.5.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/.changes/1.41.4.json new/boto3-1.42.5/.changes/1.41.4.json --- old/boto3-1.41.3/.changes/1.41.4.json 1970-01-01 01:00:00.000000000 +0100 +++ new/boto3-1.42.5/.changes/1.41.4.json 2025-12-08 20:13:00.000000000 +0100 @@ -0,0 +1,22 @@ +[ + { + "category": "``ec2``", + "description": "[``botocore``] This release adds support to view Network firewall proxy appliances attached to an existing NAT Gateway via DescribeNatGateways API NatGatewayAttachedAppliance structure.", + "type": "api-change" + }, + { + "category": "``network-firewall``", + "description": "[``botocore``] Network Firewall release of the Proxy feature.", + "type": "api-change" + }, + { + "category": "``organizations``", + "description": "[``botocore``] Add support for policy operations on the S3_POLICY and BEDROCK_POLICY policy type.", + "type": "api-change" + }, + { + "category": "``route53``", + "description": "[``botocore``] Adds support for new route53 feature: accelerated recovery.", + "type": "api-change" + } +] \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/.changes/1.41.5.json new/boto3-1.42.5/.changes/1.41.5.json --- old/boto3-1.41.3/.changes/1.41.5.json 1970-01-01 01:00:00.000000000 +0100 +++ new/boto3-1.42.5/.changes/1.41.5.json 2025-12-08 20:13:00.000000000 +0100 @@ -0,0 +1,17 @@ +[ + { + "category": "``bedrock-runtime``", + "description": "[``botocore``] Bedrock Runtime Reserved Service Support", + "type": "api-change" + }, + { + "category": "``compute-optimizer``", + "description": "[``botocore``] Compute Optimizer now identifies idle NAT Gateway resources for cost optimization based on traffic patterns and backup configuration analysis. Access recommendations via the GetIdleRecommendations API.", + "type": "api-change" + }, + { + "category": "``cost-optimization-hub``", + "description": "[``botocore``] This release enables AWS Cost Optimization Hub to show cost optimization recommendations for NAT Gateway.", + "type": "api-change" + } +] \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/.changes/1.42.0.json new/boto3-1.42.5/.changes/1.42.0.json --- old/boto3-1.41.3/.changes/1.42.0.json 1970-01-01 01:00:00.000000000 +0100 +++ new/boto3-1.42.5/.changes/1.42.0.json 2025-12-08 20:13:00.000000000 +0100 @@ -0,0 +1,127 @@ +[ + { + "category": "``appintegrations``", + "description": "[``botocore``] This release adds support for MCP servers via the ApplicationType field, allowing customers to register their Bedrock AgentCore gateways as third party applications.", + "type": "api-change" + }, + { + "category": "``bedrock-agent``", + "description": "[``botocore``] Support audio and video ingestion on Bedrock Knowledge Bases.", + "type": "api-change" + }, + { + "category": "``bedrock-agent-runtime``", + "description": "[``botocore``] Support audio and video content retrieval on Bedrock Knowledge Bases.", + "type": "api-change" + }, + { + "category": "``cleanrooms``", + "description": "[``botocore``] AWS Clean Rooms now supports privacy-enhancing synthetic dataset generation for custom ML training.", + "type": "api-change" + }, + { + "category": "``cleanroomsml``", + "description": "[``botocore``] AWS Clean Rooms ML now supports privacy-enhancing synthetic dataset generation for custom ML training.", + "type": "api-change" + }, + { + "category": "``connect``", + "description": "[``botocore``] This is a combined re:Invent release for Amazon Connect.", + "type": "api-change" + }, + { + "category": "``connectcampaignsv2``", + "description": "[``botocore``] This release added support for new WhatsApp channel and Journey type outbound campaign", + "type": "api-change" + }, + { + "category": "``connectparticipant``", + "description": "[``botocore``] Amazon Connect now supports message processing that intercepts and processes chat messages before they reach any participant.", + "type": "api-change" + }, + { + "category": "``customer-profiles``", + "description": "[``botocore``] This release introduces, CRUD APIs for the DomainObjectType and Recommender resources, APIs to offer statistical insights on Object Type Attributes, Changes to SegmentDefinition APIs to support SQL queries to create Segments, and Changes to Domain APIs to support Data Store.", + "type": "api-change" + }, + { + "category": "``eks``", + "description": "[``botocore``] This release adds support for EKS Capabilities", + "type": "api-change" + }, + { + "category": "``endpoint-rules``", + "description": "[``botocore``] Update endpoint-rules client to latest version", + "type": "api-change" + }, + { + "category": "``glue``", + "description": "[``botocore``] feature: Glue: Add support for Iceberg materialized view in Glue Data Catalog, including updated CreateTable API to support materialized views and new APIs for managing data refresh for materialized views.\nfeature: Glue: Add support for Iceberg table encryption keys and struct field defaults.", + "type": "api-change" + }, + { + "category": "``lambda``", + "description": "[``botocore``] Launching Lambda Managed Instances - a new feature to run Lambda on EC2.", + "type": "api-change" + }, + { + "category": "``lexv2-models``", + "description": "[``botocore``] Adds support for speech-to-speech models for human-like, adaptive, and expressive voice interactions. Also adds support for speech model preference, allowing customers to select which speech model they want to use for speech-to-text requests.", + "type": "api-change" + }, + { + "category": "``marketplace-agreement``", + "description": "[``botocore``] This release supports 1/multi-product transactions via offer sets. DescribeAgreement and SearchAgreements APIs now return offer set IDs. SearchAgreements also supports filtering by offer set ID and 2/variable payment pricing terms will be returned through GetAgreementTerms.", + "type": "api-change" + }, + { + "category": "``marketplace-catalog``", + "description": "[``botocore``] This release introduces offer set entity in AWS Marketplace Catalog API to enable multi-product transaction. Offer set enables sellers to group multiple private offers into a single-click purchase experience, simplifying procurement for customers purchasing multi-product solutions.", + "type": "api-change" + }, + { + "category": "``partnercentral-account``", + "description": "[``botocore``] Initial GA launch of Partner Central Account", + "type": "api-change" + }, + { + "category": "``partnercentral-benefits``", + "description": "[``botocore``] Initial GA launch of Partner Central Benefits", + "type": "api-change" + }, + { + "category": "``partnercentral-selling``", + "description": "[``botocore``] New Features:\nLead Management APIs for capturing and nurturing leads\nLead invitation support for partner collaboration\nLead-to-opportunity conversion operations\nAWS Marketplace OfferSets support for opportunities", + "type": "api-change" + }, + { + "category": "``personalize``", + "description": "[``botocore``] This release adds support for includedDatasetColumns and performIncrementalUpdate in solution APIs, and rankingInfluence in campaign and batch inference APIs.", + "type": "api-change" + }, + { + "category": "``qconnect``", + "description": "[``botocore``] New AIAgent types: Orchestration for ModelContextProtocol tool integration, CaseSummary for Amazon Connect Case summaries, NoteTaker for Agent Assistance notes. Added ListSpans and Retrieve APIs. Enhanced Q in Connect AssistantAssociationType to support Bring Your Own Bedrock Knowledge Bases.", + "type": "api-change" + }, + { + "category": "``route53globalresolver``", + "description": "[``botocore``] Add SDK for Amazon Route 53 Global Resolver, a fully managed DNS resolver service that offers broad DNS-filtering security controls.", + "type": "api-change" + }, + { + "category": "AWSCRT", + "description": "[``botocore``] Update awscrt version to 0.29.1", + "type": "enhancement" + }, + { + "category": "``s3``", + "description": "Adds partial ``TransferConfig`` support for CRT transfer managers.", + "type": "enhancement" + }, + { + "category": "``s3``", + "description": "Added ``crt`` mode to ``preferred_transfer_client`` parameter in ``TransferConfig`` to enable CRT transfer client in all environments.", + "type": "feature" + } +] \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/.changes/1.42.1.json new/boto3-1.42.5/.changes/1.42.1.json --- old/boto3-1.41.3/.changes/1.42.1.json 1970-01-01 01:00:00.000000000 +0100 +++ new/boto3-1.42.5/.changes/1.42.1.json 2025-12-08 20:13:00.000000000 +0100 @@ -0,0 +1,117 @@ +[ + { + "category": "``bedrock``", + "description": "[``botocore``] Adds the audioDataDeliveryEnabled boolean field to the Model Invocation Logging Configuration.", + "type": "api-change" + }, + { + "category": "``bedrock-agentcore``", + "description": "[``botocore``] Support for AgentCore Evaluations and Episodic memory strategy for AgentCore Memory.", + "type": "api-change" + }, + { + "category": "``bedrock-agentcore-control``", + "description": "[``botocore``] Supports AgentCore Evaluations, Policy, Episodic Memory Strategy, Resource Based Policy for Runtime and Gateway APIs, API Gateway Rest API Targets and enhances JWT authorizer.", + "type": "api-change" + }, + { + "category": "``bedrock-runtime``", + "description": "[``botocore``] Adds support for Audio Blocks and Streaming Image Output plus new Stop Reasons of malformed_model_output and malformed_tool_use.", + "type": "api-change" + }, + { + "category": "``ce``", + "description": "[``botocore``] This release updates existing Savings Plans Purchase Analyzer and Recommendations APIs to support Database Savings Plans.", + "type": "api-change" + }, + { + "category": "``datazone``", + "description": "[``botocore``] Amazon DataZone now supports exporting Catalog datasets as Amazon S3 tables, and provides automatic business glossary term suggestions for data assets.", + "type": "api-change" + }, + { + "category": "``endpoint-rules``", + "description": "[``botocore``] Update endpoint-rules client to latest version", + "type": "api-change" + }, + { + "category": "``fsx``", + "description": "[``botocore``] S3 Access Points support for FSx for NetApp ONTAP", + "type": "api-change" + }, + { + "category": "``guardduty``", + "description": "[``botocore``] Adding support for extended threat detection for Amazon EC2 and Amazon ECS. Adding support for wild card suppression rules.", + "type": "api-change" + }, + { + "category": "``lambda``", + "description": "[``botocore``] Launching Lambda durable functions - a new feature to build reliable multi-step applications and AI workflows natively within the Lambda developer experience.", + "type": "api-change" + }, + { + "category": "``logs``", + "description": "[``botocore``] CloudWatch Logs adds managed S3 Tables integration to access logs using other analytical tools, as well as facets and field indexing to simplify log analytics in CloudWatch Logs Insights.", + "type": "api-change" + }, + { + "category": "``nova-act``", + "description": "[``botocore``] Initial release of Nova Act SDK. The Nova Act service enables customers to build and manage fleets of agents for automating production UI workflows with high reliability, fastest time-to-value, and ease of implementation at scale.", + "type": "api-change" + }, + { + "category": "``observabilityadmin``", + "description": "[``botocore``] CloudWatch Observability Admin adds pipelines configuration for third party log ingestion and transformation of all logs ingested, integration of CloudWatch logs with S3 Tables, and AWS account or organization level enablement for 7 AWS services.", + "type": "api-change" + }, + { + "category": "``opensearch``", + "description": "[``botocore``] GPU-acceleration helps you build large-scale vector databases faster and more efficiently. You can enable this feature on new OpenSearch domains and OpenSearch Serverless collections. This feature uses GPU-acceleration to reduce the time needed to index data into vector indexes.", + "type": "api-change" + }, + { + "category": "``opensearchserverless``", + "description": "[``botocore``] GPU-acceleration helps you build large-scale vector databases faster and more efficiently. You can enable this feature on new OpenSearch domains and OpenSearch Serverless collections. This feature uses GPU-acceleration to reduce the time needed to index data into vector indexes.", + "type": "api-change" + }, + { + "category": "``rds``", + "description": "[``botocore``] RDS Oracle and SQL Server: Add support for adding, modifying, and removing additional storage volumes, offering up to 256TiB storage; RDS SQL Server: Support Developer Edition via custom engine versions for development and testing purposes; M7i/R7i instances with Optimize CPU for cost savings.", + "type": "api-change" + }, + { + "category": "``s3``", + "description": "[``botocore``] New S3 Storage Class FSX_ONTAP", + "type": "api-change" + }, + { + "category": "``s3control``", + "description": "[``botocore``] Add support for S3 Storage Lens Advanced Performance Metrics, Expanded Prefixes metrics report, and export to S3 Tables.", + "type": "api-change" + }, + { + "category": "``s3tables``", + "description": "[``botocore``] Add storage class, replication, and table record expiration features to S3 Tables.", + "type": "api-change" + }, + { + "category": "``s3vectors``", + "description": "[``botocore``] Amazon S3 Vectors provides cost-effective, elastic, and durable vector storage for queries based on semantic meaning and similarity.", + "type": "api-change" + }, + { + "category": "``sagemaker``", + "description": "[``botocore``] Added support for serverless MLflow Apps.\n\nAdded support for new HubContentTypes (DataSet and JsonDoc) in Private Hub for AI model customization assets, enabling tracking and management of training datasets and evaluators (reward functions/prompts) throughout the ML lifecycle.", + "type": "api-change" + }, + { + "category": "``savingsplans``", + "description": "[``botocore``] Added support for Amazon Database Savings Plans", + "type": "api-change" + }, + { + "category": "``securityhub``", + "description": "[``botocore``] ITSM enhancements: DRYRUN mode for testing ticket creation, ServiceNow now uses AWS Secrets Manager for credentials, ConnectorRegistrationsV2 renamed to RegisterConnectorV2, added ServiceQuotaExceededException error, and ConnectorStatus visibility in CreateConnectorV2.", + "type": "api-change" + } +] \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/.changes/1.42.2.json new/boto3-1.42.5/.changes/1.42.2.json --- old/boto3-1.41.3/.changes/1.42.2.json 1970-01-01 01:00:00.000000000 +0100 +++ new/boto3-1.42.5/.changes/1.42.2.json 2025-12-08 20:13:00.000000000 +0100 @@ -0,0 +1,12 @@ +[ + { + "category": "``bedrock``", + "description": "[``botocore``] Adding support in Amazon Bedrock to customize models with reinforcement fine-tuning (RFT) and support for updating the existing Custom Model Deployments.", + "type": "api-change" + }, + { + "category": "``sagemaker``", + "description": "[``botocore``] Introduces Serverless training: A fully managed compute infrastructure that abstracts away all infrastructure complexity, allowing you to focus purely on model development.\n\nAdded AI model customization assets used to train, refine, and evaluate custom models during the model customization process.", + "type": "api-change" + } +] \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/.changes/1.42.3.json new/boto3-1.42.5/.changes/1.42.3.json --- old/boto3-1.41.3/.changes/1.42.3.json 1970-01-01 01:00:00.000000000 +0100 +++ new/boto3-1.42.5/.changes/1.42.3.json 2025-12-08 20:13:00.000000000 +0100 @@ -0,0 +1,7 @@ +[ + { + "category": "``lambda``", + "description": "[``botocore``] Add DisallowedByVpcEncryptionControl to the LastUpdateStatusReasonCode and StateReasonCode enums to represent failures caused by VPC Encryption Controls.", + "type": "api-change" + } +] \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/.changes/1.42.4.json new/boto3-1.42.5/.changes/1.42.4.json --- old/boto3-1.41.3/.changes/1.42.4.json 1970-01-01 01:00:00.000000000 +0100 +++ new/boto3-1.42.5/.changes/1.42.4.json 2025-12-08 20:13:00.000000000 +0100 @@ -0,0 +1,32 @@ +[ + { + "category": "``ecs``", + "description": "[``botocore``] Updating stop-task API to encapsulate containers with custom stop signal", + "type": "api-change" + }, + { + "category": "``iam``", + "description": "[``botocore``] Adding the ExpirationTime attribute to the delegation request resource.", + "type": "api-change" + }, + { + "category": "``inspector2``", + "description": "[``botocore``] This release adds a new ScanStatus called \"Unsupported Code Artifacts\". This ScanStatus will be returned when a Lambda function was not code scanned because it has unsupported code artifacts.", + "type": "api-change" + }, + { + "category": "``partnercentral-account``", + "description": "[``botocore``] Adding Verification API's to Partner Central Account SDK.", + "type": "api-change" + }, + { + "category": "``sesv2``", + "description": "[``botocore``] Updating the desired url for `PutEmailIdentityDkimSigningAttributes` from v1 to v2", + "type": "api-change" + }, + { + "category": "AWSCRT", + "description": "[``botocore``] Update awscrt version to 0.29.2", + "type": "enhancement" + } +] \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/.changes/1.42.5.json new/boto3-1.42.5/.changes/1.42.5.json --- old/boto3-1.41.3/.changes/1.42.5.json 1970-01-01 01:00:00.000000000 +0100 +++ new/boto3-1.42.5/.changes/1.42.5.json 2025-12-08 20:13:00.000000000 +0100 @@ -0,0 +1,47 @@ +[ + { + "category": "``ce``", + "description": "[``botocore``] Add support for Cost Category resource associations including filtering by resource type on ListCostCategoryDefinitions and new ListCostCategoryResourceAssociations API.", + "type": "api-change" + }, + { + "category": "``ec2``", + "description": "[``botocore``] Amazon EC2 P6-B300 instances provide 8x NVIDIA Blackwell Ultra GPUs with 2.1 TB high bandwidth GPU memory, 6.4 Tbps EFA networking, 300 Gbps dedicated ENA throughput, and 4 TB of system memory. Amazon EC2 C8a instances are powered by 5th Gen AMD EPYC processors with a maximum frequency of 4.5 GHz.", + "type": "api-change" + }, + { + "category": "``identitystore``", + "description": "[``botocore``] Updating AWS Identity Store APIs to support Attribute Extensions capability, with the first release adding Enterprise Attributes. This launch aligns Identity Store APIs with SCIM for enterprise attributes, reducing cases when customers are forced to use SCIM due to lack of SigV4 API support.", + "type": "api-change" + }, + { + "category": "``partnercentral-selling``", + "description": "[``botocore``] Deal Sizing Service for AI-based deal size estimation with AWS service-level breakdown, supporting Expansion and Migration deals across Technology, and Reseller partner cohorts, including Pricing Calculator AddOn for MAP deals and funding incentives.", + "type": "api-change" + }, + { + "category": "``rds``", + "description": "[``botocore``] Adding support for tagging RDS Instance/Cluster Automated Backups", + "type": "api-change" + }, + { + "category": "``redshift-serverless``", + "description": "[``botocore``] Added GetIdentityCenterAuthToken API to retrieve encrypted authentication tokens for Identity Center integrated serverless workgroups. This API enables programmatic access to secure Identity Center tokens with proper error handling and parameter validation across supported SDK languages.", + "type": "api-change" + }, + { + "category": "``rolesanywhere``", + "description": "[``botocore``] Increases certificate string length for trust anchor source data to support ML-DSA certificates.", + "type": "api-change" + }, + { + "category": "``sesv2``", + "description": "[``botocore``] Update Mail Manager Archive ARN validation", + "type": "api-change" + }, + { + "category": "ContainerProvider", + "description": "[``botocore``] The ContainerProvider now works with arbitray HTTPS URLs for `AWS_CONTAINER_CREDENTIALS_FULL_URI`.", + "type": "enhancement" + } +] \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/.github/workflows/lint.yml new/boto3-1.42.5/.github/workflows/lint.yml --- old/boto3-1.41.3/.github/workflows/lint.yml 2025-11-24 20:06:38.000000000 +0100 +++ new/boto3-1.42.5/.github/workflows/lint.yml 2025-12-08 20:13:00.000000000 +0100 @@ -15,7 +15,7 @@ steps: - uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 - name: Set up Python 3.9 - uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c + uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 with: python-version: 3.9 - name: Run pre-commit diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/.github/workflows/run-crt-test.yml new/boto3-1.42.5/.github/workflows/run-crt-test.yml --- old/boto3-1.41.3/.github/workflows/run-crt-test.yml 2025-11-24 20:06:38.000000000 +0100 +++ new/boto3-1.42.5/.github/workflows/run-crt-test.yml 2025-12-08 20:13:00.000000000 +0100 @@ -20,7 +20,7 @@ steps: - uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 - name: 'Set up Python ${{ matrix.python-version }}' - uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c + uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 with: python-version: '${{ matrix.python-version }}' cache: 'pip' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/.github/workflows/run-tests.yml new/boto3-1.42.5/.github/workflows/run-tests.yml --- old/boto3-1.41.3/.github/workflows/run-tests.yml 2025-11-24 20:06:38.000000000 +0100 +++ new/boto3-1.42.5/.github/workflows/run-tests.yml 2025-12-08 20:13:00.000000000 +0100 @@ -21,7 +21,7 @@ steps: - uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c + uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 with: python-version: ${{ matrix.python-version }} cache: 'pip' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/CHANGELOG.rst new/boto3-1.42.5/CHANGELOG.rst --- old/boto3-1.41.3/CHANGELOG.rst 2025-11-24 20:06:38.000000000 +0100 +++ new/boto3-1.42.5/CHANGELOG.rst 2025-12-08 20:13:00.000000000 +0100 @@ -2,6 +2,128 @@ CHANGELOG ========= +1.42.5 +====== + +* api-change:``ce``: [``botocore``] Add support for Cost Category resource associations including filtering by resource type on ListCostCategoryDefinitions and new ListCostCategoryResourceAssociations API. +* api-change:``ec2``: [``botocore``] Amazon EC2 P6-B300 instances provide 8x NVIDIA Blackwell Ultra GPUs with 2.1 TB high bandwidth GPU memory, 6.4 Tbps EFA networking, 300 Gbps dedicated ENA throughput, and 4 TB of system memory. Amazon EC2 C8a instances are powered by 5th Gen AMD EPYC processors with a maximum frequency of 4.5 GHz. +* api-change:``identitystore``: [``botocore``] Updating AWS Identity Store APIs to support Attribute Extensions capability, with the first release adding Enterprise Attributes. This launch aligns Identity Store APIs with SCIM for enterprise attributes, reducing cases when customers are forced to use SCIM due to lack of SigV4 API support. +* api-change:``partnercentral-selling``: [``botocore``] Deal Sizing Service for AI-based deal size estimation with AWS service-level breakdown, supporting Expansion and Migration deals across Technology, and Reseller partner cohorts, including Pricing Calculator AddOn for MAP deals and funding incentives. +* api-change:``rds``: [``botocore``] Adding support for tagging RDS Instance/Cluster Automated Backups +* api-change:``redshift-serverless``: [``botocore``] Added GetIdentityCenterAuthToken API to retrieve encrypted authentication tokens for Identity Center integrated serverless workgroups. This API enables programmatic access to secure Identity Center tokens with proper error handling and parameter validation across supported SDK languages. +* api-change:``rolesanywhere``: [``botocore``] Increases certificate string length for trust anchor source data to support ML-DSA certificates. +* api-change:``sesv2``: [``botocore``] Update Mail Manager Archive ARN validation +* enhancement:ContainerProvider: [``botocore``] The ContainerProvider now works with arbitray HTTPS URLs for `AWS_CONTAINER_CREDENTIALS_FULL_URI`. + + +1.42.4 +====== + +* api-change:``ecs``: [``botocore``] Updating stop-task API to encapsulate containers with custom stop signal +* api-change:``iam``: [``botocore``] Adding the ExpirationTime attribute to the delegation request resource. +* api-change:``inspector2``: [``botocore``] This release adds a new ScanStatus called "Unsupported Code Artifacts". This ScanStatus will be returned when a Lambda function was not code scanned because it has unsupported code artifacts. +* api-change:``partnercentral-account``: [``botocore``] Adding Verification API's to Partner Central Account SDK. +* api-change:``sesv2``: [``botocore``] Updating the desired url for `PutEmailIdentityDkimSigningAttributes` from v1 to v2 +* enhancement:AWSCRT: [``botocore``] Update awscrt version to 0.29.2 + + +1.42.3 +====== + +* api-change:``lambda``: [``botocore``] Add DisallowedByVpcEncryptionControl to the LastUpdateStatusReasonCode and StateReasonCode enums to represent failures caused by VPC Encryption Controls. + + +1.42.2 +====== + +* api-change:``bedrock``: [``botocore``] Adding support in Amazon Bedrock to customize models with reinforcement fine-tuning (RFT) and support for updating the existing Custom Model Deployments. +* api-change:``sagemaker``: [``botocore``] Introduces Serverless training: A fully managed compute infrastructure that abstracts away all infrastructure complexity, allowing you to focus purely on model development. + +Added AI model customization assets used to train, refine, and evaluate custom models during the model customization process. + + +1.42.1 +====== + +* api-change:``bedrock``: [``botocore``] Adds the audioDataDeliveryEnabled boolean field to the Model Invocation Logging Configuration. +* api-change:``bedrock-agentcore``: [``botocore``] Support for AgentCore Evaluations and Episodic memory strategy for AgentCore Memory. +* api-change:``bedrock-agentcore-control``: [``botocore``] Supports AgentCore Evaluations, Policy, Episodic Memory Strategy, Resource Based Policy for Runtime and Gateway APIs, API Gateway Rest API Targets and enhances JWT authorizer. +* api-change:``bedrock-runtime``: [``botocore``] Adds support for Audio Blocks and Streaming Image Output plus new Stop Reasons of malformed_model_output and malformed_tool_use. +* api-change:``ce``: [``botocore``] This release updates existing Savings Plans Purchase Analyzer and Recommendations APIs to support Database Savings Plans. +* api-change:``datazone``: [``botocore``] Amazon DataZone now supports exporting Catalog datasets as Amazon S3 tables, and provides automatic business glossary term suggestions for data assets. +* api-change:``endpoint-rules``: [``botocore``] Update endpoint-rules client to latest version +* api-change:``fsx``: [``botocore``] S3 Access Points support for FSx for NetApp ONTAP +* api-change:``guardduty``: [``botocore``] Adding support for extended threat detection for Amazon EC2 and Amazon ECS. Adding support for wild card suppression rules. +* api-change:``lambda``: [``botocore``] Launching Lambda durable functions - a new feature to build reliable multi-step applications and AI workflows natively within the Lambda developer experience. +* api-change:``logs``: [``botocore``] CloudWatch Logs adds managed S3 Tables integration to access logs using other analytical tools, as well as facets and field indexing to simplify log analytics in CloudWatch Logs Insights. +* api-change:``nova-act``: [``botocore``] Initial release of Nova Act SDK. The Nova Act service enables customers to build and manage fleets of agents for automating production UI workflows with high reliability, fastest time-to-value, and ease of implementation at scale. +* api-change:``observabilityadmin``: [``botocore``] CloudWatch Observability Admin adds pipelines configuration for third party log ingestion and transformation of all logs ingested, integration of CloudWatch logs with S3 Tables, and AWS account or organization level enablement for 7 AWS services. +* api-change:``opensearch``: [``botocore``] GPU-acceleration helps you build large-scale vector databases faster and more efficiently. You can enable this feature on new OpenSearch domains and OpenSearch Serverless collections. This feature uses GPU-acceleration to reduce the time needed to index data into vector indexes. +* api-change:``opensearchserverless``: [``botocore``] GPU-acceleration helps you build large-scale vector databases faster and more efficiently. You can enable this feature on new OpenSearch domains and OpenSearch Serverless collections. This feature uses GPU-acceleration to reduce the time needed to index data into vector indexes. +* api-change:``rds``: [``botocore``] RDS Oracle and SQL Server: Add support for adding, modifying, and removing additional storage volumes, offering up to 256TiB storage; RDS SQL Server: Support Developer Edition via custom engine versions for development and testing purposes; M7i/R7i instances with Optimize CPU for cost savings. +* api-change:``s3``: [``botocore``] New S3 Storage Class FSX_ONTAP +* api-change:``s3control``: [``botocore``] Add support for S3 Storage Lens Advanced Performance Metrics, Expanded Prefixes metrics report, and export to S3 Tables. +* api-change:``s3tables``: [``botocore``] Add storage class, replication, and table record expiration features to S3 Tables. +* api-change:``s3vectors``: [``botocore``] Amazon S3 Vectors provides cost-effective, elastic, and durable vector storage for queries based on semantic meaning and similarity. +* api-change:``sagemaker``: [``botocore``] Added support for serverless MLflow Apps. + +Added support for new HubContentTypes (DataSet and JsonDoc) in Private Hub for AI model customization assets, enabling tracking and management of training datasets and evaluators (reward functions/prompts) throughout the ML lifecycle. +* api-change:``savingsplans``: [``botocore``] Added support for Amazon Database Savings Plans +* api-change:``securityhub``: [``botocore``] ITSM enhancements: DRYRUN mode for testing ticket creation, ServiceNow now uses AWS Secrets Manager for credentials, ConnectorRegistrationsV2 renamed to RegisterConnectorV2, added ServiceQuotaExceededException error, and ConnectorStatus visibility in CreateConnectorV2. + + +1.42.0 +====== + +* api-change:``appintegrations``: [``botocore``] This release adds support for MCP servers via the ApplicationType field, allowing customers to register their Bedrock AgentCore gateways as third party applications. +* api-change:``bedrock-agent``: [``botocore``] Support audio and video ingestion on Bedrock Knowledge Bases. +* api-change:``bedrock-agent-runtime``: [``botocore``] Support audio and video content retrieval on Bedrock Knowledge Bases. +* api-change:``cleanrooms``: [``botocore``] AWS Clean Rooms now supports privacy-enhancing synthetic dataset generation for custom ML training. +* api-change:``cleanroomsml``: [``botocore``] AWS Clean Rooms ML now supports privacy-enhancing synthetic dataset generation for custom ML training. +* api-change:``connect``: [``botocore``] This is a combined re:Invent release for Amazon Connect. +* api-change:``connectcampaignsv2``: [``botocore``] This release added support for new WhatsApp channel and Journey type outbound campaign +* api-change:``connectparticipant``: [``botocore``] Amazon Connect now supports message processing that intercepts and processes chat messages before they reach any participant. +* api-change:``customer-profiles``: [``botocore``] This release introduces, CRUD APIs for the DomainObjectType and Recommender resources, APIs to offer statistical insights on Object Type Attributes, Changes to SegmentDefinition APIs to support SQL queries to create Segments, and Changes to Domain APIs to support Data Store. +* api-change:``eks``: [``botocore``] This release adds support for EKS Capabilities +* api-change:``endpoint-rules``: [``botocore``] Update endpoint-rules client to latest version +* api-change:``glue``: [``botocore``] feature: Glue: Add support for Iceberg materialized view in Glue Data Catalog, including updated CreateTable API to support materialized views and new APIs for managing data refresh for materialized views. +feature: Glue: Add support for Iceberg table encryption keys and struct field defaults. +* api-change:``lambda``: [``botocore``] Launching Lambda Managed Instances - a new feature to run Lambda on EC2. +* api-change:``lexv2-models``: [``botocore``] Adds support for speech-to-speech models for human-like, adaptive, and expressive voice interactions. Also adds support for speech model preference, allowing customers to select which speech model they want to use for speech-to-text requests. +* api-change:``marketplace-agreement``: [``botocore``] This release supports 1/multi-product transactions via offer sets. DescribeAgreement and SearchAgreements APIs now return offer set IDs. SearchAgreements also supports filtering by offer set ID and 2/variable payment pricing terms will be returned through GetAgreementTerms. +* api-change:``marketplace-catalog``: [``botocore``] This release introduces offer set entity in AWS Marketplace Catalog API to enable multi-product transaction. Offer set enables sellers to group multiple private offers into a single-click purchase experience, simplifying procurement for customers purchasing multi-product solutions. +* api-change:``partnercentral-account``: [``botocore``] Initial GA launch of Partner Central Account +* api-change:``partnercentral-benefits``: [``botocore``] Initial GA launch of Partner Central Benefits +* api-change:``partnercentral-selling``: [``botocore``] New Features: +Lead Management APIs for capturing and nurturing leads +Lead invitation support for partner collaboration +Lead-to-opportunity conversion operations +AWS Marketplace OfferSets support for opportunities +* api-change:``personalize``: [``botocore``] This release adds support for includedDatasetColumns and performIncrementalUpdate in solution APIs, and rankingInfluence in campaign and batch inference APIs. +* api-change:``qconnect``: [``botocore``] New AIAgent types: Orchestration for ModelContextProtocol tool integration, CaseSummary for Amazon Connect Case summaries, NoteTaker for Agent Assistance notes. Added ListSpans and Retrieve APIs. Enhanced Q in Connect AssistantAssociationType to support Bring Your Own Bedrock Knowledge Bases. +* api-change:``route53globalresolver``: [``botocore``] Add SDK for Amazon Route 53 Global Resolver, a fully managed DNS resolver service that offers broad DNS-filtering security controls. +* enhancement:AWSCRT: [``botocore``] Update awscrt version to 0.29.1 +* enhancement:``s3``: Adds partial ``TransferConfig`` support for CRT transfer managers. +* feature:``s3``: Added ``crt`` mode to ``preferred_transfer_client`` parameter in ``TransferConfig`` to enable CRT transfer client in all environments. + + +1.41.5 +====== + +* api-change:``bedrock-runtime``: [``botocore``] Bedrock Runtime Reserved Service Support +* api-change:``compute-optimizer``: [``botocore``] Compute Optimizer now identifies idle NAT Gateway resources for cost optimization based on traffic patterns and backup configuration analysis. Access recommendations via the GetIdleRecommendations API. +* api-change:``cost-optimization-hub``: [``botocore``] This release enables AWS Cost Optimization Hub to show cost optimization recommendations for NAT Gateway. + + +1.41.4 +====== + +* api-change:``ec2``: [``botocore``] This release adds support to view Network firewall proxy appliances attached to an existing NAT Gateway via DescribeNatGateways API NatGatewayAttachedAppliance structure. +* api-change:``network-firewall``: [``botocore``] Network Firewall release of the Proxy feature. +* api-change:``organizations``: [``botocore``] Add support for policy operations on the S3_POLICY and BEDROCK_POLICY policy type. +* api-change:``route53``: [``botocore``] Adds support for new route53 feature: accelerated recovery. + + 1.41.3 ====== diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/README.rst new/boto3-1.42.5/README.rst --- old/boto3-1.41.3/README.rst 2025-11-24 20:06:38.000000000 +0100 +++ new/boto3-1.42.5/README.rst 2025-12-08 20:13:00.000000000 +0100 @@ -85,7 +85,7 @@ .. code-block:: ini [default] - region=us-east-1 + region = us-east-1 Other credential configuration methods can be found `here <https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html>`__ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/boto3/__init__.py new/boto3-1.42.5/boto3/__init__.py --- old/boto3-1.41.3/boto3/__init__.py 2025-11-24 20:06:38.000000000 +0100 +++ new/boto3-1.42.5/boto3/__init__.py 2025-12-08 20:13:00.000000000 +0100 @@ -18,7 +18,7 @@ from boto3.session import Session __author__ = 'Amazon Web Services' -__version__ = '1.41.3' +__version__ = '1.42.5' # The default Boto3 session; autoloaded when needed. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/boto3/compat.py new/boto3-1.42.5/boto3/compat.py --- old/boto3-1.41.3/boto3/compat.py 2025-11-24 20:06:38.000000000 +0100 +++ new/boto3-1.42.5/boto3/compat.py 2025-12-08 20:13:00.000000000 +0100 @@ -18,6 +18,8 @@ from boto3.exceptions import PythonDeprecationWarning +from s3transfer.manager import TransferConfig + # In python3, socket.error is OSError, which is too general # for what we want (i.e FileNotFoundError is a subclass of OSError). # In py3 all the socket related errors are in a newly created @@ -29,6 +31,9 @@ import collections.abc as collections_abc +TRANSFER_CONFIG_SUPPORTS_CRT = hasattr(TransferConfig, 'UNSET_DEFAULT') + + if sys.platform.startswith('win'): def rename_file(current_filename, new_filename): try: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/boto3/crt.py new/boto3-1.42.5/boto3/crt.py --- old/boto3-1.41.3/boto3/crt.py 2025-11-24 20:06:38.000000000 +0100 +++ new/boto3-1.42.5/boto3/crt.py 2025-12-08 20:13:00.000000000 +0100 @@ -19,6 +19,7 @@ contained within are subject to abrupt breaking changes. """ +import logging import threading import botocore.exceptions @@ -31,6 +32,12 @@ create_s3_crt_client, ) +from boto3.compat import TRANSFER_CONFIG_SUPPORTS_CRT +from boto3.exceptions import InvalidCrtTransferConfigError +from boto3.s3.constants import CRT_TRANSFER_CLIENT + +logger = logging.getLogger(__name__) + # Singletons for CRT-backed transfers CRT_S3_CLIENT = None BOTOCORE_CRT_SERIALIZER = None @@ -39,6 +46,15 @@ PROCESS_LOCK_NAME = 'boto3' +_ALLOWED_CRT_TRANSFER_CONFIG_OPTIONS = { + 'multipart_threshold', + 'max_concurrency', + 'max_request_concurrency', + 'multipart_chunksize', + 'preferred_transfer_client', +} + + def _create_crt_client(session, config, region_name, cred_provider): """Create a CRT S3 Client for file transfer. @@ -157,11 +173,45 @@ return is_matching_identity +def _validate_crt_transfer_config(config): + if config is None: + return + # CRT client can also be configured via `AUTO_RESOLVE_TRANSFER_CLIENT` + # but it predates this validation. We only validate against CRT client + # configured via `CRT_TRANSFER_CLIENT` to preserve compatibility. + if config.preferred_transfer_client != CRT_TRANSFER_CLIENT: + return + invalid_crt_args = [] + for param in config.DEFAULTS.keys(): + val = config.get_deep_attr(param) + if ( + param not in _ALLOWED_CRT_TRANSFER_CONFIG_OPTIONS + and val is not config.UNSET_DEFAULT + ): + invalid_crt_args.append(param) + if len(invalid_crt_args) > 0: + raise InvalidCrtTransferConfigError( + "The following transfer config options are invalid " + "when preferred_transfer_client is set to crt: " + f"{', '.join(invalid_crt_args)}`" + ) + + def create_crt_transfer_manager(client, config): """Create a CRTTransferManager for optimized data transfer.""" crt_s3_client = get_crt_s3_client(client, config) if is_crt_compatible_request(client, crt_s3_client): - return CRTTransferManager( - crt_s3_client.crt_client, BOTOCORE_CRT_SERIALIZER - ) + crt_transfer_manager_kwargs = { + 'crt_s3_client': crt_s3_client.crt_client, + 'crt_request_serializer': BOTOCORE_CRT_SERIALIZER, + } + if TRANSFER_CONFIG_SUPPORTS_CRT: + _validate_crt_transfer_config(config) + crt_transfer_manager_kwargs['config'] = config + if not TRANSFER_CONFIG_SUPPORTS_CRT and config: + logger.warning( + 'Using TransferConfig with CRT client requires ' + 's3transfer >= 0.16.0, configured values will be ignored.' + ) + return CRTTransferManager(**crt_transfer_manager_kwargs) return None diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/boto3/exceptions.py new/boto3-1.42.5/boto3/exceptions.py --- old/boto3-1.41.3/boto3/exceptions.py 2025-11-24 20:06:38.000000000 +0100 +++ new/boto3-1.42.5/boto3/exceptions.py 2025-12-08 20:13:00.000000000 +0100 @@ -124,3 +124,7 @@ """ pass + + +class InvalidCrtTransferConfigError(Boto3Error): + pass diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/boto3/s3/constants.py new/boto3-1.42.5/boto3/s3/constants.py --- old/boto3-1.41.3/boto3/s3/constants.py 2025-11-24 20:06:38.000000000 +0100 +++ new/boto3-1.42.5/boto3/s3/constants.py 2025-12-08 20:13:00.000000000 +0100 @@ -14,4 +14,5 @@ # TransferConfig preferred_transfer_client settings CLASSIC_TRANSFER_CLIENT = "classic" +CRT_TRANSFER_CLIENT = "crt" AUTO_RESOLVE_TRANSFER_CLIENT = "auto" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/boto3/s3/transfer.py new/boto3-1.42.5/boto3/s3/transfer.py --- old/boto3-1.41.3/boto3/s3/transfer.py 2025-11-24 20:06:38.000000000 +0100 +++ new/boto3-1.42.5/boto3/s3/transfer.py 2025-12-08 20:13:00.000000000 +0100 @@ -128,7 +128,7 @@ from os import PathLike, fspath, getpid from botocore.compat import HAS_CRT -from botocore.exceptions import ClientError +from botocore.exceptions import ClientError, MissingDependencyException from s3transfer.exceptions import ( RetriesExceededError as S3TransferRetriesExceededError, ) @@ -139,7 +139,11 @@ from s3transfer.utils import OSUtils import boto3.s3.constants as constants -from boto3.exceptions import RetriesExceededError, S3UploadFailedError +from boto3.compat import TRANSFER_CONFIG_SUPPORTS_CRT +from boto3.exceptions import ( + RetriesExceededError, + S3UploadFailedError, +) if HAS_CRT: import awscrt.s3 @@ -184,16 +188,26 @@ def _should_use_crt(config): # This feature requires awscrt>=0.19.18 - if HAS_CRT and has_minimum_crt_version((0, 19, 18)): - is_optimized_instance = awscrt.s3.is_optimized_for_system() - else: - is_optimized_instance = False + has_min_crt = HAS_CRT and has_minimum_crt_version((0, 19, 18)) + is_optimized_instance = has_min_crt and awscrt.s3.is_optimized_for_system() pref_transfer_client = config.preferred_transfer_client.lower() if ( + pref_transfer_client == constants.CRT_TRANSFER_CLIENT + and not has_min_crt + ): + msg = ( + "CRT transfer client is configured but is missing minimum CRT " + f"version. CRT installed: {HAS_CRT}" + ) + if HAS_CRT: + msg += f", with version: {awscrt.__version__}" + raise MissingDependencyException(msg=msg) + + if ( is_optimized_instance and pref_transfer_client == constants.AUTO_RESOLVE_TRANSFER_CLIENT - ): + ) or pref_transfer_client == constants.CRT_TRANSFER_CLIENT: logger.debug( "Attempting to use CRTTransferManager. Config settings may be ignored." ) @@ -235,18 +249,31 @@ 'max_concurrency': 'max_request_concurrency', 'max_io_queue': 'max_io_queue_size', } + DEFAULTS = { + 'multipart_threshold': 8 * MB, + 'max_concurrency': 10, + 'max_request_concurrency': 10, + 'multipart_chunksize': 8 * MB, + 'num_download_attempts': 5, + 'max_io_queue': 100, + 'max_io_queue_size': 100, + 'io_chunksize': 256 * KB, + 'use_threads': True, + 'max_bandwidth': None, + 'preferred_transfer_client': constants.AUTO_RESOLVE_TRANSFER_CLIENT, + } def __init__( self, - multipart_threshold=8 * MB, - max_concurrency=10, - multipart_chunksize=8 * MB, - num_download_attempts=5, - max_io_queue=100, - io_chunksize=256 * KB, - use_threads=True, + multipart_threshold=None, + max_concurrency=None, + multipart_chunksize=None, + num_download_attempts=None, + max_io_queue=None, + io_chunksize=None, + use_threads=None, max_bandwidth=None, - preferred_transfer_client=constants.AUTO_RESOLVE_TRANSFER_CLIENT, + preferred_transfer_client=None, ): """Configuration object for managed S3 transfers @@ -270,23 +297,30 @@ Other retryable exceptions such as throttling errors and 5xx errors are already retried by botocore (this default is 5). This does not take into account the number of exceptions retried by - botocore. + botocore. Note: This value is ignored when resolved transfer + manager type is CRTTransferManager. :param max_io_queue: The maximum amount of read parts that can be queued in memory to be written for a download. The size of each of these read parts is at most the size of ``io_chunksize``. + Note: This value is ignored when resolved transfer manager type + is CRTTransferManager. :param io_chunksize: The max size of each chunk in the io queue. Currently, this is size used when ``read`` is called on the - downloaded stream as well. + downloaded stream as well. Note: This value is ignored when + resolved transfer manager type is CRTTransferManager. :param use_threads: If True, threads will be used when performing S3 transfers. If False, no threads will be used in performing transfers; all logic will be run in the current thread. + Note: This value is ignored when resolved transfer manager type is + CRTTransferManager. :param max_bandwidth: The maximum bandwidth that will be consumed in uploading and downloading file content. The value is an integer - in terms of bytes per second. + in terms of bytes per second. Note: This value is ignored when + resolved transfer manager type is CRTTransferManager. :param preferred_transfer_client: String specifying preferred transfer client for transfer operations. @@ -296,23 +330,40 @@ are made with supported environment and settings. * classic - Only use the origin S3TransferManager with requests. Disables possible CRT upgrade on requests. + * crt - Only use the CRTTransferManager with requests. """ + init_args = { + 'multipart_threshold': multipart_threshold, + 'max_concurrency': max_concurrency, + 'multipart_chunksize': multipart_chunksize, + 'num_download_attempts': num_download_attempts, + 'max_io_queue': max_io_queue, + 'io_chunksize': io_chunksize, + 'use_threads': use_threads, + 'max_bandwidth': max_bandwidth, + 'preferred_transfer_client': preferred_transfer_client, + } + resolved = self._resolve_init_args(init_args) super().__init__( - multipart_threshold=multipart_threshold, - max_request_concurrency=max_concurrency, - multipart_chunksize=multipart_chunksize, - num_download_attempts=num_download_attempts, - max_io_queue_size=max_io_queue, - io_chunksize=io_chunksize, - max_bandwidth=max_bandwidth, + multipart_threshold=resolved['multipart_threshold'], + max_request_concurrency=resolved['max_concurrency'], + multipart_chunksize=resolved['multipart_chunksize'], + num_download_attempts=resolved['num_download_attempts'], + max_io_queue_size=resolved['max_io_queue'], + io_chunksize=resolved['io_chunksize'], + max_bandwidth=resolved['max_bandwidth'], ) # Some of the argument names are not the same as the inherited # S3TransferConfig so we add aliases so you can still access the # old version of the names. for alias in self.ALIAS: - setattr(self, alias, getattr(self, self.ALIAS[alias])) - self.use_threads = use_threads - self.preferred_transfer_client = preferred_transfer_client + setattr( + self, + alias, + object.__getattribute__(self, self.ALIAS[alias]), + ) + self.use_threads = resolved['use_threads'] + self.preferred_transfer_client = resolved['preferred_transfer_client'] def __setattr__(self, name, value): # If the alias name is used, make sure we set the name that it points @@ -322,6 +373,28 @@ # Always set the value of the actual name provided. super().__setattr__(name, value) + def __getattribute__(self, item): + value = object.__getattribute__(self, item) + if not TRANSFER_CONFIG_SUPPORTS_CRT: + return value + defaults = object.__getattribute__(self, 'DEFAULTS') + if item not in defaults: + return value + if value is self.UNSET_DEFAULT: + return defaults[item] + return value + + def _resolve_init_args(self, init_args): + resolved = {} + for init_arg, val in init_args.items(): + if val is not None: + resolved[init_arg] = val + elif TRANSFER_CONFIG_SUPPORTS_CRT: + resolved[init_arg] = self.UNSET_DEFAULT + else: + resolved[init_arg] = self.DEFAULTS[init_arg] + return resolved + class S3Transfer: ALLOWED_DOWNLOAD_ARGS = TransferManager.ALLOWED_DOWNLOAD_ARGS diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/boto3/utils.py new/boto3-1.42.5/boto3/utils.py --- old/boto3-1.41.3/boto3/utils.py 2025-11-24 20:06:38.000000000 +0100 +++ new/boto3-1.42.5/boto3/utils.py 2025-12-08 20:13:00.000000000 +0100 @@ -10,8 +10,8 @@ # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF # ANY KIND, either express or implied. See the License for the specific # language governing permissions and limitations under the License. -import sys from collections import namedtuple +from importlib import import_module _ServiceContext = namedtuple( 'ServiceContext', @@ -47,16 +47,6 @@ pass -def import_module(name): - """Import module given a name. - - Does not support relative imports. - - """ - __import__(name) - return sys.modules[name] - - def lazy_call(full_name, **kwargs): parent_kwargs = kwargs diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/setup.cfg new/boto3-1.42.5/setup.cfg --- old/boto3-1.41.3/setup.cfg 2025-11-24 20:06:38.000000000 +0100 +++ new/boto3-1.42.5/setup.cfg 2025-12-08 20:13:00.000000000 +0100 @@ -3,9 +3,9 @@ [metadata] requires_dist = - botocore>=1.41.3,<1.42.0 + botocore>=1.42.5,<1.43.0 jmespath>=0.7.1,<2.0.0 - s3transfer>=0.15.0,<0.16.0 + s3transfer>=0.16.0,<0.17.0 [options.extras_require] crt = botocore[crt]>=1.21.0,<2.0a0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/setup.py new/boto3-1.42.5/setup.py --- old/boto3-1.41.3/setup.py 2025-11-24 20:06:38.000000000 +0100 +++ new/boto3-1.42.5/setup.py 2025-12-08 20:13:00.000000000 +0100 @@ -14,9 +14,9 @@ requires = [ - 'botocore>=1.41.3,<1.42.0', + 'botocore>=1.42.5,<1.43.0', 'jmespath>=0.7.1,<2.0.0', - 's3transfer>=0.15.0,<0.16.0', + 's3transfer>=0.16.0,<0.17.0', ] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/tests/functional/test_crt.py new/boto3-1.42.5/tests/functional/test_crt.py --- old/boto3-1.41.3/tests/functional/test_crt.py 2025-11-24 20:06:38.000000000 +0100 +++ new/boto3-1.42.5/tests/functional/test_crt.py 2025-12-08 20:13:00.000000000 +0100 @@ -16,7 +16,11 @@ import pytest from botocore.compat import HAS_CRT from botocore.credentials import Credentials +from botocore.exceptions import MissingDependencyException +from boto3.exceptions import ( + InvalidCrtTransferConfigError, +) from boto3.s3.transfer import ( TransferConfig, create_transfer_manager, @@ -69,6 +73,37 @@ assert isinstance(transfer_manager, CRTTransferManager) @requires_crt() + def test_create_transfer_manager_with_crt_preferred(self): + client = create_mock_client() + config = TransferConfig( + preferred_transfer_client='crt', + ) + transfer_manager = create_transfer_manager(client, config) + assert isinstance(transfer_manager, CRTTransferManager) + + @mock.patch("boto3.s3.transfer.HAS_CRT", False) + def test_create_transfer_manager_with_crt_preferred_no_crt(self): + client = create_mock_client() + config = TransferConfig( + preferred_transfer_client='crt', + ) + with pytest.raises(MissingDependencyException) as exc: + create_transfer_manager(client, config) + assert "missing minimum CRT" in str(exc.value) + + @requires_crt() + @mock.patch("awscrt.__version__", "0.19.0") + def test_create_transfer_manager_with_crt_preferred_bad_version(self): + client = create_mock_client() + config = TransferConfig( + preferred_transfer_client='crt', + ) + with pytest.raises(MissingDependencyException) as exc: + create_transfer_manager(client, config) + assert "missing minimum CRT" in str(exc.value) + assert "with version: 0.19.0" in str(exc.value) + + @requires_crt() def test_minimum_crt_version(self): assert has_minimum_crt_version((0, 16, 12)) is True @@ -87,3 +122,30 @@ vers.return_value = bad_version assert has_minimum_crt_version((0, 16, 12)) is False + + @requires_crt() + def test_crt_transfer_manager_raises_with_invalid_crt_config(self): + client = create_mock_client() + config = TransferConfig( + preferred_transfer_client='crt', + # `max_bandwidth` is not an allowed CRT config option. + max_bandwidth=1024, + ) + with pytest.raises(InvalidCrtTransferConfigError) as exc: + create_transfer_manager(client, config) + assert "transfer config options are invalid" in str(exc.value) + assert "max_bandwidth" in str(exc.value) + + @requires_crt() + @MockOptimizedInstance() + def test_auto_transfer_manager_succeeds_with_invalid_crt_config(self): + client = create_mock_client() + config = TransferConfig( + preferred_transfer_client='auto', + # `max_bandwidth` is not an allowed CRT config option. + # But config should only be validated when + # `preferred_transfer_client` == `crt`. + max_bandwidth=1024, + ) + transfer_manager = create_transfer_manager(client, config) + assert isinstance(transfer_manager, CRTTransferManager) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/tests/unit/s3/test_transfer.py new/boto3-1.42.5/tests/unit/s3/test_transfer.py --- old/boto3-1.41.3/tests/unit/s3/test_transfer.py 2025-11-24 20:06:38.000000000 +0100 +++ new/boto3-1.42.5/tests/unit/s3/test_transfer.py 2025-12-08 20:13:00.000000000 +0100 @@ -76,6 +76,17 @@ client, config, None, None ) + def test_classic_transfer_manager_succeeds_with_invalid_crt_config(self): + client = create_mock_client() + config = TransferConfig( + preferred_transfer_client="classic", + # `max_bandwidth` is not an allowed CRT config option. + max_bandwidth=MB, + ) + with mock.patch('boto3.s3.transfer.TransferManager') as manager: + create_transfer_manager(client, config) + assert manager.call_args == mock.call(client, config, None, None) + class TestTransferConfig(unittest.TestCase): def assert_value_of_actual_and_alias( @@ -174,6 +185,49 @@ == copied_config.preferred_transfer_client ) + def test_unset_default(self): + config = TransferConfig() + defaults = TransferConfig.DEFAULTS + + # Assert top-level params and aliases return defaults + # when accessed via public property. + assert config.multipart_threshold == defaults['multipart_threshold'] + assert config.max_concurrency == defaults['max_concurrency'] + assert ( + config.max_request_concurrency + == defaults['max_request_concurrency'] + ) + assert config.multipart_chunksize == defaults['multipart_chunksize'] + assert ( + config.num_download_attempts == defaults['num_download_attempts'] + ) + assert config.max_io_queue == defaults['max_io_queue'] + assert config.max_io_queue_size == defaults['max_io_queue_size'] + assert config.io_chunksize == defaults['io_chunksize'] + assert config.use_threads == defaults['use_threads'] + assert config.max_bandwidth == defaults['max_bandwidth'] + assert ( + config.preferred_transfer_client + == defaults['preferred_transfer_client'] + ) + # Assert top-level params and aliases return UNSET_DEFAULT + # when directly accessed. + for param in defaults: + assert config.get_deep_attr(param) == TransferConfig.UNSET_DEFAULT + + def test_explicit_config_values(self): + config = TransferConfig( + multipart_threshold=4 * MB, + ) + config.max_concurrency = 1 + + assert config.multipart_threshold == 4 * MB + assert config.max_concurrency == 1 + assert config.max_request_concurrency == 1 + assert config.get_deep_attr('multipart_threshold') == 4 * MB + assert config.get_deep_attr('max_concurrency') == 1 + assert config.get_deep_attr('max_request_concurrency') == 1 + class TestProgressCallbackInvoker(unittest.TestCase): def test_on_progress(self): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/boto3-1.41.3/tests/unit/test_crt.py new/boto3-1.42.5/tests/unit/test_crt.py --- old/boto3-1.41.3/tests/unit/test_crt.py 2025-11-24 20:06:38.000000000 +0100 +++ new/boto3-1.42.5/tests/unit/test_crt.py 2025-12-08 20:13:00.000000000 +0100 @@ -213,3 +213,21 @@ ) assert use1_crt_s3_client is crt_s3_client assert use1_crt_s3_client.region == "us-west-2" + + @requires_crt() + @mock.patch('boto3.crt.TRANSFER_CONFIG_SUPPORTS_CRT', False) + def test_config_without_crt_support_emits_warning( + self, + mock_crt_process_lock, + mock_crt_client_singleton, + mock_serializer_singleton, + caplog, + ): + config = TransferConfig() + boto3.crt.create_crt_transfer_manager(USW2_S3_CLIENT, config) + assert any( + [ + 'requires s3transfer >= 0.16.0' in r.message + for r in caplog.records + ] + )
