-
-
Notifications
You must be signed in to change notification settings - Fork 436
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Only use "sysmon" core when available (Python 3.12 ) #1747
Only use "sysmon" core when available (Python 3.12 ) #1747
Conversation
066a897
to
b095db2
Compare
Without this, you need to use something like this (in the # Enable experimental faster sys.monitoring coverage for Python 3.12
- name: Set COVERAGE_CORE=sysmon
run: echo "COVERAGE_CORE=sysmon" >> $GITHUB_ENV
if: matrix.python-version == 3.12 |
It feels a bit odd to me to silently ignore the setting when it can't be used. Maybe we could issue a warning? |
A warning seems like the best solution to me. That would alert people who might not realize that the option does nothing in Python 3.11, but still let you set the flag on CI without using complex workarounds. |
b095db2
to
718bce3
Compare
718bce3
to
f079960
Compare
Thanks! I'll add the warning in the next commits. |
This is now released as part of coverage 7.4.2. |
Thanks! We get between 9% and 27% speedup for Pillow! |
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [coverage](https://togithub.com/nedbat/coveragepy) | `==7.4.1` -> `==7.4.2` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/coverage/7.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/coverage/7.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/coverage/7.4.1/7.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/coverage/7.4.1/7.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>nedbat/coveragepy (coverage)</summary> ### [`v7.4.2`](https://togithub.com/nedbat/coveragepy/blob/HEAD/CHANGES.rst#Version-742--2024-02-20) [Compare Source](https://togithub.com/nedbat/coveragepy/compare/7.4.1...7.4.2) - Fix: setting `COVERAGE_CORE=sysmon` no longer errors on 3.11 and lower, thanks `Hugo van Kemenade <pull 1747_>`\_. It now issues a warning that sys.monitoring is not available and falls back to the default core instead. .. \_pull 1747:[https://github.com/nedbat/coveragepy/pull/1747](https://togithub.com/nedbat/coveragepy/pull/1747)7 .. \_changes\_7-4-1: </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/allenporter/flux-local). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yMDAuMCIsInVwZGF0ZWRJblZlciI6IjM3LjIwMC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9--> Co-authored-by: renovate[bot] <29139614 renovate[bot]@users.noreply.github.com>
* Only use sysmon core when available (Python 3.12 ) * Update test case for both with and without SysMonitor
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [SQLAlchemy](https://www.sqlalchemy.org) ([changelog](https://docs.sqlalchemy.org/en/latest/changelog/)) | `2.0.25` -> `2.0.27` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/SQLAlchemy/2.0.27?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/SQLAlchemy/2.0.27?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/SQLAlchemy/2.0.25/2.0.27?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/SQLAlchemy/2.0.25/2.0.27?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [bandit](https://bandit.readthedocs.io/) ([source](https://togithub.com/PyCQA/bandit), [changelog](https://togithub.com/PyCQA/bandit/releases)) | `1.7.6` -> `1.7.7` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/bandit/1.7.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/bandit/1.7.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/bandit/1.7.6/1.7.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/bandit/1.7.6/1.7.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [boto3](https://togithub.com/boto/boto3) | `1.34.23` -> `1.34.50` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/boto3/1.34.50?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/boto3/1.34.50?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/boto3/1.34.23/1.34.50?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/boto3/1.34.23/1.34.50?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [botocore](https://togithub.com/boto/botocore) | `1.34.23` -> `1.34.50` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/botocore/1.34.50?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/botocore/1.34.50?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/botocore/1.34.23/1.34.50?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/botocore/1.34.23/1.34.50?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [coverage](https://togithub.com/nedbat/coveragepy) | `7.4.0` -> `7.4.3` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/coverage/7.4.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/coverage/7.4.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/coverage/7.4.0/7.4.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/coverage/7.4.0/7.4.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [marshmallow](https://togithub.com/marshmallow-code/marshmallow) ([changelog](https://marshmallow.readthedocs.io/en/latest/changelog.html)) | `3.20.2` -> `3.21.0` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/marshmallow/3.21.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/marshmallow/3.21.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/marshmallow/3.20.2/3.21.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/marshmallow/3.20.2/3.21.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [moto](https://togithub.com/getmoto/moto) ([changelog](https://togithub.com/getmoto/moto/blob/master/CHANGELOG.md)) | `4.2.13` -> `4.2.14` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/moto/4.2.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/moto/4.2.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/moto/4.2.13/4.2.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/moto/4.2.13/4.2.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [psycopg](https://psycopg.org/psycopg3/) ([source](https://togithub.com/psycopg/psycopg), [changelog](https://psycopg.org/psycopg3/docs/news.html)) | `3.1.17` -> `3.1.18` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/psycopg/3.1.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/psycopg/3.1.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/psycopg/3.1.17/3.1.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/psycopg/3.1.17/3.1.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [pydantic](https://togithub.com/pydantic/pydantic) ([changelog](https://docs.pydantic.dev/latest/changelog/)) | `2.5.3` -> `2.6.2` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/pydantic/2.6.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/pydantic/2.6.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/pydantic/2.5.3/2.6.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/pydantic/2.5.3/2.6.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [pydantic-settings](https://togithub.com/pydantic/pydantic-settings) ([changelog](https://togithub.com/pydantic/pydantic-settings/releases)) | `2.1.0` -> `2.2.1` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/pydantic-settings/2.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/pydantic-settings/2.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/pydantic-settings/2.1.0/2.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/pydantic-settings/2.1.0/2.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [python-dotenv](https://togithub.com/theskumar/python-dotenv) | `1.0.0` -> `1.0.1` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/python-dotenv/1.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/python-dotenv/1.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/python-dotenv/1.0.0/1.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/python-dotenv/1.0.0/1.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>PyCQA/bandit (bandit)</summary> ### [`v1.7.7`](https://togithub.com/PyCQA/bandit/releases/tag/1.7.7) [Compare Source](https://togithub.com/PyCQA/bandit/compare/1.7.6...1.7.7) #### What's Changed - Add the new release to bandit versions of bug template by [@​ericwb](https://togithub.com/ericwb) in [https://github.com/PyCQA/bandit/pull/1075](https://togithub.com/PyCQA/bandit/pull/1075) - Bump actions/setup-python from 4 to 5 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/PyCQA/bandit/pull/1076](https://togithub.com/PyCQA/bandit/pull/1076) - Handle variant in how policy is passed in paramiko by [@​ericwb](https://togithub.com/ericwb) in [https://github.com/PyCQA/bandit/pull/1078](https://togithub.com/PyCQA/bandit/pull/1078) - Flag str.replace as possible sql injection by [@​costaparas](https://togithub.com/costaparas) in [https://github.com/PyCQA/bandit/pull/1044](https://togithub.com/PyCQA/bandit/pull/1044) - defusedxml: Show correct module name by [@​kajinamit](https://togithub.com/kajinamit) in [https://github.com/PyCQA/bandit/pull/1081](https://togithub.com/PyCQA/bandit/pull/1081) - Add tidelift to the sponsor funding list by [@​ericwb](https://togithub.com/ericwb) in [https://github.com/PyCQA/bandit/pull/1089](https://togithub.com/PyCQA/bandit/pull/1089) - Create a security policy by [@​ericwb](https://togithub.com/ericwb) in [https://github.com/PyCQA/bandit/pull/1091](https://togithub.com/PyCQA/bandit/pull/1091) - Fix up issues found running Bandit on itself by [@​ericwb](https://togithub.com/ericwb) in [https://github.com/PyCQA/bandit/pull/1093](https://togithub.com/PyCQA/bandit/pull/1093) - Add random.randbytes to blacklist calls by [@​ericwb](https://togithub.com/ericwb) in [https://github.com/PyCQA/bandit/pull/1096](https://togithub.com/PyCQA/bandit/pull/1096) - Prepend ./ for files specified as CLI args by [@​ericwb](https://togithub.com/ericwb) in [https://github.com/PyCQA/bandit/pull/1094](https://togithub.com/PyCQA/bandit/pull/1094) - Rework GitPython dependency to be an extra for bandit-baseline by [@​ericwb](https://togithub.com/ericwb) in [https://github.com/PyCQA/bandit/pull/1099](https://togithub.com/PyCQA/bandit/pull/1099) - Bump actions/dependency-review-action from 3 to 4 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/PyCQA/bandit/pull/1101](https://togithub.com/PyCQA/bandit/pull/1101) - Introduce Official Bandit Images by [@​lukehinds](https://togithub.com/lukehinds) in [https://github.com/PyCQA/bandit/pull/1088](https://togithub.com/PyCQA/bandit/pull/1088) - Remove markdown formatting in reStructuredText formatted README by [@​ericwb](https://togithub.com/ericwb) in [https://github.com/PyCQA/bandit/pull/1103](https://togithub.com/PyCQA/bandit/pull/1103) - Downsize the org:repo name by [@​lukehinds](https://togithub.com/lukehinds) in [https://github.com/PyCQA/bandit/pull/1104](https://togithub.com/PyCQA/bandit/pull/1104) #### New Contributors - [@​kajinamit](https://togithub.com/kajinamit) made their first contribution in [https://github.com/PyCQA/bandit/pull/1081](https://togithub.com/PyCQA/bandit/pull/1081) **Full Changelog**: https://github.com/PyCQA/bandit/compare/1.7.6...1.7.7 </details> <details> <summary>boto/boto3 (boto3)</summary> ### [`v1.34.50`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13450) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.49...1.34.50) \======= - api-change:`apigateway`: \[`botocore`] Documentation updates for Amazon API Gateway. - api-change:`drs`: \[`botocore`] Added volume status to DescribeSourceServer replicated volumes. - api-change:`kafkaconnect`: \[`botocore`] Adds support for tagging, with new TagResource, UntagResource and ListTagsForResource APIs to manage tags and updates to existing APIs to allow tag on create. This release also adds support for the new DeleteWorkerConfiguration API. - api-change:`rds`: \[`botocore`] This release adds support for gp3 data volumes for Multi-AZ DB Clusters. ### [`v1.34.49`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13449) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.48...1.34.49) \======= - api-change:`appsync`: \[`botocore`] Documentation only updates for AppSync - api-change:`qldb`: \[`botocore`] Clarify possible values for KmsKeyArn and EncryptionDescription. - api-change:`rds`: \[`botocore`] Add pattern and length based validations for DBShardGroupIdentifier - api-change:`rum`: \[`botocore`] Doc-only update for new RUM metrics that were added ### [`v1.34.48`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13448) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.47...1.34.48) \======= - api-change:`internetmonitor`: \[`botocore`] This release adds IPv4 prefixes to health events - api-change:`kinesisvideo`: \[`botocore`] Increasing NextToken parameter length restriction for List APIs from 512 to 1024. ### [`v1.34.47`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13447) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.46...1.34.47) \======= - api-change:`iotevents`: \[`botocore`] Increase the maximum length of descriptions for Inputs, Detector Models, and Alarm Models - api-change:`lookoutequipment`: \[`botocore`] This release adds a field exposing model quality to read APIs for models. It also adds a model quality field to the API response when creating an inference scheduler. - api-change:`medialive`: \[`botocore`] MediaLive now supports the ability to restart pipelines in a running channel. - api-change:`ssm`: \[`botocore`] This release adds support for sharing Systems Manager parameters with other AWS accounts. ### [`v1.34.46`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13446) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.45...1.34.46) \======= - api-change:`dynamodb`: \[`botocore`] Publishing quick fix for doc only update. - api-change:`firehose`: \[`botocore`] This release updates a few Firehose related APIs. - api-change:`lambda`: \[`botocore`] Add .NET 8 (dotnet8) Runtime support to AWS Lambda. ### [`v1.34.45`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13445) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.44...1.34.45) \======= - api-change:`amplify`: \[`botocore`] This release contains API changes that enable users to configure their Amplify domains with their own custom SSL/TLS certificate. - api-change:`chatbot`: \[`botocore`] This release adds support for AWS Chatbot. You can now monitor, operate, and troubleshoot your AWS resources with interactive ChatOps using the AWS SDK. - api-change:`config`: \[`botocore`] Documentation updates for the AWS Config CLI - api-change:`ivs`: \[`botocore`] Changed description for latencyMode in Create/UpdateChannel and Channel/ChannelSummary. - api-change:`keyspaces`: \[`botocore`] Documentation updates for Amazon Keyspaces - api-change:`mediatailor`: \[`botocore`] MediaTailor: marking #AdBreak.OffsetMillis as required. ### [`v1.34.44`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13444) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.43...1.34.44) \======= - api-change:`connectparticipant`: \[`botocore`] Doc only update to GetTranscript API reference guide to inform users about presence of events in the chat transcript. - api-change:`emr`: \[`botocore`] adds fine grained control over Unhealthy Node Replacement to Amazon ElasticMapReduce - api-change:`firehose`: \[`botocore`] This release adds support for Data Message Extraction for decompressed CloudWatch logs, and to use a custom file extension or time zone for S3 destinations. - api-change:`lambda`: \[`botocore`] Documentation-only updates for Lambda to clarify a number of existing actions and properties. - api-change:`rds`: \[`botocore`] Doc only update for a valid option in DB parameter group - api-change:`sns`: \[`botocore`] This release marks phone numbers as sensitive inputs. ### [`v1.34.43`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13443) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.42...1.34.43) \======= - api-change:`artifact`: \[`botocore`] This is the initial SDK release for AWS Artifact. AWS Artifact provides on-demand access to compliance and third-party compliance reports. This release includes access to List and Get reports, along with their metadata. This release also includes access to AWS Artifact notifications settings. - api-change:`codepipeline`: \[`botocore`] Add ability to override timeout on action level. - api-change:`detective`: \[`botocore`] Doc only updates for content enhancement - api-change:`guardduty`: \[`botocore`] Marked fields IpAddressV4, PrivateIpAddress, Email as Sensitive. - api-change:`healthlake`: \[`botocore`] This release adds a new response parameter, JobProgressReport, to the DescribeFHIRImportJob and ListFHIRImportJobs API operation. JobProgressReport provides details on the progress of the import job on the server. - api-change:`opensearch`: \[`botocore`] Adds additional supported instance types. - api-change:`polly`: \[`botocore`] Amazon Polly adds 1 new voice - Burcu (tr-TR) - api-change:`sagemaker`: \[`botocore`] This release adds a new API UpdateClusterSoftware for SageMaker HyperPod. This API allows users to patch HyperPod clusters with latest platform softwares. - api-change:`secretsmanager`: \[`botocore`] Doc only update for Secrets Manager - api-change:`endpoint-rules`: \[`botocore`] Update endpoint-rules client to latest version ### [`v1.34.42`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13442) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.41...1.34.42) \======= - api-change:`controltower`: \[`botocore`] Adds support for new Baseline and EnabledBaseline APIs for automating multi-account governance. - api-change:`lookoutequipment`: \[`botocore`] This feature allows customers to see pointwise model diagnostics results for their models. - api-change:`qbusiness`: \[`botocore`] This release adds the metadata-boosting feature, which allows customers to easily fine-tune the underlying ranking of retrieved RAG passages in order to optimize Q\&A answer relevance. It also adds new feedback reasons for the PutFeedback API. ### [`v1.34.41`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13441) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.40...1.34.41) \======= - bugfix:ContainerProvider: \[`botocore`] Properly refreshes token from file from EKS in ContainerProvider - api-change:`lightsail`: \[`botocore`] This release adds support to upgrade the major version of a database. - api-change:`marketplace-catalog`: \[`botocore`] AWS Marketplace Catalog API now supports setting intent on requests - api-change:`resource-explorer-2`: \[`botocore`] Resource Explorer now uses newly supported IPv4 'amazonaws.com' endpoints by default. - api-change:`securitylake`: \[`botocore`] Documentation updates for Security Lake - api-change:`endpoint-rules`: \[`botocore`] Update endpoint-rules client to latest version ### [`v1.34.40`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13440) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.39...1.34.40) \======= - api-change:`appsync`: \[`botocore`] Adds support for new options on GraphqlAPIs, Resolvers and Data Sources for emitting Amazon CloudWatch metrics for enhanced monitoring of AppSync APIs. - api-change:`cloudwatch`: \[`botocore`] Update cloudwatch client to latest version - api-change:`neptune-graph`: \[`botocore`] Adding a new option "parameters" for data plane api ExecuteQuery to support running parameterized query via SDK. - api-change:`route53domains`: \[`botocore`] This release adds bill contact support for RegisterDomain, TransferDomain, UpdateDomainContact and GetDomainDetail API. ### [`v1.34.39`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13439) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.38...1.34.39) \======= - api-change:`amp`: \[`botocore`] Overall documentation updates. - api-change:`batch`: \[`botocore`] This feature allows Batch to support configuration of repository credentials for jobs running on ECS - api-change:`braket`: \[`botocore`] Creating a job will result in DeviceOfflineException when using an offline device, and DeviceRetiredException when using a retired device. - api-change:`cost-optimization-hub`: \[`botocore`] Adding includeMemberAccounts field to the response of ListEnrollmentStatuses API. - api-change:`ecs`: \[`botocore`] Documentation only update for Amazon ECS. - api-change:`iot`: \[`botocore`] This release allows AWS IoT Core users to enable Online Certificate Status Protocol (OCSP) Stapling for TLS X.509 Server Certificates when creating and updating AWS IoT Domain Configurations with Custom Domain. - api-change:`pricing`: \[`botocore`] Add Throttling Exception to all APIs. ### [`v1.34.38`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13438) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.37...1.34.38) \======= - api-change:`codepipeline`: \[`botocore`] Add ability to execute pipelines with new parallel & queued execution modes and add support for triggers with filtering on branches and file paths. - api-change:`quicksight`: \[`botocore`] General Interactions for Visuals; Waterfall Chart Color Configuration; Documentation Update - api-change:`workspaces`: \[`botocore`] This release introduces User-Decoupling feature. This feature allows Workspaces Core customers to provision workspaces without providing users. CreateWorkspaces and DescribeWorkspaces APIs will now take a new optional parameter "WorkspaceName". ### [`v1.34.37`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13437) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.36...1.34.37) \======= - api-change:`datasync`: \[`botocore`] AWS DataSync now supports manifests for specifying files or objects to transfer. - api-change:`lexv2-models`: \[`botocore`] Update lexv2-models client to latest version - api-change:`redshift`: \[`botocore`] LisRecommendations API to fetch Amazon Redshift Advisor recommendations. ### [`v1.34.36`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13436) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.35...1.34.36) \======= - api-change:`appsync`: \[`botocore`] Support for environment variables in AppSync GraphQL APIs - api-change:`ecs`: \[`botocore`] This release is a documentation only update to address customer issues. - api-change:`es`: \[`botocore`] This release adds clear visibility to the customers on the changes that they make on the domain. - api-change:`logs`: \[`botocore`] This release adds a new field, logGroupArn, to the response of the logs:DescribeLogGroups action. - api-change:`opensearch`: \[`botocore`] This release adds clear visibility to the customers on the changes that they make on the domain. - api-change:`wafv2`: \[`botocore`] You can now delete an API key that you've created for use with your CAPTCHA JavaScript integration API. ### [`v1.34.35`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13435) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.34...1.34.35) \======= - api-change:`glue`: \[`botocore`] Introduce Catalog Encryption Role within Glue Data Catalog Settings. Introduce SASL/PLAIN as an authentication method for Glue Kafka connections - api-change:`workspaces`: \[`botocore`] Added definitions of various WorkSpace states ### [`v1.34.34`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13434) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.33...1.34.34) \======= - api-change:`dynamodb`: \[`botocore`] Any number of users can execute up to 50 concurrent restores (any type of restore) in a given account. - api-change:`sagemaker`: \[`botocore`] Amazon SageMaker Canvas adds GenerativeAiSettings support for CanvasAppSettings. - api-change:`endpoint-rules`: \[`botocore`] Update endpoint-rules client to latest version ### [`v1.34.33`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13433) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.32...1.34.33) \======= - api-change:`cognito-idp`: \[`botocore`] Added CreateIdentityProvider and UpdateIdentityProvider details for new SAML IdP features - api-change:`ivs`: \[`botocore`] This release introduces a new resource Playback Restriction Policy which can be used to geo-restrict or domain-restrict channel stream playback when associated with a channel. New APIs to support this resource were introduced in the form of Create/Delete/Get/Update/List. - api-change:`managedblockchain-query`: \[`botocore`] This release adds support for transactions that have not reached finality. It also removes support for the status property from the response of the GetTransaction operation. You can use the confirmationStatus and executionStatus properties to determine the status of the transaction. - api-change:`mediaconvert`: \[`botocore`] This release includes support for broadcast-mixed audio description tracks. - api-change:`neptune-graph`: \[`botocore`] Adding new APIs in SDK for Amazon Neptune Analytics. These APIs include operations to execute, cancel, list queries and get the graph summary. ### [`v1.34.32`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13432) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.31...1.34.32) \======= - api-change:`cloudformation`: \[`botocore`] CloudFormation IaC generator allows you to scan existing resources in your account and select resources to generate a template for a new or existing CloudFormation stack. - api-change:`elbv2`: \[`botocore`] Update elbv2 client to latest version - api-change:`glue`: \[`botocore`] Update page size limits for GetJobRuns and GetTriggers APIs. - api-change:`ssm`: \[`botocore`] This release adds an optional Duration parameter to StateManager Associations. This allows customers to specify how long an apply-only-on-cron association execution should run. Once the specified Duration is out all the ongoing cancellable commands or automations are cancelled. ### [`v1.34.31`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13431) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.30...1.34.31) \======= - api-change:`datazone`: \[`botocore`] Add new skipDeletionCheck to DeleteDomain. Add new skipDeletionCheck to DeleteProject which also automatically deletes dependent objects - api-change:`route53`: \[`botocore`] Update the SDKs for text changes in the APIs. ### [`v1.34.30`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13430) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.29...1.34.30) \======= - api-change:`autoscaling`: \[`botocore`] EC2 Auto Scaling customers who use attribute based instance-type selection can now intuitively define their Spot instances price protection limit as a percentage of the lowest priced On-Demand instance type. - api-change:`comprehend`: \[`botocore`] Comprehend PII analysis now supports Spanish input documents. - api-change:`ec2`: \[`botocore`] EC2 Fleet customers who use attribute based instance-type selection can now intuitively define their Spot instances price protection limit as a percentage of the lowest priced On-Demand instance type. - api-change:`mwaa`: \[`botocore`] This release adds MAINTENANCE environment status for Amazon MWAA environments. - api-change:`rds`: \[`botocore`] Introduced support for the InsufficientDBInstanceCapacityFault error in the RDS RestoreDBClusterFromSnapshot and RestoreDBClusterToPointInTime API methods. This provides enhanced error handling, ensuring a more robust experience. - api-change:`snowball`: \[`botocore`] Modified description of createaddress to include direction to add path when providing a JSON file. ### [`v1.34.29`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13429) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.28...1.34.29) \======= - api-change:`connect`: \[`botocore`] Update list and string length limits for predefined attributes. - api-change:`inspector2`: \[`botocore`] This release adds ECR container image scanning based on their lastRecordedPullTime. - api-change:`sagemaker`: \[`botocore`] Amazon SageMaker Automatic Model Tuning now provides an API to programmatically delete tuning jobs. ### [`v1.34.28`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13428) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.27...1.34.28) \======= - api-change:`acm-pca`: \[`botocore`] AWS Private CA now supports an option to omit the CDP extension from issued certificates, when CRL revocation is enabled. - api-change:`lightsail`: \[`botocore`] This release adds support for IPv6-only instance plans. ### [`v1.34.27`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13427) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.26...1.34.27) \======= - api-change:`ec2`: \[`botocore`] Introduced a new clientToken request parameter on CreateNetworkAcl and CreateRouteTable APIs. The clientToken parameter allows idempotent operations on the APIs. - api-change:`ecs`: \[`botocore`] Documentation updates for Amazon ECS. - api-change:`outposts`: \[`botocore`] DeviceSerialNumber parameter is now optional in StartConnection API - api-change:`rds`: \[`botocore`] This release adds support for Aurora Limitless Database. - api-change:`storagegateway`: \[`botocore`] Add DeprecationDate and SoftwareVersion to response of ListGateways. ### [`v1.34.26`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13426) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.25...1.34.26) \======= - api-change:`inspector2`: \[`botocore`] This release adds support for CIS scans on EC2 instances. ### [`v1.34.25`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13425) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.24...1.34.25) \======= - enhancement:documentation: \[`botocore`] Updates the GitHub issue creation link in our README ### [`v1.34.24`](https://togithub.com/boto/boto3/blob/HEAD/CHANGELOG.rst#13424) [Compare Source](https://togithub.com/boto/boto3/compare/1.34.23...1.34.24) \======= - api-change:`appconfigdata`: \[`botocore`] Fix FIPS Endpoints in aws-us-gov. - api-change:`cloud9`: \[`botocore`] Doc-only update around removing AL1 from list of available AMIs for Cloud9 - api-change:`cloudfront-keyvaluestore`: \[`botocore`] This release improves upon the DescribeKeyValueStore API by returning two additional fields, Status of the KeyValueStore and the FailureReason in case of failures during creation of KeyValueStore. - api-change:`connectcases`: \[`botocore`] This release adds the ability to view audit history on a case and introduces a new parameter, performedBy, for CreateCase and UpdateCase API's. - api-change:`ec2`: \[`botocore`] Documentation updates for Amazon EC2. - api-change:`ecs`: \[`botocore`] This release adds support for Transport Layer Security (TLS) and Configurable Timeout to ECS Service Connect. TLS facilitates privacy and data security for inter-service communications, while Configurable Timeout allows customized per-request timeout and idle timeout for Service Connect services. - api-change:`finspace`: \[`botocore`] Allow customer to set zip default through command line arguments. - api-change:`organizations`: \[`botocore`] Doc only update for quota increase change - api-change:`rds`: \[`botocore`] Introduced support for the InsufficientDBInstanceCapacityFault error in the RDS CreateDBCluster API method. This provides enhanced error handling, ensuring a more robust experience when creating database clusters with insufficient instance capacity. - api-change:`endpoint-rules`: \[`botocore`] Update endpoint-rules client to latest version </details> <details> <summary>boto/botocore (botocore)</summary> ### [`v1.34.50`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13450) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.49...1.34.50) \======= - api-change:`apigateway`: Documentation updates for Amazon API Gateway. - api-change:`drs`: Added volume status to DescribeSourceServer replicated volumes. - api-change:`kafkaconnect`: Adds support for tagging, with new TagResource, UntagResource and ListTagsForResource APIs to manage tags and updates to existing APIs to allow tag on create. This release also adds support for the new DeleteWorkerConfiguration API. - api-change:`rds`: This release adds support for gp3 data volumes for Multi-AZ DB Clusters. ### [`v1.34.49`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13449) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.48...1.34.49) \======= - api-change:`appsync`: Documentation only updates for AppSync - api-change:`qldb`: Clarify possible values for KmsKeyArn and EncryptionDescription. - api-change:`rds`: Add pattern and length based validations for DBShardGroupIdentifier - api-change:`rum`: Doc-only update for new RUM metrics that were added ### [`v1.34.48`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13448) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.47...1.34.48) \======= - api-change:`internetmonitor`: This release adds IPv4 prefixes to health events - api-change:`kinesisvideo`: Increasing NextToken parameter length restriction for List APIs from 512 to 1024. ### [`v1.34.47`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13447) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.46...1.34.47) \======= - api-change:`iotevents`: Increase the maximum length of descriptions for Inputs, Detector Models, and Alarm Models - api-change:`lookoutequipment`: This release adds a field exposing model quality to read APIs for models. It also adds a model quality field to the API response when creating an inference scheduler. - api-change:`medialive`: MediaLive now supports the ability to restart pipelines in a running channel. - api-change:`ssm`: This release adds support for sharing Systems Manager parameters with other AWS accounts. ### [`v1.34.46`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13446) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.45...1.34.46) \======= - api-change:`dynamodb`: Publishing quick fix for doc only update. - api-change:`firehose`: This release updates a few Firehose related APIs. - api-change:`lambda`: Add .NET 8 (dotnet8) Runtime support to AWS Lambda. ### [`v1.34.45`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13445) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.44...1.34.45) \======= - api-change:`amplify`: This release contains API changes that enable users to configure their Amplify domains with their own custom SSL/TLS certificate. - api-change:`chatbot`: This release adds support for AWS Chatbot. You can now monitor, operate, and troubleshoot your AWS resources with interactive ChatOps using the AWS SDK. - api-change:`config`: Documentation updates for the AWS Config CLI - api-change:`ivs`: Changed description for latencyMode in Create/UpdateChannel and Channel/ChannelSummary. - api-change:`keyspaces`: Documentation updates for Amazon Keyspaces - api-change:`mediatailor`: MediaTailor: marking #AdBreak.OffsetMillis as required. ### [`v1.34.44`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13444) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.43...1.34.44) \======= - api-change:`connectparticipant`: Doc only update to GetTranscript API reference guide to inform users about presence of events in the chat transcript. - api-change:`emr`: adds fine grained control over Unhealthy Node Replacement to Amazon ElasticMapReduce - api-change:`firehose`: This release adds support for Data Message Extraction for decompressed CloudWatch logs, and to use a custom file extension or time zone for S3 destinations. - api-change:`lambda`: Documentation-only updates for Lambda to clarify a number of existing actions and properties. - api-change:`rds`: Doc only update for a valid option in DB parameter group - api-change:`sns`: This release marks phone numbers as sensitive inputs. ### [`v1.34.43`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13443) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.42...1.34.43) \======= - api-change:`artifact`: This is the initial SDK release for AWS Artifact. AWS Artifact provides on-demand access to compliance and third-party compliance reports. This release includes access to List and Get reports, along with their metadata. This release also includes access to AWS Artifact notifications settings. - api-change:`codepipeline`: Add ability to override timeout on action level. - api-change:`detective`: Doc only updates for content enhancement - api-change:`guardduty`: Marked fields IpAddressV4, PrivateIpAddress, Email as Sensitive. - api-change:`healthlake`: This release adds a new response parameter, JobProgressReport, to the DescribeFHIRImportJob and ListFHIRImportJobs API operation. JobProgressReport provides details on the progress of the import job on the server. - api-change:`opensearch`: Adds additional supported instance types. - api-change:`polly`: Amazon Polly adds 1 new voice - Burcu (tr-TR) - api-change:`sagemaker`: This release adds a new API UpdateClusterSoftware for SageMaker HyperPod. This API allows users to patch HyperPod clusters with latest platform softwares. - api-change:`secretsmanager`: Doc only update for Secrets Manager - api-change:`endpoint-rules`: Update endpoint-rules client to latest version ### [`v1.34.42`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13442) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.41...1.34.42) \======= - api-change:`controltower`: Adds support for new Baseline and EnabledBaseline APIs for automating multi-account governance. - api-change:`lookoutequipment`: This feature allows customers to see pointwise model diagnostics results for their models. - api-change:`qbusiness`: This release adds the metadata-boosting feature, which allows customers to easily fine-tune the underlying ranking of retrieved RAG passages in order to optimize Q\&A answer relevance. It also adds new feedback reasons for the PutFeedback API. ### [`v1.34.41`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13441) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.40...1.34.41) \======= - bugfix:ContainerProvider: Properly refreshes token from file from EKS in ContainerProvider - api-change:`lightsail`: This release adds support to upgrade the major version of a database. - api-change:`marketplace-catalog`: AWS Marketplace Catalog API now supports setting intent on requests - api-change:`resource-explorer-2`: Resource Explorer now uses newly supported IPv4 'amazonaws.com' endpoints by default. - api-change:`securitylake`: Documentation updates for Security Lake - api-change:`endpoint-rules`: Update endpoint-rules client to latest version ### [`v1.34.40`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13440) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.39...1.34.40) \======= - api-change:`appsync`: Adds support for new options on GraphqlAPIs, Resolvers and Data Sources for emitting Amazon CloudWatch metrics for enhanced monitoring of AppSync APIs. - api-change:`cloudwatch`: Update cloudwatch client to latest version - api-change:`neptune-graph`: Adding a new option "parameters" for data plane api ExecuteQuery to support running parameterized query via SDK. - api-change:`route53domains`: This release adds bill contact support for RegisterDomain, TransferDomain, UpdateDomainContact and GetDomainDetail API. ### [`v1.34.39`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13439) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.38...1.34.39) \======= - api-change:`amp`: Overall documentation updates. - api-change:`batch`: This feature allows Batch to support configuration of repository credentials for jobs running on ECS - api-change:`braket`: Creating a job will result in DeviceOfflineException when using an offline device, and DeviceRetiredException when using a retired device. - api-change:`cost-optimization-hub`: Adding includeMemberAccounts field to the response of ListEnrollmentStatuses API. - api-change:`ecs`: Documentation only update for Amazon ECS. - api-change:`iot`: This release allows AWS IoT Core users to enable Online Certificate Status Protocol (OCSP) Stapling for TLS X.509 Server Certificates when creating and updating AWS IoT Domain Configurations with Custom Domain. - api-change:`pricing`: Add Throttling Exception to all APIs. ### [`v1.34.38`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13438) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.37...1.34.38) \======= - api-change:`codepipeline`: Add ability to execute pipelines with new parallel & queued execution modes and add support for triggers with filtering on branches and file paths. - api-change:`quicksight`: General Interactions for Visuals; Waterfall Chart Color Configuration; Documentation Update - api-change:`workspaces`: This release introduces User-Decoupling feature. This feature allows Workspaces Core customers to provision workspaces without providing users. CreateWorkspaces and DescribeWorkspaces APIs will now take a new optional parameter "WorkspaceName". ### [`v1.34.37`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13437) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.36...1.34.37) \======= - api-change:`datasync`: AWS DataSync now supports manifests for specifying files or objects to transfer. - api-change:`lexv2-models`: Update lexv2-models client to latest version - api-change:`redshift`: LisRecommendations API to fetch Amazon Redshift Advisor recommendations. ### [`v1.34.36`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13436) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.35...1.34.36) \======= - api-change:`appsync`: Support for environment variables in AppSync GraphQL APIs - api-change:`ecs`: This release is a documentation only update to address customer issues. - api-change:`es`: This release adds clear visibility to the customers on the changes that they make on the domain. - api-change:`logs`: This release adds a new field, logGroupArn, to the response of the logs:DescribeLogGroups action. - api-change:`opensearch`: This release adds clear visibility to the customers on the changes that they make on the domain. - api-change:`wafv2`: You can now delete an API key that you've created for use with your CAPTCHA JavaScript integration API. ### [`v1.34.35`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13435) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.34...1.34.35) \======= - api-change:`glue`: Introduce Catalog Encryption Role within Glue Data Catalog Settings. Introduce SASL/PLAIN as an authentication method for Glue Kafka connections - api-change:`workspaces`: Added definitions of various WorkSpace states ### [`v1.34.34`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13434) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.33...1.34.34) \======= - api-change:`dynamodb`: Any number of users can execute up to 50 concurrent restores (any type of restore) in a given account. - api-change:`sagemaker`: Amazon SageMaker Canvas adds GenerativeAiSettings support for CanvasAppSettings. - api-change:`endpoint-rules`: Update endpoint-rules client to latest version ### [`v1.34.33`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13433) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.32...1.34.33) \======= - api-change:`cognito-idp`: Added CreateIdentityProvider and UpdateIdentityProvider details for new SAML IdP features - api-change:`ivs`: This release introduces a new resource Playback Restriction Policy which can be used to geo-restrict or domain-restrict channel stream playback when associated with a channel. New APIs to support this resource were introduced in the form of Create/Delete/Get/Update/List. - api-change:`managedblockchain-query`: This release adds support for transactions that have not reached finality. It also removes support for the status property from the response of the GetTransaction operation. You can use the confirmationStatus and executionStatus properties to determine the status of the transaction. - api-change:`mediaconvert`: This release includes support for broadcast-mixed audio description tracks. - api-change:`neptune-graph`: Adding new APIs in SDK for Amazon Neptune Analytics. These APIs include operations to execute, cancel, list queries and get the graph summary. ### [`v1.34.32`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13432) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.31...1.34.32) \======= - api-change:`cloudformation`: CloudFormation IaC generator allows you to scan existing resources in your account and select resources to generate a template for a new or existing CloudFormation stack. - api-change:`elbv2`: Update elbv2 client to latest version - api-change:`glue`: Update page size limits for GetJobRuns and GetTriggers APIs. - api-change:`ssm`: This release adds an optional Duration parameter to StateManager Associations. This allows customers to specify how long an apply-only-on-cron association execution should run. Once the specified Duration is out all the ongoing cancellable commands or automations are cancelled. ### [`v1.34.31`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13431) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.30...1.34.31) \======= - api-change:`datazone`: Add new skipDeletionCheck to DeleteDomain. Add new skipDeletionCheck to DeleteProject which also automatically deletes dependent objects - api-change:`route53`: Update the SDKs for text changes in the APIs. ### [`v1.34.30`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13430) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.29...1.34.30) \======= - api-change:`autoscaling`: EC2 Auto Scaling customers who use attribute based instance-type selection can now intuitively define their Spot instances price protection limit as a percentage of the lowest priced On-Demand instance type. - api-change:`comprehend`: Comprehend PII analysis now supports Spanish input documents. - api-change:`ec2`: EC2 Fleet customers who use attribute based instance-type selection can now intuitively define their Spot instances price protection limit as a percentage of the lowest priced On-Demand instance type. - api-change:`mwaa`: This release adds MAINTENANCE environment status for Amazon MWAA environments. - api-change:`rds`: Introduced support for the InsufficientDBInstanceCapacityFault error in the RDS RestoreDBClusterFromSnapshot and RestoreDBClusterToPointInTime API methods. This provides enhanced error handling, ensuring a more robust experience. - api-change:`snowball`: Modified description of createaddress to include direction to add path when providing a JSON file. ### [`v1.34.29`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13429) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.28...1.34.29) \======= - api-change:`connect`: Update list and string length limits for predefined attributes. - api-change:`inspector2`: This release adds ECR container image scanning based on their lastRecordedPullTime. - api-change:`sagemaker`: Amazon SageMaker Automatic Model Tuning now provides an API to programmatically delete tuning jobs. ### [`v1.34.28`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13428) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.27...1.34.28) \======= - api-change:`acm-pca`: AWS Private CA now supports an option to omit the CDP extension from issued certificates, when CRL revocation is enabled. - api-change:`lightsail`: This release adds support for IPv6-only instance plans. ### [`v1.34.27`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13427) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.26...1.34.27) \======= - api-change:`ec2`: Introduced a new clientToken request parameter on CreateNetworkAcl and CreateRouteTable APIs. The clientToken parameter allows idempotent operations on the APIs. - api-change:`ecs`: Documentation updates for Amazon ECS. - api-change:`outposts`: DeviceSerialNumber parameter is now optional in StartConnection API - api-change:`rds`: This release adds support for Aurora Limitless Database. - api-change:`storagegateway`: Add DeprecationDate and SoftwareVersion to response of ListGateways. ### [`v1.34.26`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13426) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.25...1.34.26) \======= - api-change:`inspector2`: This release adds support for CIS scans on EC2 instances. ### [`v1.34.25`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13425) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.24...1.34.25) \======= - enhancement:documentation: Updates the GitHub issue creation link in our README ### [`v1.34.24`](https://togithub.com/boto/botocore/blob/HEAD/CHANGELOG.rst#13424) [Compare Source](https://togithub.com/boto/botocore/compare/1.34.23...1.34.24) \======= - api-change:`appconfigdata`: Fix FIPS Endpoints in aws-us-gov. - api-change:`cloud9`: Doc-only update around removing AL1 from list of available AMIs for Cloud9 - api-change:`cloudfront-keyvaluestore`: This release improves upon the DescribeKeyValueStore API by returning two additional fields, Status of the KeyValueStore and the FailureReason in case of failures during creation of KeyValueStore. - api-change:`connectcases`: This release adds the ability to view audit history on a case and introduces a new parameter, performedBy, for CreateCase and UpdateCase API's. - api-change:`ec2`: Documentation updates for Amazon EC2. - api-change:`ecs`: This release adds support for Transport Layer Security (TLS) and Configurable Timeout to ECS Service Connect. TLS facilitates privacy and data security for inter-service communications, while Configurable Timeout allows customized per-request timeout and idle timeout for Service Connect services. - api-change:`finspace`: Allow customer to set zip default through command line arguments. - api-change:`organizations`: Doc only update for quota increase change - api-change:`rds`: Introduced support for the InsufficientDBInstanceCapacityFault error in the RDS CreateDBCluster API method. This provides enhanced error handling, ensuring a more robust experience when creating database clusters with insufficient instance capacity. - api-change:`endpoint-rules`: Update endpoint-rules client to latest version </details> <details> <summary>nedbat/coveragepy (coverage)</summary> ### [`v7.4.3`](https://togithub.com/nedbat/coveragepy/blob/HEAD/CHANGES.rst#Version-743--2024-02-23) [Compare Source](https://togithub.com/nedbat/coveragepy/compare/7.4.2...7.4.3) - Fix: in some cases, coverage could fail with a RuntimeError: "Set changed size during iteration." This is now fixed, closing `issue 1733`\_. .. \_issue 1733:[https://github.com/nedbat/coveragepy/issues/1733](https://togithub.com/nedbat/coveragepy/issues/1733)3 .. \_changes\_7-4-2: ### [`v7.4.2`](https://togithub.com/nedbat/coveragepy/blob/HEAD/CHANGES.rst#Version-742--2024-02-20) [Compare Source](https://togithub.com/nedbat/coveragepy/compare/7.4.1...7.4.2) - Fix: setting `COVERAGE_CORE=sysmon` no longer errors on 3.11 and lower, thanks `Hugo van Kemenade <pull 1747_>`\_. It now issues a warning that sys.monitoring is not available and falls back to the default core instead. .. \_pull 1747:[https://github.com/nedbat/coveragepy/pull/1747](https://togithub.com/nedbat/coveragepy/pull/1747)7 .. \_changes\_7-4-1: ### [`v7.4.1`](https://togithub.com/nedbat/coveragepy/blob/HEAD/CHANGES.rst#Version-741--2024-01-26) [Compare Source](https://togithub.com/nedbat/coveragepy/compare/7.4.0...7.4.1) - Python 3.13.0a3 is supported. - Fix: the JSON report now includes an explicit format version number, closing `issue 1732`\_. .. \_issue 1732:[https://github.com/nedbat/coveragepy/issues/1732](https://togithub.com/nedbat/coveragepy/issues/1732)2 .. \_changes\_7-4-0: </details> <details> <summary>marshmallow-code/marshmallow (marshmallow)</summary> ### [`v3.21.0`](https://togithub.com/marshmallow-code/marshmallow/compare/3.20.2...3.21.0) [Compare Source](https://togithub.com/marshmallow-code/marshmallow/compare/3.20.2...3.21.0) </details> <details> <summary>getmoto/moto (moto)</summary> ### [`v4.2.14`](https://togithub.com/getmoto/moto/blob/HEAD/CHANGELOG.md#4214) [Compare Source](https://togithub.com/getmoto/moto/compare/4.2.13...4.2.14) Docker Digest for 4.2.14: *sha256:2fa10aa48e32f85c63c62a7d437b8a4b320a56a8494bc25d45ced370bc159c23* New Services: * Backup: * create_backup_plan() * create_backup_vault() * get_backup_plan() * describe_backup_vault() * delete_backup_plan() * list_backup_plans() * list_backup_vaults() * list_tags() * tag_resource() * untag_resource() New Methods: * RDS: * describe_db_cluster_snapshot_attributes() * describe_db_snapshot_attributes() * modify_db_cluster_snapshot_attribute() * modify_db_snapshot_attribute() * restore_db_instance_to_point_in_time() * SageMaker: * create_feature_group() * SageMakerRuntime: * invoke_endpoint_async() Miscellaneous: * Cognito: The ID-token now contains custom attributes * DynamoDB: query() now returns the correct ScannedCount * EC2: Security Group Rules now have tag support * LakeFormation: grant_permissions() now has better support for known principal-resource pairs * SNS: set_subscription_attributes() can now unset the FilterPolicy </details> <details> <summary>psycopg/psycopg (psycopg)</summary> ### [`v3.1.18`](https://togithub.com/psycopg/psycopg/compare/3.1.17...3.1.18) [Compare Source](https://togithub.com/psycopg/psycopg/compare/3.1.17...3.1.18) </details> <details> <summary>pydantic/pydantic (pydantic)</summary> ### [`v2.6.2`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v262-2024-02-23) [Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.6.1...v2.6.2) [GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.6.2) ##### What's Changed ##### Packaging - Upgrade to `pydantic-core` 2.16.3 by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8879](https://togithub.com/pydantic/pydantic/pull/8879) ##### Fixes - 'YYYY-MM-DD' date string coerced to datetime shouldn't infer timezone by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [pydantic/pydantic-core#1193](https://togithub.com/pydantic/pydantic-core/pull/1193) ### [`v2.6.1`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v261-2024-02-05) [Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.6.0...v2.6.1) [GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.6.1) ##### What's Changed ##### Packaging - Upgrade to `pydantic-core` 2.16.2 by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8717](https://togithub.com/pydantic/pydantic/pull/8717) ##### Fixes - Fix bug with `mypy` plugin and `no_strict_optional = True` by [@​dmontagu](https://togithub.com/dmontagu) in [#​8666](https://togithub.com/pydantic/pydantic/pull/8666) - Fix `ByteSize` error `type` change by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8681](https://togithub.com/pydantic/pydantic/pull/8681) - Fix inheriting `Field` annotations in dataclasses by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8679](https://togithub.com/pydantic/pydantic/pull/8679) - Fix regression in core schema generation for indirect definition references by [@​dmontagu](https://togithub.com/dmontagu) in [#​8702](https://togithub.com/pydantic/pydantic/pull/8702) - Fix unsupported types bug with `PlainValidator` by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8710](https://togithub.com/pydantic/pydantic/pull/8710) - Reverting problematic fix from 2.6 release, fixing schema building bug by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8718](https://togithub.com/pydantic/pydantic/pull/8718) - Fix warning for tuple of wrong size in `Union` by [@​davidhewitt](https://togithub.com/davidhewitt) in [pydantic/pydantic-core#1174](https://togithub.com/pydantic/pydantic-core/pull/1174) - Fix `computed_field` JSON serializer `exclude_none` behavior by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [pydantic/pydantic-core#1187](https://togithub.com/pydantic/pydantic-core/pull/1187) ### [`v2.6.0`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v260-2024-01-23) [Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.5.3...v2.6.0) [GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.6.0) The code released in v2.6.0 is practically identical to that of v2.6.0b1. ##### What's Changed ##### Packaging - Check for `email-validator` version >= 2.0 by [@​commonism](https://togithub.com/commonism) in [#​6033](https://togithub.com/pydantic/pydantic/pull/6033) - Upgrade \`ruff\`\` target version to Python 3.8 by [@​Elkiwa](https://togithub.com/Elkiwa) in [#​8341](https://togithub.com/pydantic/pydantic/pull/8341) - Update to `pydantic-extra-types==2. </details> --- ### Configuration 📅 **Schedule**: Branch creation - "on the 2nd and 4th day instance on sunday after 9pm" in timezone America/New_York, Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://togithub.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/HHS/simpler-grants-gov). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xNTMuMiIsInVwZGF0ZWRJblZlciI6IjM3LjIxMi4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9--> Co-authored-by: renovate[bot] <29139614 renovate[bot]@users.noreply.github.com>
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Type | Update | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---|---|---| | [astral-sh/ruff-pre-commit](https://togithub.com/astral-sh/ruff-pre-commit) | repository | minor | `v0.2.1` -> `v0.3.3` | [![age](https://developer.mend.io/api/mc/badges/age/github-tags/astral-sh/ruff-pre-commit/v0.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/github-tags/astral-sh/ruff-pre-commit/v0.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/github-tags/astral-sh/ruff-pre-commit/v0.2.1/v0.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/github-tags/astral-sh/ruff-pre-commit/v0.2.1/v0.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [docs/MarkDown](https://togithub.com/Python-Markdown/markdown) ([changelog](https://python-markdown.github.io/changelog/)) | project.optional-dependencies | minor | `==3.5.2` -> `==3.6` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/docs/MarkDown/3.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/docs/MarkDown/3.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/docs/MarkDown/3.5.2/3.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/docs/MarkDown/3.5.2/3.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [docs/mkdocs-material](https://togithub.com/squidfunk/mkdocs-material) | project.optional-dependencies | patch | `==9.5.8` -> `==9.5.13` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/docs/mkdocs-material/9.5.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/docs/mkdocs-material/9.5.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/docs/mkdocs-material/9.5.8/9.5.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/docs/mkdocs-material/9.5.8/9.5.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [docs/mkdocstrings](https://togithub.com/mkdocstrings/mkdocstrings) ([changelog](https://mkdocstrings.github.io/changelog)) | project.optional-dependencies | patch | `==0.24.0` -> `==0.24.1` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/docs/mkdocstrings/0.24.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/docs/mkdocstrings/0.24.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/docs/mkdocstrings/0.24.0/0.24.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/docs/mkdocstrings/0.24.0/0.24.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [docs/mkdocstrings-python](https://togithub.com/mkdocstrings/python) ([changelog](https://mkdocstrings.github.io/python/changelog)) | project.optional-dependencies | minor | `==1.8.0` -> `==1.9.0` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/docs/mkdocstrings-python/1.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/docs/mkdocstrings-python/1.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/docs/mkdocstrings-python/1.8.0/1.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/docs/mkdocstrings-python/1.8.0/1.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [misc-lint/ruff](https://docs.astral.sh/ruff) ([source](https://togithub.com/astral-sh/ruff), [changelog](https://togithub.com/astral-sh/ruff/blob/main/CHANGELOG.md)) | project.optional-dependencies | minor | `==0.2.1` -> `==0.3.3` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/misc-lint/ruff/0.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/misc-lint/ruff/0.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/misc-lint/ruff/0.2.1/0.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/misc-lint/ruff/0.2.1/0.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [pytest/coverage](https://togithub.com/nedbat/coveragepy) | project.optional-dependencies | patch | `==7.4.1` -> `==7.4.4` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/pytest/coverage/7.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/pytest/coverage/7.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/pytest/coverage/7.4.1/7.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/pytest/coverage/7.4.1/7.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [pytest/pytest](https://togithub.com/pytest-dev/pytest) ([changelog](https://docs.pytest.org/en/stable/changelog.html)) | project.optional-dependencies | minor | `==8.0.0` -> `==8.1.1` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/pytest/pytest/8.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/pytest/pytest/8.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/pytest/pytest/8.0.0/8.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/pytest/pytest/8.0.0/8.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [pytest/pytest-asyncio](https://togithub.com/pytest-dev/pytest-asyncio) ([changelog](https://pytest-asyncio.readthedocs.io/en/latest/reference/changelog.html)) | project.optional-dependencies | patch | `==0.23.5` -> `==0.23.5.post1` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/pytest/pytest-asyncio/0.23.5.post1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/pytest/pytest-asyncio/0.23.5.post1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/pytest/pytest-asyncio/0.23.5/0.23.5.post1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/pytest/pytest-asyncio/0.23.5/0.23.5.post1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [pytest/pytest-subtests](https://togithub.com/pytest-dev/pytest-subtests) | project.optional-dependencies | minor | `==0.11.0` -> `==0.12.1` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/pytest/pytest-subtests/0.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/pytest/pytest-subtests/0.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/pytest/pytest-subtests/0.11.0/0.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/pytest/pytest-subtests/0.11.0/0.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [typecheck/mypy](https://www.mypy-lang.org/) ([source](https://togithub.com/python/mypy), [changelog](https://mypy-lang.blogspot.com/)) | project.optional-dependencies | minor | `==1.8.0` -> `==1.9.0` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/typecheck/mypy/1.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/typecheck/mypy/1.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/typecheck/mypy/1.8.0/1.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/typecheck/mypy/1.8.0/1.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [typecheck/types-Markdown](https://togithub.com/python/typeshed) ([changelog](https://togithub.com/typeshed-internal/stub_uploader/blob/main/data/changelogs/Markdown.md)) | project.optional-dependencies | minor | `==3.5.0.20240129` -> `==3.6.0.20240316` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/typecheck/types-Markdown/3.6.0.20240316?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/typecheck/types-Markdown/3.6.0.20240316?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/typecheck/types-Markdown/3.5.0.20240129/3.6.0.20240316?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/typecheck/types-Markdown/3.5.0.20240129/3.6.0.20240316?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [typecheck/types-beautifulsoup4](https://togithub.com/python/typeshed) ([changelog](https://togithub.com/typeshed-internal/stub_uploader/blob/main/data/changelogs/beautifulsoup4.md)) | project.optional-dependencies | patch | `==4.12.0.20240106` -> `==4.12.0.20240229` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/typecheck/types-beautifulsoup4/4.12.0.20240229?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/typecheck/types-beautifulsoup4/4.12.0.20240229?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/typecheck/types-beautifulsoup4/4.12.0.20240106/4.12.0.20240229?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/typecheck/types-beautifulsoup4/4.12.0.20240106/4.12.0.20240229?slim=true)](https://docs.renovatebot.com/merge-confidence/) | Note: The `pre-commit` manager in Renovate is not supported by the `pre-commit` maintainers or community. Please do not report any problems there, instead [create a Discussion in the Renovate repository](https://togithub.com/renovatebot/renovate/discussions/new) if you have any questions. --- ### Release Notes <details> <summary>astral-sh/ruff-pre-commit (astral-sh/ruff-pre-commit)</summary> ### [`v0.3.3`](https://togithub.com/astral-sh/ruff-pre-commit/compare/v0.3.2...v0.3.3) [Compare Source](https://togithub.com/astral-sh/ruff-pre-commit/compare/v0.3.2...v0.3.3) ### [`v0.3.2`](https://togithub.com/astral-sh/ruff-pre-commit/releases/tag/v0.3.2) [Compare Source](https://togithub.com/astral-sh/ruff-pre-commit/compare/v0.3.1...v0.3.2) See: https://github.com/astral-sh/ruff/releases/tag/v0.3.2 ### [`v0.3.1`](https://togithub.com/astral-sh/ruff-pre-commit/releases/tag/v0.3.1) [Compare Source](https://togithub.com/astral-sh/ruff-pre-commit/compare/v0.3.0...v0.3.1) See: https://github.com/astral-sh/ruff/releases/tag/v0.3.1 ### [`v0.3.0`](https://togithub.com/astral-sh/ruff-pre-commit/releases/tag/v0.3.0) [Compare Source](https://togithub.com/astral-sh/ruff-pre-commit/compare/v0.2.2...v0.3.0) See: https://github.com/astral-sh/ruff/releases/tag/v0.3.0 ### [`v0.2.2`](https://togithub.com/astral-sh/ruff-pre-commit/releases/tag/v0.2.2) [Compare Source](https://togithub.com/astral-sh/ruff-pre-commit/compare/v0.2.1...v0.2.2) See: https://github.com/astral-sh/ruff/releases/tag/v0.2.2 </details> <details> <summary>Python-Markdown/markdown (docs/MarkDown)</summary> ### [`v3.6`](https://togithub.com/Python-Markdown/markdown/compare/3.5.2...3.6) [Compare Source](https://togithub.com/Python-Markdown/markdown/compare/3.5.2...3.6) </details> <details> <summary>squidfunk/mkdocs-material (docs/mkdocs-material)</summary> ### [`v9.5.13`](https://togithub.com/squidfunk/mkdocs-material/releases/tag/9.5.13): mkdocs-material-9.5.13 [Compare Source](https://togithub.com/squidfunk/mkdocs-material/compare/9.5.12...9.5.13) - Updated Slovak translations - Improved info plugin interop with projects plugin - Improved info plugin inclusion/exclusion logic - Fixed info plugin not gathering files recursively - Fixed [#​6750](https://togithub.com/squidfunk/mkdocs-material/issues/6750): Ensure info plugin packs up all necessary files Thanks to [@​kamilkrzyskow](https://togithub.com/kamilkrzyskow) and [@​scepka](https://togithub.com/scepka) for their contributions ### [`v9.5.12`](https://togithub.com/squidfunk/mkdocs-material/releases/tag/9.5.12): mkdocs-material-9.5.12 [Compare Source](https://togithub.com/squidfunk/mkdocs-material/compare/9.5.11...9.5.12) - Fixed [#​6846](https://togithub.com/squidfunk/mkdocs-material/issues/6846): Some meta tags removed on instant navigation (9.4.2 regression) - Fixed [#​6823](https://togithub.com/squidfunk/mkdocs-material/issues/6823): KaTex not rendering on instant navigation (9.5.5 regression) - Fixed [#​6821](https://togithub.com/squidfunk/mkdocs-material/issues/6821): Privacy plugin doesn't handle URLs with encoded characters ### [`v9.5.11`](https://togithub.com/squidfunk/mkdocs-material/releases/tag/9.5.11): mkdocs-material-9.5.11 [Compare Source](https://togithub.com/squidfunk/mkdocs-material/compare/9.5.10...9.5.11) - Updated Finnish translation ### [`v9.5.10`](https://togithub.com/squidfunk/mkdocs-material/releases/tag/9.5.10): mkdocs-material-9.5.10 [Compare Source](https://togithub.com/squidfunk/mkdocs-material/compare/9.5.9...9.5.10) - Updated Bahasa Malaysia translations - Fixed [#​6783](https://togithub.com/squidfunk/mkdocs-material/issues/6783): Hide continue reading link for blog posts without separators - Fixed [#​6779](https://togithub.com/squidfunk/mkdocs-material/issues/6779): Incorrect positioning of integrated table of contents ### [`v9.5.9`](https://togithub.com/squidfunk/mkdocs-material/releases/tag/9.5.9): mkdocs-material-9.5.9 [Compare Source](https://togithub.com/squidfunk/mkdocs-material/compare/9.5.8...9.5.9) - Fixed navigation pruning with tabs and sections enabled </details> <details> <summary>mkdocstrings/mkdocstrings (docs/mkdocstrings)</summary> ### [`v0.24.1`](https://togithub.com/mkdocstrings/mkdocstrings/blob/HEAD/CHANGELOG.md#0241---2024-02-27) [Compare Source](https://togithub.com/mkdocstrings/mkdocstrings/compare/0.24.0...0.24.1) <small>[Compare with 0.24.0](https://togithub.com/mkdocstrings/mkdocstrings/compare/0.24.0...0.24.1)</small> ##### Code Refactoring - Support new pymdownx-highlight options ([a7a2907](https://togithub.com/mkdocstrings/mkdocstrings/commit/a7a29079aebcd79be84ac38ce275797920e4c75e) by Timothée Mazzucotelli). - Backup anchors with id and no href, for compatibility with autorefs' Markdown anchors ([b5236b4](https://togithub.com/mkdocstrings/mkdocstrings/commit/b5236b4333ebde9648c84f6e4b0f4c2b10f3ecd4) by Timothée Mazzucotelli). [PR-#​651](https://togithub.com/mkdocstrings/mkdocstrings/pull/651), [Related-to-mkdocs-autorefs#39](https://togithub.com/mkdocstrings/autorefs/pull/39), Co-authored-by: Oleh Prypin <[email protected]> </details> <details> <summary>mkdocstrings/python (docs/mkdocstrings-python)</summary> ### [`v1.9.0`](https://togithub.com/mkdocstrings/python/blob/HEAD/CHANGELOG.md#190---2024-03-13) [Compare Source](https://togithub.com/mkdocstrings/python/compare/1.8.0...1.9.0) <small>[Compare with 1.8.0](https://togithub.com/mkdocstrings/python/compare/1.8.0...1.9.0)</small> ##### Dependencies - Add upper bound on Python-Markdown 3.6 to temporarily prevent breaking changes ([cd93ee3](https://togithub.com/mkdocstrings/python/commit/cd93ee31418a2752667d43bb5a05d22284522c24) by Timothée Mazzucotelli). ##### Features - Add `show_labels` option to show/hide labels ([eaf9b82](https://togithub.com/mkdocstrings/python/commit/eaf9b8240069f7369f401fe048892043c8b173d3) by Viicos). [Issue #​120](https://togithub.com/mkdocstrings/python/issues/120), [PR #​130](https://togithub.com/mkdocstrings/python/pull/130) - Add option to search for stubs packages ([0c6aa32](https://togithub.com/mkdocstrings/python/commit/0c6aa323c9e57b8348765a5daa11c79d0c5edb07) by Romain). [PR #​128](https://togithub.com/mkdocstrings/python/pull/128), PR [griffe#221](https://togithub.com/griffe/python/issues/221): : [https://github.com/mkdocstrings/griffe/pull/221](https://togithub.com/mkdocstrings/griffe/pull/221) ##### Code Refactoring - Mark all Jinja blocks as scoped ([548bdad](https://togithub.com/mkdocstrings/python/commit/548bdaddd66ffc99b3b9a5a62228a2ff4ff0dd00) by Timothée Mazzucotelli). </details> <details> <summary>astral-sh/ruff (misc-lint/ruff)</summary> ### [`v0.3.3`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#033) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.3.2...v0.3.3) ##### Preview features - \[`flake8-bandit`]: Implement `S610` rule ([#​10316](https://togithub.com/astral-sh/ruff/pull/10316)) - \[`pycodestyle`] Implement `blank-line-at-end-of-file` (`W391`) ([#​10243](https://togithub.com/astral-sh/ruff/pull/10243)) - \[`pycodestyle`] Implement `redundant-backslash` (`E502`) ([#​10292](https://togithub.com/astral-sh/ruff/pull/10292)) - \[`pylint`] - implement `redeclared-assigned-name` (`W0128`) ([#​9268](https://togithub.com/astral-sh/ruff/pull/9268)) ##### Rule changes - \[`flake8_comprehensions`] Handled special case for `C400` which also matches `C416` ([#​10419](https://togithub.com/astral-sh/ruff/pull/10419)) - \[`flake8-bandit`] Implement upstream updates for `S311`, `S324` and `S605` ([#​10313](https://togithub.com/astral-sh/ruff/pull/10313)) - \[`pyflakes`] Remove `F401` fix for `__init__` imports by default and allow opt-in to unsafe fix ([#​10365](https://togithub.com/astral-sh/ruff/pull/10365)) - \[`pylint`] Implement `invalid-bool-return-type` (`E304`) ([#​10377](https://togithub.com/astral-sh/ruff/pull/10377)) - \[`pylint`] Include builtin warnings in useless-exception-statement (`PLW0133`) ([#​10394](https://togithub.com/astral-sh/ruff/pull/10394)) ##### CLI - Add message on success to `ruff check` ([#​8631](https://togithub.com/astral-sh/ruff/pull/8631)) ##### Bug fixes - \[`PIE970`] Allow trailing ellipsis in `typing.TYPE_CHECKING` ([#​10413](https://togithub.com/astral-sh/ruff/pull/10413)) - Avoid `TRIO115` if the argument is a variable ([#​10376](https://togithub.com/astral-sh/ruff/pull/10376)) - \[`F811`] Avoid removing shadowed imports that point to different symbols ([#​10387](https://togithub.com/astral-sh/ruff/pull/10387)) - Fix `F821` and `F822` false positives in `.pyi` files ([#​10341](https://togithub.com/astral-sh/ruff/pull/10341)) - Fix `F821` false negatives in `.py` files when `from __future__ import annotations` is active ([#​10362](https://togithub.com/astral-sh/ruff/pull/10362)) - Fix case where `Indexer` fails to identify continuation preceded by newline [#​10351](https://togithub.com/astral-sh/ruff/issues/10351) ([#​10354](https://togithub.com/astral-sh/ruff/pull/10354)) - Sort hash maps in `Settings` display ([#​10370](https://togithub.com/astral-sh/ruff/pull/10370)) - Track conditional deletions in the semantic model ([#​10415](https://togithub.com/astral-sh/ruff/pull/10415)) - \[`C413`] Wrap expressions in parentheses when negating ([#​10346](https://togithub.com/astral-sh/ruff/pull/10346)) - \[`pycodestyle`] Do not ignore lines before the first logical line in blank lines rules. ([#​10382](https://togithub.com/astral-sh/ruff/pull/10382)) - \[`pycodestyle`] Do not trigger `E225` and `E275` when the next token is a ')' ([#​10315](https://togithub.com/astral-sh/ruff/pull/10315)) - \[`pylint`] Avoid false-positive slot non-assignment for `__dict__` (`PLE0237`) ([#​10348](https://togithub.com/astral-sh/ruff/pull/10348)) - Gate f-string struct size test for Rustc < 1.76 ([#​10371](https://togithub.com/astral-sh/ruff/pull/10371)) ##### Documentation - Use `ruff.toml` format in README ([#​10393](https://togithub.com/astral-sh/ruff/pull/10393)) - \[`RUF008`] Make it clearer that a mutable default in a dataclass is only valid if it is typed as a ClassVar ([#​10395](https://togithub.com/astral-sh/ruff/pull/10395)) - \[`pylint`] Extend docs and test in `invalid-str-return-type` (`E307`) ([#​10400](https://togithub.com/astral-sh/ruff/pull/10400)) - Remove `.` from `check` and `format` commands ([#​10217](https://togithub.com/astral-sh/ruff/pull/10217)) ### [`v0.3.2`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#032) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.3.1...v0.3.2) ##### Preview features - Improve single-`with` item formatting for Python 3.8 or older ([#​10276](https://togithub.com/astral-sh/ruff/pull/10276)) ##### Rule changes - \[`pyupgrade`] Allow fixes for f-string rule regardless of line length (`UP032`) ([#​10263](https://togithub.com/astral-sh/ruff/pull/10263)) - \[`pycodestyle`] Include actual conditions in E712 diagnostics ([#​10254](https://togithub.com/astral-sh/ruff/pull/10254)) ##### Bug fixes - Fix trailing kwargs end of line comment after slash ([#​10297](https://togithub.com/astral-sh/ruff/pull/10297)) - Fix unstable `with` items formatting ([#​10274](https://togithub.com/astral-sh/ruff/pull/10274)) - Avoid repeating function calls in f-string conversions ([#​10265](https://togithub.com/astral-sh/ruff/pull/10265)) - Fix E203 false positive for slices in format strings ([#​10280](https://togithub.com/astral-sh/ruff/pull/10280)) - Fix incorrect `Parameter` range for `*args` and `**kwargs` ([#​10283](https://togithub.com/astral-sh/ruff/pull/10283)) - Treat `typing.Annotated` subscripts as type definitions ([#​10285](https://togithub.com/astral-sh/ruff/pull/10285)) ### [`v0.3.1`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#031) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.3.0...v0.3.1) ##### Preview features - \[`pycodestyle`] Fix E301 not triggering on decorated methods. ([#​10117](https://togithub.com/astral-sh/ruff/pull/10117)) - \[`pycodestyle`] Respect `isort` settings in blank line rules (`E3*`) ([#​10096](https://togithub.com/astral-sh/ruff/pull/10096)) - \[`pycodestyle`] Make blank lines in typing stub files optional (`E3*`) ([#​10098](https://togithub.com/astral-sh/ruff/pull/10098)) - \[`pylint`] Implement `singledispatch-method` (`E1519`) ([#​10140](https://togithub.com/astral-sh/ruff/pull/10140)) - \[`pylint`] Implement `useless-exception-statement` (`W0133`) ([#​10176](https://togithub.com/astral-sh/ruff/pull/10176)) ##### Rule changes - \[`flake8-debugger`] Check for use of `debugpy` and `ptvsd` debug modules ([#​10177](https://togithub.com/astral-sh/ruff/issues/10177)) ([#​10194](https://togithub.com/astral-sh/ruff/pull/10194)) - \[`pyupgrade`] Generate diagnostic for all valid f-string conversions regardless of line length (`UP032`) ([#​10238](https://togithub.com/astral-sh/ruff/pull/10238)) - \[`pep8_naming`] Add fixes for `N804` and `N805` ([#​10215](https://togithub.com/astral-sh/ruff/pull/10215)) ##### CLI - Colorize the output of `ruff format --diff` ([#​10110](https://togithub.com/astral-sh/ruff/pull/10110)) - Make `--config` and `--isolated` global flags ([#​10150](https://togithub.com/astral-sh/ruff/pull/10150)) - Correctly expand tildes and environment variables in paths passed to `--config` ([#​10219](https://togithub.com/astral-sh/ruff/pull/10219)) ##### Configuration - Accept a PEP 440 version specifier for `required-version` ([#​10216](https://togithub.com/astral-sh/ruff/pull/10216)) - Implement isort's `default-section` setting ([#​10149](https://togithub.com/astral-sh/ruff/pull/10149)) ##### Bug fixes - Remove trailing space from `CapWords` message ([#​10220](https://togithub.com/astral-sh/ruff/pull/10220)) - Respect external codes in file-level exemptions ([#​10203](https://togithub.com/astral-sh/ruff/pull/10203)) - \[`flake8-raise`] Avoid false-positives for parens-on-raise with `future.exception()` (`RSE102`) ([#​10206](https://togithub.com/astral-sh/ruff/pull/10206)) - \[`pylint`] Add fix for unary expressions in `PLC2801` ([#​9587](https://togithub.com/astral-sh/ruff/pull/9587)) - \[`ruff`] Fix RUF028 not allowing `# fmt: skip` on match cases ([#​10178](https://togithub.com/astral-sh/ruff/pull/10178)) ### [`v0.3.0`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#030) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.2.2...v0.3.0) This release introduces the new Ruff formatter 2024.2 style and adds a new lint rule to detect invalid formatter suppression comments. ##### Preview features - \[`flake8-bandit`] Remove suspicious-lxml-import (`S410`) ([#​10154](https://togithub.com/astral-sh/ruff/pull/10154)) - \[`pycodestyle`] Allow `os.environ` modifications between imports (`E402`) ([#​10066](https://togithub.com/astral-sh/ruff/pull/10066)) - \[`pycodestyle`] Don't warn about a single whitespace character before a comma in a tuple (`E203`) ([#​10094](https://togithub.com/astral-sh/ruff/pull/10094)) ##### Rule changes - \[`eradicate`] Detect commented out `case` statements (`ERA001`) ([#​10055](https://togithub.com/astral-sh/ruff/pull/10055)) - \[`eradicate`] Detect single-line code for `try:`, `except:`, etc. (`ERA001`) ([#​10057](https://togithub.com/astral-sh/ruff/pull/10057)) - \[`flake8-boolean-trap`] Allow boolean positionals in `__post_init__` ([#​10027](https://togithub.com/astral-sh/ruff/pull/10027)) - \[`flake8-copyright`] Allow © in copyright notices ([#​10065](https://togithub.com/astral-sh/ruff/pull/10065)) - \[`isort`]: Use one blank line after imports in typing stub files ([#​9971](https://togithub.com/astral-sh/ruff/pull/9971)) - \[`pylint`] New Rule `dict-iter-missing-items` (`PLE1141`) ([#​9845](https://togithub.com/astral-sh/ruff/pull/9845)) - \[`pylint`] Ignore `sys.version` and `sys.platform` (`PLR1714`) ([#​10054](https://togithub.com/astral-sh/ruff/pull/10054)) - \[`pyupgrade`] Detect literals with unary operators (`UP018`) ([#​10060](https://togithub.com/astral-sh/ruff/pull/10060)) - \[`ruff`] Expand rule for `list(iterable).pop(0)` idiom (`RUF015`) ([#​10148](https://togithub.com/astral-sh/ruff/pull/10148)) ##### Formatter This release introduces the Ruff 2024.2 style, stabilizing the following changes: - Prefer splitting the assignment's value over the target or type annotation ([#​8943](https://togithub.com/astral-sh/ruff/pull/8943)) - Remove blank lines before class docstrings ([#​9154](https://togithub.com/astral-sh/ruff/pull/9154)) - Wrap multiple context managers in `with` parentheses when targeting Python 3.9 or newer ([#​9222](https://togithub.com/astral-sh/ruff/pull/9222)) - Add a blank line after nested classes with a dummy body (`...`) in typing stub files ([#​9155](https://togithub.com/astral-sh/ruff/pull/9155)) - Reduce vertical spacing for classes and functions with a dummy (`...`) body ([#​7440](https://togithub.com/astral-sh/ruff/issues/7440), [#​9240](https://togithub.com/astral-sh/ruff/pull/9240)) - Add a blank line after the module docstring ([#​8283](https://togithub.com/astral-sh/ruff/pull/8283)) - Parenthesize long type hints in assignments ([#​9210](https://togithub.com/astral-sh/ruff/pull/9210)) - Preserve indent for single multiline-string call-expressions ([#​9673](https://togithub.com/astral-sh/ruff/pull/9637)) - Normalize hex escape and unicode escape sequences ([#​9280](https://togithub.com/astral-sh/ruff/pull/9280)) - Format module docstrings ([#​9725](https://togithub.com/astral-sh/ruff/pull/9725)) ##### CLI - Explicitly disallow `extend` as part of a `--config` flag ([#​10135](https://togithub.com/astral-sh/ruff/pull/10135)) - Remove `build` from the default exclusion list ([#​10093](https://togithub.com/astral-sh/ruff/pull/10093)) - Deprecate `ruff <path>`, `ruff --explain`, `ruff --clean`, and `ruff --generate-shell-completion` in favor of `ruff check <path>`, `ruff rule`, `ruff clean`, and `ruff generate-shell-completion` ([#​10169](https://togithub.com/astral-sh/ruff/pull/10169)) - Remove the deprecated CLI option `--format` from `ruff rule` and `ruff linter` ([#​10170](https://togithub.com/astral-sh/ruff/pull/10170)) ##### Bug fixes - \[`flake8-bugbear`] Avoid adding default initializers to stubs (`B006`) ([#​10152](https://togithub.com/astral-sh/ruff/pull/10152)) - \[`flake8-type-checking`] Respect runtime-required decorators for function signatures ([#​10091](https://togithub.com/astral-sh/ruff/pull/10091)) - \[`pycodestyle`] Mark fixes overlapping with a multiline string as unsafe (`W293`) ([#​10049](https://togithub.com/astral-sh/ruff/pull/10049)) - \[`pydocstyle`] Trim whitespace when removing blank lines after section (`D413`) ([#​10162](https://togithub.com/astral-sh/ruff/pull/10162)) - \[`pylint`] Delete entire statement, including semicolons (`PLR0203`) ([#​10074](https://togithub.com/astral-sh/ruff/pull/10074)) - \[`ruff`] Avoid f-string false positives in `gettext` calls (`RUF027`) ([#​10118](https://togithub.com/astral-sh/ruff/pull/10118)) - Fix `ruff` crashing on PowerPC systems because of too small page size ([#​10080](https://togithub.com/astral-sh/ruff/pull/10080)) ##### Performance - Add cold attribute to less likely printer queue branches in the formatter ([#​10121](https://togithub.com/astral-sh/ruff/pull/10121)) - Skip unnecessary string normalization in the formatter ([#​10116](https://togithub.com/astral-sh/ruff/pull/10116)) ##### Documentation - Remove "Beta" Label from formatter documentation ([#​10144](https://togithub.com/astral-sh/ruff/pull/10144)) - `line-length` option: fix link to `pycodestyle.max-line-length` ([#​10136](https://togithub.com/astral-sh/ruff/pull/10136)) ### [`v0.2.2`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#022) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.2.1...v0.2.2) Highlights include: - Initial support formatting f-strings (in `--preview`). - Support for overriding arbitrary configuration options via the CLI through an expanded `--config` argument (e.g., `--config "lint.isort.combine-as-imports=false"`). - Significant performance improvements in Ruff's lexer, parser, and lint rules. ##### Preview features - Implement minimal f-string formatting ([#​9642](https://togithub.com/astral-sh/ruff/pull/9642)) - \[`pycodestyle`] Add blank line(s) rules (`E301`, `E302`, `E303`, `E304`, `E305`, `E306`) ([#​9266](https://togithub.com/astral-sh/ruff/pull/9266)) - \[`refurb`] Implement `readlines_in_for` (`FURB129`) ([#​9880](https://togithub.com/astral-sh/ruff/pull/9880)) ##### Rule changes - \[`ruff`] Ensure closing parentheses for multiline sequences are always on their own line (`RUF022`, `RUF023`) ([#​9793](https://togithub.com/astral-sh/ruff/pull/9793)) - \[`numpy`] Add missing deprecation violations (`NPY002`) ([#​9862](https://togithub.com/astral-sh/ruff/pull/9862)) - \[`flake8-bandit`] Detect `mark_safe` usages in decorators ([#​9887](https://togithub.com/astral-sh/ruff/pull/9887)) - \[`ruff`] Expand `asyncio-dangling-task` (`RUF006`) to include `new_event_loop` ([#​9976](https://togithub.com/astral-sh/ruff/pull/9976)) - \[`flake8-pyi`] Ignore 'unused' private type dicts in class scopes ([#​9952](https://togithub.com/astral-sh/ruff/pull/9952)) ##### Formatter - Docstring formatting: Preserve tab indentation when using `indent-style=tabs` ([#​9915](https://togithub.com/astral-sh/ruff/pull/9915)) - Disable top-level docstring formatting for notebooks ([#​9957](https://togithub.com/astral-sh/ruff/pull/9957)) - Stabilize quote-style's `preserve` mode ([#​9922](https://togithub.com/astral-sh/ruff/pull/9922)) ##### CLI - Allow arbitrary configuration options to be overridden via the CLI ([#​9599](https://togithub.com/astral-sh/ruff/pull/9599)) ##### Bug fixes - Make `show-settings` filters directory-agnostic ([#​9866](https://togithub.com/astral-sh/ruff/pull/9866)) - Respect duplicates when rewriting type aliases ([#​9905](https://togithub.com/astral-sh/ruff/pull/9905)) - Respect tuple assignments in typing analyzer ([#​9969](https://togithub.com/astral-sh/ruff/pull/9969)) - Use atomic write when persisting cache ([#​9981](https://togithub.com/astral-sh/ruff/pull/9981)) - Use non-parenthesized range for `DebugText` ([#​9953](https://togithub.com/astral-sh/ruff/pull/9953)) - \[`flake8-simplify`] Avoid false positive with `async` for loops (`SIM113`) ([#​9996](https://togithub.com/astral-sh/ruff/pull/9996)) - \[`flake8-trio`] Respect `async with` in `timeout-without-await` ([#​9859](https://togithub.com/astral-sh/ruff/pull/9859)) - \[`perflint`] Catch a wider range of mutations in `PERF101` ([#​9955](https://togithub.com/astral-sh/ruff/pull/9955)) - \[`pycodestyle`] Fix `E30X` panics on blank lines with trailing white spaces ([#​9907](https://togithub.com/astral-sh/ruff/pull/9907)) - \[`pydocstyle`] Allow using `parameters` as a subsection header (`D405`) ([#​9894](https://togithub.com/astral-sh/ruff/pull/9894)) - \[`pydocstyle`] Fix blank-line docstring rules for module-level docstrings ([#​9878](https://togithub.com/astral-sh/ruff/pull/9878)) - \[`pylint`] Accept 0.0 and 1.0 as common magic values (`PLR2004`) ([#​9964](https://togithub.com/astral-sh/ruff/pull/9964)) - \[`pylint`] Avoid suggesting set rewrites for non-hashable types ([#​9956](https://togithub.com/astral-sh/ruff/pull/9956)) - \[`ruff`] Avoid false negatives with string literals inside of method calls (`RUF027`) ([#​9865](https://togithub.com/astral-sh/ruff/pull/9865)) - \[`ruff`] Fix panic on with f-string detection (`RUF027`) ([#​9990](https://togithub.com/astral-sh/ruff/pull/9990)) - \[`ruff`] Ignore builtins when detecting missing f-strings ([#​9849](https://togithub.com/astral-sh/ruff/pull/9849)) ##### Performance - Use `memchr` for string lexing ([#​9888](https://togithub.com/astral-sh/ruff/pull/9888)) - Use `memchr` for tab-indentation detection ([#​9853](https://togithub.com/astral-sh/ruff/pull/9853)) - Reduce `Result<Tok, LexicalError>` size by using `Box<str>` instead of `String` ([#​9885](https://togithub.com/astral-sh/ruff/pull/9885)) - Reduce size of `Expr` from 80 to 64 bytes ([#​9900](https://togithub.com/astral-sh/ruff/pull/9900)) - Improve trailing comma rule performance ([#​9867](https://togithub.com/astral-sh/ruff/pull/9867)) - Remove unnecessary string cloning from the parser ([#​9884](https://togithub.com/astral-sh/ruff/pull/9884)) </details> <details> <summary>nedbat/coveragepy (pytest/coverage)</summary> ### [`v7.4.4`](https://togithub.com/nedbat/coveragepy/blob/HEAD/CHANGES.rst#Version-744--2024-03-14) [Compare Source](https://togithub.com/nedbat/coveragepy/compare/7.4.3...7.4.4) - Fix: in some cases, even with `[run] relative_files=True`, a data file could be created with absolute path names. When combined with other relative data files, it was random whether the absolute file names would be made relative or not. If they weren't, then a file would be listed twice in reports, as detailed in `issue 1752`\_. This is now fixed: absolute file names are always made relative when combining. Thanks to Bruno Rodrigues dos Santos for support. - Fix: the last case of a match/case statement had an incorrect message if the branch was missed. It said the pattern never matched, when actually the branch is missed if the last case always matched. - Fix: clicking a line number in the HTML report now positions more accurately. - Fix: the `report:format` setting was defined as a boolean, but should be a string. Thanks, `Tanaydin Sirin <pull 1754_>`\_. It is also now documented on the :ref:`configuration page <config_report_format>`. .. \_issue 1752:[https://github.com/nedbat/coveragepy/issues/1752](https://togithub.com/nedbat/coveragepy/issues/1752)2 .. \_pull 1754[https://github.com/nedbat/coveragepy/pull/1754](https://togithub.com/nedbat/coveragepy/pull/1754)54 .. \_changes\_7-4-3: ### [`v7.4.3`](https://togithub.com/nedbat/coveragepy/blob/HEAD/CHANGES.rst#Version-743--2024-02-23) [Compare Source](https://togithub.com/nedbat/coveragepy/compare/7.4.2...7.4.3) - Fix: in some cases, coverage could fail with a RuntimeError: "Set changed size during iteration." This is now fixed, closing `issue 1733`\_. .. \_issue 1733:[https://github.com/nedbat/coveragepy/issues/1733](https://togithub.com/nedbat/coveragepy/issues/1733)3 .. \_changes\_7-4-2: ### [`v7.4.2`](https://togithub.com/nedbat/coveragepy/blob/HEAD/CHANGES.rst#Version-742--2024-02-20) [Compare Source](https://togithub.com/nedbat/coveragepy/compare/7.4.1...7.4.2) - Fix: setting `COVERAGE_CORE=sysmon` no longer errors on 3.11 and lower, thanks `Hugo van Kemenade <pull 1747_>`\_. It now issues a warning that sys.monitoring is not available and falls back to the default core instead. .. \_pull 1747:[https://github.com/nedbat/coveragepy/pull/1747](https://togithub.com/nedbat/coveragepy/pull/1747)7 .. \_changes\_7-4-1: </details> <details> <summary>pytest-dev/pytest (pytest/pytest)</summary> ### [`v8.1.1`](https://togithub.com/pytest-dev/pytest/releases/tag/8.1.1) [Compare Source](https://togithub.com/pytest-dev/pytest/compare/8.1.0...8.1.1) # pytest 8.1.1 (2024-03-08) ::: {.note} ::: {.title} Note ::: This release is not a usual bug fix release -- it contains features and improvements, being a follow up to `8.1.0`, which has been yanked from PyPI. ::: ## Features - [#​11475](https://togithub.com/pytest-dev/pytest/issues/11475): Added the new `consider_namespace_packages`{.interpreted-text role="confval"} configuration option, defaulting to `False`. If set to `True`, pytest will attempt to identify modules that are part of [namespace packages](https://packaging.python.org/en/latest/guides/packaging-namespace-packages) when importing modules. - [#​11653](https://togithub.com/pytest-dev/pytest/issues/11653): Added the new `verbosity_test_cases`{.interpreted-text role="confval"} configuration option for fine-grained control of test execution verbosity. See `Fine-grained verbosity <pytest.fine_grained_verbosity>`{.interpreted-text role="ref"} for more details. ## Improvements - [#​10865](https://togithub.com/pytest-dev/pytest/issues/10865): `pytest.warns`{.interpreted-text role="func"} now validates that `warnings.warn`{.interpreted-text role="func"} was called with a \[str]{.title-ref} or a \[Warning]{.title-ref}. Currently in Python it is possible to use other types, however this causes an exception when `warnings.filterwarnings`{.interpreted-text role="func"} is used to filter those warnings (see [CPython #​103577](https://togithub.com/python/cpython/issues/103577) for a discussion). While this can be considered a bug in CPython, we decided to put guards in pytest as the error message produced without this check in place is confusing. - [#​11311](https://togithub.com/pytest-dev/pytest/issues/11311): When using `--override-ini` for paths in invocations without a configuration file defined, the current working directory is used as the relative directory. Previoulsy this would raise an `AssertionError`{.interpreted-text role="class"}. - [#​11475](https://togithub.com/pytest-dev/pytest/issues/11475): `--import-mode=importlib <import-mode-importlib>`{.interpreted-text role="ref"} now tries to import modules using the standard import mechanism (but still without changing :py`sys.path`{.interpreted-text role="data"}), falling back to importing modules directly only if that fails. This means that installed packages will be imported under their canonical name if possible first, for example `app.core.models`, instead of having the module name always be derived from their path (for example `.env310.lib.site_packages.app.core.models`). - [#​11801](https://togithub.com/pytest-dev/pytest/issues/11801): Added the `iter_parents() <_pytest.nodes.Node.iter_parents>`{.interpreted-text role="func"} helper method on nodes. It is similar to `listchain <_pytest.nodes.Node.listchain>`{.interpreted-text role="func"}, but goes from bottom to top, and returns an iterator, not a list. - [#​11850](https://togithub.com/pytest-dev/pytest/issues/11850): Added support for `sys.last_exc`{.interpreted-text role="data"} for post-mortem debugging on Python>=3.12. - [#​11962](https://togithub.com/pytest-dev/pytest/issues/11962): In case no other suitable candidates for configuration file are found, a `pyproject.toml` (even without a `[tool.pytest.ini_options]` table) will be considered as the configuration file and define the `rootdir`. - [#​11978](https://togithub.com/pytest-dev/pytest/issues/11978): Add `--log-file-mode` option to the logging plugin, enabling appending to log-files. This option accepts either `"w"` or `"a"` and defaults to `"w"`. Previously, the mode was hard-coded to be `"w"` which truncates the file before logging. - [#​12047](https://togithub.com/pytest-dev/pytest/issues/12047): When multiple finalizers of a fixture raise an exception, now all exceptions are reported as an exception group. Previously, only the first exception was reported. ## Bug Fixes - [#​11475](https://togithub.com/pytest-dev/pytest/issues/11475): Fixed regression where `--importmode=importlib` would import non-test modules more than once. - [#​11904](https://togithub.com/pytest-dev/pytest/issues/11904): Fixed a regression in pytest 8.0.0 that would cause test collection to fail due to permission errors when using `--pyargs`. This change improves the collection tree for tests specified using `--pyargs`, see `12043`{.interpreted-text role="pull"} for a comparison with pytest 8.0 and <8. - [#​12011](https://togithub.com/pytest-dev/pytest/issues/12011): Fixed a regression in 8.0.1 whereby `setup_module` xunit-style fixtures are not executed when `--doctest-modules` is passed. - [#​12014](https://togithub.com/pytest-dev/pytest/issues/12014): Fix the `stacklevel` used when warning about marks used on fixtures. - [#​12039](https://togithub.com/pytest-dev/pytest/issues/12039): Fixed a regression in `8.0.2` where tests created using `tmp_path`{.interpreted-text role="fixture"} have been collected multiple times in CI under Windows. ## Improved Documentation - [#​11790](https://togithub.com/pytest-dev/pytest/issues/11790): Documented the retention of temporary directories created using the `tmp_path` fixture in more detail. ## Trivial/Internal Changes - [#​11785](https://togithub.com/pytest-dev/pytest/issues/11785): Some changes were made to private functions which may affect plugins which access them: - `FixtureManager._getautousenames()` now takes a `Node` itself instead of the nodeid. - `FixtureManager.getfixturedefs()` now takes the `Node` itself instead of the nodeid. - The `_pytest.nodes.iterparentnodeids()` function is removed without replacement. Prefer to traverse the node hierarchy itself instead. If you really need to, copy the function from the previous pytest release. - [#​12069](https://togithub.com/pytest-dev/pytest/issues/12069): Delayed the deprecation of the following features to `9.0.0`: - `node-ctor-fspath-deprecation`{.interpreted-text role="ref"}. - `legacy-path-hooks-deprecated`{.interpreted-text role="ref"}. It was discovered after `8.1.0` was released that the warnings about the impeding removal were not being displayed, so the team decided to revert the removal. This is the reason for `8.1.0` being yanked. # pytest 8.1.0 (YANKED) ::: {.note} ::: {.title} Note ::: This release has been **yanked**: it broke some plugins without the proper warning period, due to some warnings not showing up as expected. See [#​12069](https://togithub.com/pytest-dev/pytest/issues/12069). ::: ### [`v8.1.0`](https://togithub.com/pytest-dev/pytest/releases/tag/8.1.0) [Compare Source](https://togithub.com/pytest-dev/pytest/compare/8.0.2...8.1.0) # pytest 8.1.0 (YANKED) > \[!IMPORTANT]\ > This release has been **yanked**: it broke some plugins without the proper warning period, due to some warnings not showing up as expected. See [#​12069](https://togithub.com/pytest-dev/pytest/issues/12069). ## Features - [#​11475](https://togithub.com/pytest-dev/pytest/issues/11475): Added the new `consider_namespace_packages`{.interpreted-text role="confval"} configuration option, defaulting to `False`. If set to `True`, pytest will attempt to identify modules that are part of [namespace packages](https://packaging.python.org/en/latest/guides/packaging-namespace-packages) when importing modules. - [#​11653](https://togithub.com/pytest-dev/pytest/issues/11653): Added the new `verbosity_test_cases`{.interpreted-text role="confval"} configuration option for fine-grained control of test execution verbosity. See `Fine-grained verbosity <pytest.fine_grained_verbosity>`{.interpreted-text role="ref"} for more details. ## Improvements - [#​10865](https://togithub.com/pytest-dev/pytest/issues/10865): `pytest.warns`{.interpreted-text role="func"} now validates that `warnings.warn`{.interpreted-text role="func"} was called with a \[str]{.title-ref} or a \[Warning]{.title-ref}. Currently in Python it is possible to use other types, however this causes an exception when `warnings.filterwarnings`{.interpreted-text role="func"} is used to filter those warnings (see [CPython #​103577](https://togithub.com/python/cpython/issues/103577) for a discussion). While this can be considered a bug in CPython, we decided to put guards in pytest as the error message produced without this check in place is confusing. - [#​11311](https://togithub.com/pytest-dev/pytest/issues/11311): When using `--override-ini` for paths in invocations without a configuration file defined, the current working directory is used as the relative directory. Previoulsy this would raise an `AssertionError`{.interpreted-text role="class"}. - [#​11475](https://togithub.com/pytest-dev/pytest/issues/11475): `--import-mode=importlib <import-mode-importlib>`{.interpreted-text role="ref"} now tries to import modules using the standard import mechanism (but still without changing :py`sys.path`{.interpreted-text role="data"}), falling back to importing modules directly only if that fails. This means that installed packages will be imported under their canonical name if possible first, for example `app.core.models`, instead of having the module name always be derived from their path (for example `.env310.lib.site_packages.app.core.models`). - [#​11801](https://togithub.com/pytest-dev/pytest/issues/11801): Added the `iter_parents() <_pytest.nodes.Node.iter_parents>`{.interpreted-text role="func"} helper method on nodes. It is similar to `listchain <_pytest.nodes.Node.listchain>`{.interpreted-text role="func"}, but goes from bottom to top, and returns an iterator, not a list. - [#​11850](https://togithub.com/pytest-dev/pytest/issues/11850): Added support for `sys.last_exc`{.interpreted-text role="data"} for post-mortem debugging on Python>=3.12. - [#​11962](https://togithub.com/pytest-dev/pytest/issues/11962): In case no other suitable candidates for configuration file are found, a `pyproject.toml` (even without a `[tool.pytest.ini_options]` table) will be considered as the configuration file and define the `rootdir`. - [#​11978](https://togithub.com/pytest-dev/pytest/issues/11978): Add `--log-file-mode` option to the logging plugin, enabling appending to log-files. This option accepts either `"w"` or `"a"` and defaults to `"w"`. Previously, the mode was hard-coded to be `"w"` which truncates the file before logging. - [#​12047](https://togithub.com/pytest-dev/pytest/issues/12047): When multiple finalizers of a fixture raise an exception, now all exceptions are reported as an exception group. Previously, only the first exception was reported. ## Bug Fixes - [#​11904](https://togithub.com/pytest-dev/pytest/issues/11904): Fixed a regression in pytest 8.0.0 that would cause test collection to fail due to permission errors when using `--pyargs`. This change improves the collection tree for tests specified using `--pyargs`, see `12043`{.interpreted-text role="pull"} for a comparison with pytest 8.0 and <8. - [#​12011](https://togithub.com/pytest-dev/pytest/issues/12011): Fixed a regression in 8.0.1 whereby `setup_module` xunit-style fixtures are not executed when `--doctest-modules` is passed. - [#​12014](https://togithub.com/pytest-dev/pytest/issues/12014): Fix the `stacklevel` used when warning about marks used on fixtures. - [#​12039](https://togithub.com/pytest-dev/pytest/issues/12039): Fixed a regression in `8.0.2` where tests created using `tmp_path`{.interpreted-text role="fixture"} have been collected multiple times in CI under Windows. ## Improved Documentation - [#​11790](https://togithub.com/pytest-dev/pytest/issues/11790): Documented the retention of temporary directories created using the `tmp_path` fixture in more detail. ## Trivial/Internal Changes - [#​11785](https://togithub.com/pytest-dev/pytest/issues/11785): Some changes were made to private functions which may affect plugins which access them: - `FixtureManager._getautousenames()` now takes a `Node` itself instead of the nodeid. - `FixtureManager.getfixturedefs()` now takes the `Node` itself instead of the nodeid. - The `_pytest.nodes.iterparentnodeids()` function is removed without replacement. Prefer to traverse the node hierarchy itself instead. If you really need to, copy the function from the previous pytest release. ### [`v8.0.2`](https://togithub.com/pytest-dev/pytest/releases/tag/8.0.2) [Compare Source](https://togithub.com/pytest-dev/pytest/compare/8.0.1...8.0.2) # pytest 8.0.2 (2024-02-24) ## Bug Fixes - [#​11895](https://togithub.com/pytest-dev/pytest/issues/11895): Fix collection on Windows where initial paths contain the short version of a path (for example `c:\PROGRA~1\tests`). - [#​11953](https://togithub.com/pytest-dev/pytest/issues/11953): Fix an `IndexError` crash raising from `getstatementrange_ast`. - [#​12021](https://togithub.com/pytest-dev/pytest/issues/12021): Reverted a fix to \[--maxfail]{.title-ref} handling in pytest 8.0.0 because it caused a regression in pytest-xdist whereby session fixture teardowns may get executed multiple times when the max-fails is reached. ### [`v8.0.1`](https://togithub.com/pytest-dev/pytest/releases/tag/8.0.1) [Compare Source](https://togithub.com/pytest-dev/pytest/compare/8.0.0...8.0.1) # pytest 8.0.1 (2024-02-16) ## Bug Fixes - [#​11875](https://togithub.com/pytest-dev/pytest/issues/11875): Correctly handle errors from `getpass.getuser`{.interpreted-text role="func"} in Python 3.13. - [#​11879](https://togithub.com/pytest-dev/pytest/issues/11879): Fix an edge case where `ExceptionInfo._stringify_exception` could crash `pytest.raises`{.interpreted-text role="func"}. - [#​11906](https://togithub.com/pytest-dev/pytest/issues/11906): Fix regression with `pytest.warns`{.interpreted-text role="func"} using custom warning subclasses which have more than one parameter in their \[\__init\_\_]{.title-ref}. - [#​11907](https://togithub.com/pytest-dev/pytest/issues/11907): Fix a regression in pytest 8.0.0 whereby calling `pytest.skip`{.interpreted-text role="func"} and similar control-flow exceptions within a `pytest.warns()`{.interpreted-text role="func"} block would get suppressed instead of propagating. - [#​11929](https://togithub.com/pytest-dev/pytest/issues/11929): Fix a regression in pytest 8.0.0 whereby autouse fixtures defined in a module get ignored by the doctests in the module. - [#​11937](https://togithub.com/pytest-dev/pytest/issues/11937): Fix a regression in pytest 8.0.0 whereby items would be collected in reverse order in some circumstances. </details> <details> <summary>pytest-dev/pytest-asyncio (pytest/pytest-asyncio)</summary> ### [`v0.23.5.post1`](https://togithub.com/pytest-dev/pytest-asyncio/releases/tag/v0.23.5.post1): pytest-asyncio 0.23.5.post1 [Compare Source](https://togithub.com/pytest-dev/pytest-asyncio/compare/v0.23.5...v0.23.5.post1) ### 0.23.5 (2024-02-09) - Declare compatibility with pytest 8 [#​737](https://togithub.com/pytest-dev/pytest-asyncio/issues/737) - Fix typing errors with recent versions of mypy [#​769](https://togithub.com/pytest-dev/pytest-asyncio/issues/769) - Prevent DeprecationWarning about internal use of `asyncio.get_event_loop()` from affecting test cases [#​757](https://togithub.com/pytest-dev/pytest-asyncio/issues/757) #### Known issues As of v0.23, pytest-asyncio attaches an asyncio event loop to each item of the test suite (i.e. session, packages, modules, classes, functions) and allows tests to be run in those loops when marked accordingly. Pytest-asyncio currently assumes that async fixture scope is correlated with the new event loop scope. This prevents fixtures from being evaluated independently from the event loop scope and breaks some existing test suites (see [#​706](https://togithub.com/pytest-dev/pytest-asyncio/issues/706)). For example, a test suite may require all fixtures and tests to run in the same event loop, but have async fixtures that are set up and torn down for each module. If you're affected by this issue, please continue using the v0.21 release, until it is resolved. </details> <details> <summary>pytest-dev/pytest-subtests (pytest/pytest-subtests)</summary> ### [`v0.12.1`](https://togithub.com/pytest-dev/pytest-subtests/blob/HEAD/CHANGELOG.rst#0121-2024-03-07) [Compare Source](https://togithub.com/pytest-dev/pytest-subtests/compare/v0.12.0...v0.12.1) - Fixed compatibility with upcoming pytest `8.1.x`. (`#125`\_). .. \_#125:[https://github.com/pytest-dev/pytest-subtests/issues/125](https://togithub.com/pytest-dev/pytest-subtests/issues/125)5 ### [`v0.12.0`](https://togithub.com/pytest-dev/pytest-subtests/blob/HEAD/CHANGELOG.rst#0120-2024-03-06) [Compare Source](https://togithub.com/pytest-dev/pytest-subtests/compare/v0.11.0...v0.12.0) - Python 3.12 is now officially supported (`#113`\_). - Added typing support (`#115`\_). - `SubTests` can be imported from `pytest_subtests` to type-annotate the `subtests` fixture. .. \_#113:[https://github.com/pytest-dev/pytest-subtests/pull/113](https://togithub.com/pytest-dev/pytest-subtests/pull/113)3 .. \_#115[https://github.com/pytest-dev/pytest-subtests/pull/115](https://togithub.com/pytest-dev/pytest-subtests/pull/115)15 </details> <details> <summary>python/mypy (typecheck/mypy)</summary> ### [`v1.9.0`](https://togithub.com/python/mypy/compare/v1.8.0...1.9.0) [Compare Source](https://togithub.com/python/mypy/compare/v1.8.0...1.9.0) </details> --- ### Configuration 📅 **Schedule**: Branch creation - "every 3 months on the first day of the month" (UTC), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://togithub.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/AlexWaygood/typeshed-stats). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNDUuMCIsInVwZGF0ZWRJblZlciI6IjM3LjI0NS4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9--> --------- Co-authored-by: renovate[bot] <29139614 renovate[bot]@users.noreply.github.com> Co-authored-by: Alex Waygood <[email protected]>
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [MarkupSafe](https://palletsprojects.com/p/markupsafe/) ([changelog](https://markupsafe.palletsprojects.com/changes/)) | `==2.1.3` -> `==2.1.5` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/MarkupSafe/2.1.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/MarkupSafe/2.1.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/MarkupSafe/2.1.3/2.1.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/MarkupSafe/2.1.3/2.1.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [alabaster](https://togithub.com/sphinx-doc/alabaster) ([changelog](https://alabaster.readthedocs.io/en/latest/changelog.html)) | `==0.7.13` -> `==0.7.16` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/alabaster/0.7.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/alabaster/0.7.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/alabaster/0.7.13/0.7.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/alabaster/0.7.13/0.7.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [cachetools](https://togithub.com/tkem/cachetools) | `==5.3.2` -> `==5.3.3` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/cachetools/5.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/cachetools/5.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/cachetools/5.3.2/5.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/cachetools/5.3.2/5.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [coverage](https://togithub.com/nedbat/coveragepy) | `==7.4.0` -> `==7.4.4` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/coverage/7.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/coverage/7.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/coverage/7.4.0/7.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/coverage/7.4.0/7.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [cryptography](https://togithub.com/pyca/cryptography) ([changelog](https://cryptography.io/en/latest/changelog/)) | `==42.0.4` -> `==42.0.5` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/cryptography/42.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/cryptography/42.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/cryptography/42.0.4/42.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/cryptography/42.0.4/42.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [dill](https://togithub.com/uqfoundation/dill) | `==0.3.7` -> `==0.3.8` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/dill/0.3.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/dill/0.3.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/dill/0.3.7/0.3.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/dill/0.3.7/0.3.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [filelock](https://togithub.com/tox-dev/py-filelock) | `==3.13.1` -> `==3.13.3` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/filelock/3.13.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/filelock/3.13.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/filelock/3.13.1/3.13.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/filelock/3.13.1/3.13.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [hupper](https://togithub.com/Pylons/hupper) ([changelog](https://docs.pylonsproject.org/projects/hupper/en/latest/changes.html)) | `==1.12` -> `==1.12.1` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/hupper/1.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/hupper/1.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/hupper/1.12/1.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/hupper/1.12/1.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [jaraco.classes](https://togithub.com/jaraco/jaraco.classes) | `==3.3.0` -> `==3.3.1` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/jaraco.classes/3.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/jaraco.classes/3.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/jaraco.classes/3.3.0/3.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/jaraco.classes/3.3.0/3.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [keyring](https://togithub.com/jaraco/keyring) | `==24.3.0` -> `==24.3.1` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/keyring/24.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/keyring/24.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/keyring/24.3.0/24.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/keyring/24.3.0/24.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [lazr.restfulclient](https://launchpad.net/lazr.restfulclient) ([source](https://code.launchpad.net/lazr.restfulclient)) | `==0.14.5` -> `==0.14.6` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/lazr.restfulclient/0.14.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/lazr.restfulclient/0.14.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/lazr.restfulclient/0.14.5/0.14.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/lazr.restfulclient/0.14.5/0.14.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [psutil](https://togithub.com/giampaolo/psutil) | `==5.9.7` -> `==5.9.8` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/psutil/5.9.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/psutil/5.9.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/psutil/5.9.7/5.9.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/psutil/5.9.7/5.9.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [psutil](https://togithub.com/giampaolo/psutil) | `==5.9.6` -> `==5.9.8` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/psutil/5.9.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/psutil/5.9.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/psutil/5.9.6/5.9.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/psutil/5.9.6/5.9.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [pydantic](https://togithub.com/pydantic/pydantic) ([changelog](https://docs.pydantic.dev/latest/changelog/)) | `==1.10.13` -> `==1.10.14` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/pydantic/1.10.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/pydantic/1.10.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/pydantic/1.10.13/1.10.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/pydantic/1.10.13/1.10.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [pyinstaller](https://www.pyinstaller.org/) ([source](https://togithub.com/pyinstaller/pyinstaller)) | `==5.13.1` -> `==5.13.2` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/pyinstaller/5.13.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/pyinstaller/5.13.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/pyinstaller/5.13.1/5.13.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/pyinstaller/5.13.1/5.13.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [pylxd](https://ubuntu.com/lxd) | `==2.3.1` -> `==2.3.2` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/pylxd/2.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/pylxd/2.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/pylxd/2.3.1/2.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/pylxd/2.3.1/2.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | pyparsing | `==3.1.1` -> `==3.1.2` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/pyparsing/3.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/pyparsing/3.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/pyparsing/3.1.1/3.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/pyparsing/3.1.1/3.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [pyright](https://togithub.com/RobertCraigie/pyright-python) | `==1.1.350` -> `==1.1.355` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/pyright/1.1.355?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/pyright/1.1.355?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/pyright/1.1.350/1.1.355?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/pyright/1.1.350/1.1.355?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [tomlkit](https://togithub.com/sdispater/tomlkit) | `==0.12.3` -> `==0.12.4` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/tomlkit/0.12.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/tomlkit/0.12.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/tomlkit/0.12.3/0.12.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/tomlkit/0.12.3/0.12.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [virtualenv](https://togithub.com/pypa/virtualenv) | `==20.25.0` -> `==20.25.1` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/virtualenv/20.25.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/virtualenv/20.25.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/virtualenv/20.25.0/20.25.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/virtualenv/20.25.0/20.25.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>sphinx-doc/alabaster (alabaster)</summary> ### [`v0.7.16`](https://togithub.com/sphinx-doc/alabaster/releases/tag/0.7.16): Alabaster 0.7.16 [Compare Source](https://togithub.com/sphinx-doc/alabaster/compare/0.7.15...0.7.16) Changelog: https://alabaster.readthedocs.io/en/latest/changelog.html ### [`v0.7.15`](https://togithub.com/sphinx-doc/alabaster/releases/tag/0.7.15): Alabaster 0.7.15 [Compare Source](https://togithub.com/sphinx-doc/alabaster/compare/0.7.14...0.7.15) Changelog: https://alabaster.readthedocs.io/en/latest/changelog.html ### [`v0.7.14`](https://togithub.com/sphinx-doc/alabaster/releases/tag/0.7.14): Alabaster 0.7.14 [Compare Source](https://togithub.com/sphinx-doc/alabaster/compare/0.7.13...0.7.14) Changelog: https://alabaster.readthedocs.io/en/latest/changelog.html </details> <details> <summary>tkem/cachetools (cachetools)</summary> ### [`v5.3.3`](https://togithub.com/tkem/cachetools/blob/HEAD/CHANGELOG.rst#v533-2024-02-26) [Compare Source](https://togithub.com/tkem/cachetools/compare/v5.3.2...v5.3.3) \=================== - Documentation improvements. - Update CI environment. </details> <details> <summary>nedbat/coveragepy (coverage)</summary> ### [`v7.4.4`](https://togithub.com/nedbat/coveragepy/blob/HEAD/CHANGES.rst#Version-744--2024-03-14) [Compare Source](https://togithub.com/nedbat/coveragepy/compare/7.4.3...7.4.4) - Fix: in some cases, even with `[run] relative_files=True`, a data file could be created with absolute path names. When combined with other relative data files, it was random whether the absolute file names would be made relative or not. If they weren't, then a file would be listed twice in reports, as detailed in `issue 1752`\_. This is now fixed: absolute file names are always made relative when combining. Thanks to Bruno Rodrigues dos Santos for support. - Fix: the last case of a match/case statement had an incorrect message if the branch was missed. It said the pattern never matched, when actually the branch is missed if the last case always matched. - Fix: clicking a line number in the HTML report now positions more accurately. - Fix: the `report:format` setting was defined as a boolean, but should be a string. Thanks, `Tanaydin Sirin <pull 1754_>`\_. It is also now documented on the :ref:`configuration page <config_report_format>`. .. \_issue 1752:[https://github.com/nedbat/coveragepy/issues/1752](https://togithub.com/nedbat/coveragepy/issues/1752)2 .. \_pull 1754[https://github.com/nedbat/coveragepy/pull/1754](https://togithub.com/nedbat/coveragepy/pull/1754)54 .. \_changes\_7-4-3: ### [`v7.4.3`](https://togithub.com/nedbat/coveragepy/blob/HEAD/CHANGES.rst#Version-743--2024-02-23) [Compare Source](https://togithub.com/nedbat/coveragepy/compare/7.4.2...7.4.3) - Fix: in some cases, coverage could fail with a RuntimeError: "Set changed size during iteration." This is now fixed, closing `issue 1733`\_. .. \_issue 1733:[https://github.com/nedbat/coveragepy/issues/1733](https://togithub.com/nedbat/coveragepy/issues/1733)3 .. \_changes\_7-4-2: ### [`v7.4.2`](https://togithub.com/nedbat/coveragepy/blob/HEAD/CHANGES.rst#Version-742--2024-02-20) [Compare Source](https://togithub.com/nedbat/coveragepy/compare/7.4.1...7.4.2) - Fix: setting `COVERAGE_CORE=sysmon` no longer errors on 3.11 and lower, thanks `Hugo van Kemenade <pull 1747_>`\_. It now issues a warning that sys.monitoring is not available and falls back to the default core instead. .. \_pull 1747:[https://github.com/nedbat/coveragepy/pull/1747](https://togithub.com/nedbat/coveragepy/pull/1747)7 .. \_changes\_7-4-1: ### [`v7.4.1`](https://togithub.com/nedbat/coveragepy/blob/HEAD/CHANGES.rst#Version-741--2024-01-26) [Compare Source](https://togithub.com/nedbat/coveragepy/compare/7.4.0...7.4.1) - Python 3.13.0a3 is supported. - Fix: the JSON report now includes an explicit format version number, closing `issue 1732`\_. .. \_issue 1732:[https://github.com/nedbat/coveragepy/issues/1732](https://togithub.com/nedbat/coveragepy/issues/1732)2 .. \_changes\_7-4-0: </details> <details> <summary>pyca/cryptography (cryptography)</summary> ### [`v42.0.5`](https://togithub.com/pyca/cryptography/compare/42.0.4...42.0.5) [Compare Source](https://togithub.com/pyca/cryptography/compare/42.0.4...42.0.5) </details> <details> <summary>uqfoundation/dill (dill)</summary> ### [`v0.3.8`](https://togithub.com/uqfoundation/dill/releases/tag/0.3.8) [Compare Source](https://togithub.com/uqfoundation/dill/compare/dill-0.3.7...0.3.8) ### 0.3.8 Release Notes With `dill`, you can serialize almost anything in python, even an entire interpreter session. If you encounter any pickling failures, `dill` also has some good tools to help you discover why your object fails to pickle. `dill` installs with `pip`: `$ pip install dill` `dill` requires: `- python or pypy, >=3.8` Optional requirements: `- pyreadline, >=1.7.1` (install with `$ pip install dill[readline]`) `- objgraph, >=1.7.2` (install with `$ pip install dill[graph]`) `dill` is licensed under 3-clause BSD: >>> import dill >>> print (dill.license()) To cite `dill`: >>> import dill >>> print (dill.citation()) #### What's Changed - test for qualname in get_typedef_type by [@​mmckerns](https://togithub.com/mmckerns) in [https://github.com/uqfoundation/dill/pull/613](https://togithub.com/uqfoundation/dill/pull/613) - drop formal support for python 3.7 by [@​mmckerns](https://togithub.com/mmckerns) in [https://github.com/uqfoundation/dill/pull/614](https://togithub.com/uqfoundation/dill/pull/614) - define html_theme as rtd workaround by [@​mmckerns](https://togithub.com/mmckerns) in [https://github.com/uqfoundation/dill/pull/615](https://togithub.com/uqfoundation/dill/pull/615) - update install doc in tests by [@​mmckerns](https://togithub.com/mmckerns) in [https://github.com/uqfoundation/dill/pull/621](https://togithub.com/uqfoundation/dill/pull/621) - formal support for 3.12, initial support for 3.13 by [@​mmckerns](https://togithub.com/mmckerns) in [https://github.com/uqfoundation/dill/pull/630](https://togithub.com/uqfoundation/dill/pull/630) - add build to rtfd config by [@​mmckerns](https://togithub.com/mmckerns) in [https://github.com/uqfoundation/dill/pull/632](https://togithub.com/uqfoundation/dill/pull/632) - add guard for math.log in Logger record size calculation by [@​mmckerns](https://togithub.com/mmckerns) in [https://github.com/uqfoundation/dill/pull/637](https://togithub.com/uqfoundation/dill/pull/637) - updated copyright for 2024 by [@​mmckerns](https://togithub.com/mmckerns) in [https://github.com/uqfoundation/dill/pull/638](https://togithub.com/uqfoundation/dill/pull/638) - Bump jinja2 from 3.1.1 to 3.1.3 in /docs by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/uqfoundation/dill/pull/640](https://togithub.com/uqfoundation/dill/pull/640) - Import submodule properly when there is an attribute of the module with the same name by [@​kelvinburke](https://togithub.com/kelvinburke) in [https://github.com/uqfoundation/dill/pull/629](https://togithub.com/uqfoundation/dill/pull/629) - update sphinx to 6.2.1 by [@​mmckerns](https://togithub.com/mmckerns) in [https://github.com/uqfoundation/dill/pull/641](https://togithub.com/uqfoundation/dill/pull/641) - Bump readthedocs-sphinx-search from 0.3.1 to 0.3.2 in /docs by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/uqfoundation/dill/pull/642](https://togithub.com/uqfoundation/dill/pull/642) - skip BufferedRandomType on pyodide by [@​mmckerns](https://togithub.com/mmckerns) in [https://github.com/uqfoundation/dill/pull/644](https://togithub.com/uqfoundation/dill/pull/644) #### New Contributors - [@​kelvinburke](https://togithub.com/kelvinburke) made their first contribution in [https://github.com/uqfoundation/dill/pull/629](https://togithub.com/uqfoundation/dill/pull/629) **Full Changelog**: uqfoundation/dill@dill-0.3.7...0.3.8 </details> <details> <summary>tox-dev/py-filelock (filelock)</summary> ### [`v3.13.3`](https://togithub.com/tox-dev/filelock/releases/tag/3.13.3) [Compare Source](https://togithub.com/tox-dev/py-filelock/compare/3.13.2...3.13.3) <!-- Release notes generated using configuration in .github/release.yml at main --> #### What's Changed - Make singleton class instance dict unique per subclass by [@​nefrob](https://togithub.com/nefrob) in [https://github.com/tox-dev/filelock/pull/318](https://togithub.com/tox-dev/filelock/pull/318) **Full Changelog**: tox-dev/filelock@3.13.2...3.13.3 ### [`v3.13.2`](https://togithub.com/tox-dev/filelock/releases/tag/3.13.2) [Compare Source](https://togithub.com/tox-dev/py-filelock/compare/3.13.1...3.13.2) <!-- Release notes generated using configuration in .github/release.yml at main --> #### What's Changed - Fixed small typo in \_unix.py by [@​snemes](https://togithub.com/snemes) in [https://github.com/tox-dev/filelock/pull/302](https://togithub.com/tox-dev/filelock/pull/302) - Update SECURITY.md to reflect Python 3.7 support dropoff by [@​kemzeb](https://togithub.com/kemzeb) in [https://github.com/tox-dev/filelock/pull/304](https://togithub.com/tox-dev/filelock/pull/304) - Update index.rst to improve the demo usage by [@​youkaichao](https://togithub.com/youkaichao) in [https://github.com/tox-dev/filelock/pull/314](https://togithub.com/tox-dev/filelock/pull/314) - \[BugFix] fix permission denied error when lock file is placed in `/tmp` by [@​kota-iizuka](https://togithub.com/kota-iizuka) in [https://github.com/tox-dev/filelock/pull/317](https://togithub.com/tox-dev/filelock/pull/317) #### New Contributors - [@​snemes](https://togithub.com/snemes) made their first contribution in [https://github.com/tox-dev/filelock/pull/302](https://togithub.com/tox-dev/filelock/pull/302) - [@​kemzeb](https://togithub.com/kemzeb) made their first contribution in [https://github.com/tox-dev/filelock/pull/304](https://togithub.com/tox-dev/filelock/pull/304) - [@​youkaichao](https://togithub.com/youkaichao) made their first contribution in [https://github.com/tox-dev/filelock/pull/314](https://togithub.com/tox-dev/filelock/pull/314) - [@​kota-iizuka](https://togithub.com/kota-iizuka) made their first contribution in [https://github.com/tox-dev/filelock/pull/317](https://togithub.com/tox-dev/filelock/pull/317) **Full Changelog**: tox-dev/filelock@3.13.1...3.13.2 </details> <details> <summary>Pylons/hupper (hupper)</summary> ### [`v1.12.1`](https://togithub.com/Pylons/hupper/blob/HEAD/CHANGES.rst#1121-2024-01-26) [Compare Source](https://togithub.com/Pylons/hupper/compare/1.12...1.12.1) \=================== - Add support for Python 3.12. - Fix a blocking issue when shutting down on Windows. - Fix a race condition closing pipes when restarting the worker process. [https://github.com/Pylons/hupper/pull/83](https://togithub.com/Pylons/hupper/pull/83)l/83 - Fix issues with watchman when the server shuts down unexpectedly and when subscriptions are canceled. - Add `hupper.get_reloader().graceful_shutdown()` which can be used within your own app to trigger a full shutdown of the worker as well as the monitori[https://github.com/Pylons/hupper/pull/88](https://togithub.com/Pylons/hupper/pull/88)pper/pull/88 </details> <details> <summary>jaraco/jaraco.classes (jaraco.classes)</summary> ### [`v3.3.1`](https://togithub.com/jaraco/jaraco.classes/compare/v3.3.0...v3.3.1) [Compare Source](https://togithub.com/jaraco/jaraco.classes/compare/v3.3.0...v3.3.1) </details> <details> <summary>jaraco/keyring (keyring)</summary> ### [`v24.3.1`](https://togithub.com/jaraco/keyring/compare/v24.3.0...v24.3.1) [Compare Source](https://togithub.com/jaraco/keyring/compare/v24.3.0...v24.3.1) </details> <details> <summary>giampaolo/psutil (psutil)</summary> ### [`v5.9.8`](https://togithub.com/giampaolo/psutil/blob/HEAD/HISTORY.rst#598) [Compare Source](https://togithub.com/giampaolo/psutil/compare/release-5.9.7...release-5.9.8) \===== 2024-01-19 **Enhancements** - 2343\_, \[FreeBSD]: filter `net_connections()`\_ returned list in C instead of Python, and avoid to retrieve unnecessary connection types unless explicitly asked. E.g., on an IDLE system with few IPv6 connections this will run around 4 times faster. Before all connection types (TCP, UDP, UNIX) were retrieved internally, even if only a portion was returned. - 2342\_, \[NetBSD]: same as above ([#​2343](https://togithub.com/giampaolo/psutil/issues/2343)) but for NetBSD. - 2349\_: adopted black formatting style. **Bug fixes** - 930\_, \[NetBSD], \[critical]: `net_connections()`\_ implementation was broken. It could either leak memory or core dump. - 2340\_, \[NetBSD]: if process is terminated, `Process.cwd()`\_ will return an empty string instead of raising `NoSuchProcess`\_. - 2345\_, \[Linux]: fix compilation on older compiler missing DUPLEX_UNKNOWN. - 2222\_, \[macOS]: `cpu_freq()` now returns fixed values for `min` and `max` frequencies in all Apple Silicon chips. </details> <details> <summary>pydantic/pydantic (pydantic)</summary> ### [`v1.10.14`](https://togithub.com/pydantic/pydantic/releases/tag/v1.10.14): 2024-01-19 [Compare Source](https://togithub.com/pydantic/pydantic/compare/v1.10.13...v1.10.14) #### What's Changed - Update install.md by [@​dmontagu](https://togithub.com/dmontagu) in [https://github.com/pydantic/pydantic/pull/7690](https://togithub.com/pydantic/pydantic/pull/7690) - Fix ci to only deploy docs on release by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [https://github.com/pydantic/pydantic/pull/7740](https://togithub.com/pydantic/pydantic/pull/7740) - Ubuntu fixes for V1 by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [https://github.com/pydantic/pydantic/pull/8540](https://togithub.com/pydantic/pydantic/pull/8540) and [https://github.com/pydantic/pydantic/pull/8587](https://togithub.com/pydantic/pydantic/pull/8587) - Fix `cached_property` handling in dataclasses when copied by [@​rdbisme](https://togithub.com/rdbisme) in [https://github.com/pydantic/pydantic/pull/8407](https://togithub.com/pydantic/pydantic/pull/8407) #### New Contributors - [@​rdbisme](https://togithub.com/rdbisme) made their first contribution in [https://github.com/pydantic/pydantic/pull/8407](https://togithub.com/pydantic/pydantic/pull/8407) **Full Changelog**: pydantic/pydantic@v1.10.13...v1.10.14 </details> <details> <summary>pyinstaller/pyinstaller (pyinstaller)</summary> ### [`v5.13.2`](https://togithub.com/pyinstaller/pyinstaller/releases/tag/v5.13.2) [Compare Source](https://togithub.com/pyinstaller/pyinstaller/compare/v5.13.1...v5.13.2) Please see the [v5.13.2 section of the changelog](https://pyinstaller.org/en/v5.13.2/CHANGES.html#id1) for a list of the changes since v5.13.1. </details> <details> <summary>RobertCraigie/pyright-python (pyright)</summary> ### [`v1.1.355`](https://togithub.com/RobertCraigie/pyright-python/compare/v1.1.354...v1.1.355) [Compare Source](https://togithub.com/RobertCraigie/pyright-python/compare/v1.1.354...v1.1.355) ### [`v1.1.354`](https://togithub.com/RobertCraigie/pyright-python/compare/v1.1.353...v1.1.354) [Compare Source](https://togithub.com/RobertCraigie/pyright-python/compare/v1.1.353...v1.1.354) ### [`v1.1.353`](https://togithub.com/RobertCraigie/pyright-python/compare/v1.1.352...v1.1.353) [Compare Source](https://togithub.com/RobertCraigie/pyright-python/compare/v1.1.352...v1.1.353) ### [`v1.1.352`](https://togithub.com/RobertCraigie/pyright-python/compare/v1.1.351...v1.1.352) [Compare Source](https://togithub.com/RobertCraigie/pyright-python/compare/v1.1.351...v1.1.352) ### [`v1.1.351`](https://togithub.com/RobertCraigie/pyright-python/compare/v1.1.350...v1.1.351) [Compare Source](https://togithub.com/RobertCraigie/pyright-python/compare/v1.1.350...v1.1.351) </details> <details> <summary>sdispater/tomlkit (tomlkit)</summary> ### [`v0.12.4`](https://togithub.com/sdispater/tomlkit/blob/HEAD/CHANGELOG.md#0124---2024-02-27) [Compare Source](https://togithub.com/sdispater/tomlkit/compare/0.12.3...0.12.4) ##### Fixed - Support `|` and `|=` operator for tables, and support ` ` and ` =` operator for arrays. ([#​331](https://togithub.com/sdispater/tomlkit/issues/331)) - Fix an index error when setting dotted keys in a table. ([#​332](https://togithub.com/sdispater/tomlkit/issues/332)) </details> <details> <summary>pypa/virtualenv (virtualenv)</summary> ### [`v20.25.1`](https://togithub.com/pypa/virtualenv/compare/20.25.0...20.25.1) [Compare Source](https://togithub.com/pypa/virtualenv/compare/20.25.0...20.25.1) </details> --- ### Configuration 📅 **Schedule**: Branch creation - "every weekend" in timezone Etc/UTC, Automerge - "every weekend" in timezone Etc/UTC. 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://togithub.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/canonical/snapcraft). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjI2OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9--> --------- Signed-off-by: Callahan Kovacs <[email protected]> Co-authored-by: renovate[bot] <29139614 renovate[bot]@users.noreply.github.com> Co-authored-by: Callahan Kovacs <[email protected]>
This should speed up python 3.12 tests with coverage. See nedbat/coveragepy#1747
This should speed up python 3.12 tests with coverage. See nedbat/coveragepy#1747
This should speed up python 3.12 tests with coverage. See nedbat/coveragepy#1747
This should speed up python 3.12 tests with coverage. See nedbat/coveragepy#1747
This should speed up python 3.12 tests with coverage. See nedbat/coveragepy#1747
If
COVERAGE_CORE=sysmon
, but we don't have PEP 669'ssys.monitoring
available (i.e. Python 3.11 or older), then don't use sysmon, but use the other defaults as if it hadn't been set.This allows easily setting a global environment variable on a CI to benefit from the performance improvement where available, and 3.11 and older won't error like this: