{"id":44621,"name":"pytest-random-order","ecosystem":"pip","repository_url":"https://github.com/jbasko/pytest-random-order","issues_count":57,"created_at":"2025-06-21T20:07:35.289Z","updated_at":"2025-06-21T20:07:35.289Z","purl":"pkg:pypi/pytest-random-order","metadata":{"id":2885784,"name":"pytest-random-order","ecosystem":"pypi","description":"Randomise the order in which pytest tests are run with some control over the randomness","homepage":"https://github.com/jbasko/pytest-random-order","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/jbasko/pytest-random-order","keywords_array":["pytest","random","test","order","shuffle"],"namespace":null,"versions_count":16,"first_release_published_at":"2016-12-24T16:35:16.000Z","latest_release_published_at":"2024-01-20T09:25:05.000Z","latest_release_number":"1.1.1","last_synced_at":"2025-06-21T08:34:10.249Z","created_at":"2022-04-10T12:19:57.496Z","updated_at":"2025-06-21T08:40:03.424Z","registry_url":"https://pypi.org/project/pytest-random-order/","install_command":"pip install pytest-random-order --index-url https://pypi.org/simple","documentation_url":"https://pytest-random-order.readthedocs.io/","metadata":{"funding":null,"documentation":null,"classifiers":["Development Status :: 5 - Production/Stable","Framework :: Pytest","Intended Audience :: Developers","License :: OSI Approved :: MIT License","Programming Language :: Python","Programming Language :: Python :: 3","Programming Language :: Python :: 3.10","Programming Language :: Python :: 3.5","Programming Language :: Python :: 3.6","Programming Language :: Python :: 3.7","Programming Language :: Python :: 3.8","Programming Language :: Python :: 3.9","Topic :: Software Development :: Testing"],"normalized_name":"pytest-random-order"},"repo_metadata":{"id":55861639,"uuid":"77096478","full_name":"pytest-dev/pytest-random-order","owner":"pytest-dev","description":"pytest plugin to randomise the order of tests with some control over the randomness","archived":false,"fork":false,"pushed_at":"2024-01-20T09:37:40.000Z","size":173,"stargazers_count":70,"open_issues_count":6,"forks_count":10,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-06-09T23:08:08.358Z","etag":null,"topics":["pytest","pytest-plugin","python","random","randomiser","reordering","shuffle","tdd","test","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2016-12-22T00:31:33.000Z","updated_at":"2025-05-05T08:21:25.000Z","dependencies_parsed_at":"2024-02-21T12:10:47.767Z","dependency_job_id":"172f8d44-65f8-444f-9bce-8de842a4bfbd","html_url":"https://github.com/pytest-dev/pytest-random-order","commit_stats":null,"previous_names":["jbasko/pytest-random-order"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-random-order","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261095027,"owners_count":23108758,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"pytest-dev","name":"pytest-dev","uuid":"8897583","kind":"organization","description":"","email":"pytest-dev@python.org","website":"https://pytest.org","location":"Everywhere","twitter":"pytestdotorg","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8897583?v=4","repositories_count":75,"last_synced_at":"2025-06-15T00:02:04.913Z","metadata":{"has_sponsors_listing":true},"html_url":"https://github.com/pytest-dev","funding_links":["https://github.com/sponsors/pytest-dev"],"total_stars":34767,"followers":625,"following":0,"created_at":"2022-11-02T16:22:53.846Z","updated_at":"2025-06-15T00:02:04.914Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev/repositories"},"tags":[{"name":"v1.1.1","sha":"763f0f9efe914b3bf9b0343ce99128736335c509","kind":"commit","published_at":"2024-01-20T09:19:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/v1.1.1","html_url":"https://github.com/pytest-dev/pytest-random-order/releases/tag/v1.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-random-order@v1.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v1.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v1.1.1/manifests"},{"name":"v1.1.0","sha":"fd8e0cb1c9b9edd0c4671afbf2ae7794ac809180","kind":"commit","published_at":"2022-12-03T16:28:07.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/v1.1.0","html_url":"https://github.com/pytest-dev/pytest-random-order/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-random-order@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v1.1.0/manifests"},{"name":"v1.0.4","sha":"e8ff95fcd097f9f330638cf58cc1b24983fdde15","kind":"commit","published_at":"2018-11-30T15:21:54.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/v1.0.4","html_url":"https://github.com/pytest-dev/pytest-random-order/releases/tag/v1.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-random-order@v1.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v1.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v1.0.4/manifests"},{"name":"v1.0.3","sha":"c6bb5ac6d9e44102ab42403bc9d25284a8c582ca","kind":"commit","published_at":"2018-11-16T14:38:25.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/v1.0.3","html_url":"https://github.com/pytest-dev/pytest-random-order/releases/tag/v1.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-random-order@v1.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v1.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v1.0.3/manifests"},{"name":"v1.0.1","sha":"d6f8a15a1e37ed95e683480ed9ae44aa4a04220d","kind":"commit","published_at":"2018-11-04T11:11:03.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/v1.0.1","html_url":"https://github.com/pytest-dev/pytest-random-order/releases/tag/v1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-random-order@v1.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v1.0.1/manifests"},{"name":"v1.0.0","sha":"b1ba942293722a5844cf1ec4743ddbcf8d759652","kind":"commit","published_at":"2018-10-20T13:39:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/v1.0.0","html_url":"https://github.com/pytest-dev/pytest-random-order/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-random-order@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v1.0.0/manifests"},{"name":"v0.8.0","sha":"ce58843b5f091ee49c92d281a4d055eafcf52672","kind":"commit","published_at":"2018-06-13T00:30:31.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/v0.8.0","html_url":"https://github.com/pytest-dev/pytest-random-order/releases/tag/v0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-random-order@v0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.8.0/manifests"},{"name":"v0.7.0","sha":"641fe308869bc0ff5f99e2e6284e27c33a20d69e","kind":"commit","published_at":"2018-04-25T16:36:46.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/v0.7.0","html_url":"https://github.com/pytest-dev/pytest-random-order/releases/tag/v0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-random-order@v0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.7.0/manifests"},{"name":"v0.6.0","sha":"66cb6775d6619a1b18ad6b3b8fd4bec7396c1dc4","kind":"commit","published_at":"2018-03-19T21:54:58.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/v0.6.0","html_url":"https://github.com/pytest-dev/pytest-random-order/releases/tag/v0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-random-order@v0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.6.0/manifests"},{"name":"v0.5.6","sha":"3e65538cbd2c7ecb6cfe7899871f7e5ae64d6959","kind":"commit","published_at":"2018-03-16T08:59:32.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/v0.5.6","html_url":"https://github.com/pytest-dev/pytest-random-order/releases/tag/v0.5.6","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-random-order@v0.5.6","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.5.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.5.6/manifests"},{"name":"v0.5.5","sha":"4b2a8fe5d42a70fce4cc7ba8b5553df4536d351b","kind":"commit","published_at":"2018-03-16T08:55:55.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/v0.5.5","html_url":"https://github.com/pytest-dev/pytest-random-order/releases/tag/v0.5.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-random-order@v0.5.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.5.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.5.5/manifests"},{"name":"v0.5.4","sha":"ce0f39cc436c883bd6fa9366ac76538c816cbfb2","kind":"tag","published_at":"2017-02-18T09:49:24.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/v0.5.4","html_url":"https://github.com/pytest-dev/pytest-random-order/releases/tag/v0.5.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-random-order@v0.5.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.5.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.5.4/manifests"},{"name":"v0.5.2","sha":"f62683c4f8c365c4ff3e8b5c3950ed000cfbcd86","kind":"commit","published_at":"2016-12-26T23:54:48.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/v0.5.2","html_url":"https://github.com/pytest-dev/pytest-random-order/releases/tag/v0.5.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-random-order@v0.5.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.5.2/manifests"},{"name":"v0.5.1","sha":"619309c6b2f6fda1aba9787af0684f04cb53470d","kind":"commit","published_at":"2016-12-26T21:47:46.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/v0.5.1","html_url":"https://github.com/pytest-dev/pytest-random-order/releases/tag/v0.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-random-order@v0.5.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.5.1/manifests"},{"name":"v0.5.0","sha":"7e13a718f5649cd1b944129711108aa7f90df483","kind":"commit","published_at":"2016-12-26T20:24:22.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/v0.5.0","html_url":"https://github.com/pytest-dev/pytest-random-order/releases/tag/v0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-random-order@v0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.5.0/manifests"},{"name":"v0.4.3","sha":"d3b55b16db9fec83759d117355cfd2264e7ec7d5","kind":"commit","published_at":"2016-12-24T16:33:17.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/v0.4.3","html_url":"https://github.com/pytest-dev/pytest-random-order/releases/tag/v0.4.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-random-order@v0.4.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.4.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.4.3/manifests"},{"name":"v0.3.1","sha":"dd53cf5ff200ada3ddaae8fd9d147d987a77157c","kind":"commit","published_at":"2016-12-24T02:40:42.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/v0.3.1","html_url":"https://github.com/pytest-dev/pytest-random-order/releases/tag/v0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-random-order@v0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.3.1/manifests"},{"name":"v0.3.0","sha":"0173fa13689e06136b1781efa9ba5b36fc4ac978","kind":"commit","published_at":"2016-12-23T23:33:52.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/v0.3.0","html_url":"https://github.com/pytest-dev/pytest-random-order/releases/tag/v0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-random-order@v0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.3.0/manifests"},{"name":"v0.2.5","sha":"f13e3bb6c91821d43de8667151284cc829c1ed40","kind":"commit","published_at":"2016-12-23T02:39:27.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/v0.2.5","html_url":"https://github.com/pytest-dev/pytest-random-order/releases/tag/v0.2.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-random-order@v0.2.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.2.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.2.5/manifests"},{"name":"v0.2.4","sha":"d6195f66b42335cc0566c3ed865dcfad5f027069","kind":"tag","published_at":"2016-12-23T02:27:35.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/v0.2.4","html_url":"https://github.com/pytest-dev/pytest-random-order/releases/tag/v0.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-random-order@v0.2.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.2.4/manifests"},{"name":"v0.2.2","sha":"c74ad6c979586e87052eff594cfa2e36bb916a4f","kind":"tag","published_at":"2016-12-23T01:57:22.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/v0.2.2","html_url":"https://github.com/pytest-dev/pytest-random-order/releases/tag/v0.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-random-order@v0.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.2.2/manifests"},{"name":"v0.2.0","sha":"bedb7d18db90422e55431ae436ef911565507c38","kind":"tag","published_at":"2016-12-23T01:14:52.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/v0.2.0","html_url":"https://github.com/pytest-dev/pytest-random-order/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-random-order@v0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.2.0/manifests"},{"name":"v0.0.0","sha":"47c1dc890eed34628cca462f470b57fff9c34ae9","kind":"commit","published_at":"2016-12-22T01:15:37.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-random-order/tar.gz/v0.0.0","html_url":"https://github.com/pytest-dev/pytest-random-order/releases/tag/v0.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-random-order@v0.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-random-order/tags/v0.0.0/manifests"}]},"repo_metadata_updated_at":"2025-06-21T08:40:03.424Z","dependent_packages_count":69,"downloads":7547539,"downloads_period":"last-month","dependent_repos_count":564,"rankings":{"downloads":0.32497307746460113,"dependent_repos_count":0.5947692272566413,"dependent_packages_count":0.2758846383628054,"stargazers_count":8.822303709356072,"forks_count":11.407287005544337,"docker_downloads_count":0.8626627243703172,"average":3.7146467303924626},"purl":"pkg:pypi/pytest-random-order","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/pytest-random-order","docker_dependents_count":17,"docker_downloads_count":2202746,"usage_url":"https://repos.ecosyste.ms/usage/pypi/pytest-random-order","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/pytest-random-order/dependencies","status":null,"funding_links":["https://github.com/sponsors/pytest-dev"],"critical":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pytest-random-order/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pytest-random-order/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pytest-random-order/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pytest-random-order/related_packages","maintainers":[{"uuid":"jbasko","login":"jbasko","name":null,"email":null,"url":null,"packages_count":18,"html_url":"https://pypi.org/user/jbasko/","role":null,"created_at":"2022-11-30T11:52:53.063Z","updated_at":"2022-11-30T11:52:53.063Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/jbasko/packages"},{"uuid":"nicoddemus","login":"nicoddemus","name":null,"email":null,"url":null,"packages_count":53,"html_url":"https://pypi.org/user/nicoddemus/","role":"Owner","created_at":"2024-02-21T12:10:53.807Z","updated_at":"2024-02-21T12:10:53.807Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/nicoddemus/packages"},{"uuid":"The_Compiler","login":"The_Compiler","name":null,"email":null,"url":null,"packages_count":22,"html_url":"https://pypi.org/user/The_Compiler/","role":"Owner","created_at":"2025-06-21T08:39:58.086Z","updated_at":"2025-06-21T08:39:58.086Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/The_Compiler/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":695920,"maintainers_count":295488,"namespaces_count":0,"keywords_count":230162,"github":"pypi","metadata":{"funded_packages_count":49155},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2025-06-21T05:15:18.474Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/namespaces"}},"unique_repositories_count":42,"unique_repositories_count_past_30_days":1,"recent_issues":[{"uuid":"3605860447","node_id":"PR_kwDOPUDPIs6ya5mF","number":9,"state":"open","title":"deps: bump the pip-dependencies group across 1 directory with 20 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-11-10T02:38:54.000Z","updated_at":"2025-12-01T05:03:22.558Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps: bump","group_name":"pip-dependencies","update_count":20,"packages":[{"name":"markdown","old_version":"3.7","new_version":"3.10","repository_url":"https://github.com/Python-Markdown/markdown"},{"name":"mkdocs-material","old_version":"9.5.44","new_version":"9.6.23","repository_url":"https://github.com/squidfunk/mkdocs-material"},{"name":"pymdown-extensions","old_version":"10.12","new_version":"10.16.1","repository_url":"https://github.com/facelessuser/pymdown-extensions"},{"name":"jinja2","old_version":"3.1.4","new_version":"3.1.6","repository_url":"https://github.com/pallets/jinja"},{"name":"isort","old_version":"5.13.2","new_version":"7.0.0","repository_url":"https://github.com/PyCQA/isort"},{"name":"coveralls","old_version":"4.0.1","new_version":"4.0.2","repository_url":"https://github.com/TheKevJames/coveralls-python"},{"name":"pytest","old_version":"8.3.3","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"6.0.0","new_version":"7.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"},{"name":"ruff","old_version":"0.7.4","new_version":"0.14.4","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pre-commit","old_version":"4.0.1","new_version":"4.4.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"mypy","old_version":"1.15.0","new_version":"1.18.2","repository_url":"https://github.com/python/mypy"},{"name":"pytest-asyncio","old_version":"1.1.0","new_version":"1.2.0","repository_url":"https://github.com/pytest-dev/pytest-asyncio"},{"name":"fastapi","old_version":"0.116.1","new_version":"0.121.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"sqlalchemy","old_version":"2.0.41","new_version":"2.0.44","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"alembic","old_version":"1.16.4","new_version":"1.17.1","repository_url":"https://github.com/sqlalchemy/alembic"},{"name":"pydantic","old_version":"2.11.7","new_version":"2.12.4","repository_url":"https://github.com/pydantic/pydantic"},{"name":"python-dotenv","old_version":"1.1.1","new_version":"1.2.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"pydantic-settings","old_version":"2.10.1","new_version":"2.11.0","repository_url":"https://github.com/pydantic/pydantic-settings"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-dependencies group with 20 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [markdown](https://github.com/Python-Markdown/markdown) | `3.7` | `3.10` |\n| [mkdocs-material](https://github.com/squidfunk/mkdocs-material) | `9.5.44` | `9.6.23` |\n| [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) | `10.12` | `10.16.1` |\n| [jinja2](https://github.com/pallets/jinja) | `3.1.4` | `3.1.6` |\n| [isort](https://github.com/PyCQA/isort) | `5.13.2` | `7.0.0` |\n| [coveralls](https://github.com/TheKevJames/coveralls-python) | `4.0.1` | `4.0.2` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.3` | `8.4.2` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `6.0.0` | `7.0.0` |\n| [pytest-random-order](https://github.com/jbasko/pytest-random-order) | `1.1.1` | `1.2.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.7.4` | `0.14.4` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.0.1` | `4.4.0` |\n| [mypy](https://github.com/python/mypy) | `1.15.0` | `1.18.2` |\n| [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) | `1.1.0` | `1.2.0` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.116.1` | `0.121.1` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.41` | `2.0.44` |\n| [alembic](https://github.com/sqlalchemy/alembic) | `1.16.4` | `1.17.1` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.11.7` | `2.12.4` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.1.1` | `1.2.1` |\n| [pydantic-settings](https://github.com/pydantic/pydantic-settings) | `2.10.1` | `2.11.0` |\n\n\nUpdates `markdown` from 3.7 to 3.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Python-Markdown/markdown/releases\"\u003emarkdown's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 3.10.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOfficially support Python 3.14 and PyPy 3.11 and drop support for Python 3.9\nand PyPy 3.9.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix an HTML comment parsing case in some Python versions that can cause an\ninfinite loop (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1554\"\u003e#1554\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRevert the default behavior of \u003ccode\u003eUSE_DEFINITION_ORDER\u003c/code\u003e (to \u003ccode\u003eTrue\u003c/code\u003e). The new\nbehavior introduced in 3.9.0 is experimental and results are inconsistent.\nIt should not have been made the default behavior (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1561\"\u003e#1561\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 3.9.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFootnotes are now ordered by the occurrence of their references in the\ndocument. A new configuration option for the footnotes extension,\n\u003ccode\u003eUSE_DEFINITION_ORDER\u003c/code\u003e, has been added to support restoring the previous\nbehavior of ordering footnotes by the occurrence of definitions (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1367\"\u003e#1367\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure inline processing iterates through elements in document order (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1546\"\u003e#1546\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix handling of incomplete HTML tags in code spans in Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1547\"\u003e#1547\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 3.8.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003ecodecs\u003c/code\u003e deprecation in Python 3.14.\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed comment parsing in Python 3.14.\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed declarations in Python 3.14.\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed HTML tag \u003ccode\u003e\u0026lt;foo\u003c/code\u003e and Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 3.8.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure incomplete markup declaration in raw HTML doesn't crash parser (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1534\"\u003e#1534\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed dropped content in \u003ccode\u003emd_in_html\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1526\"\u003e#1526\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed HTML handling corner case that prevented some content from not being rendered (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1528\"\u003e#1528\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 3.8\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDRY fix in \u003ccode\u003eabbr\u003c/code\u003e extension by introducing method \u003ccode\u003ecreate_element\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1483\"\u003e#1483\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eClean up test directory by removing some redundant tests and port\nnon-redundant cases to the newer test framework.\u003c/li\u003e\n\u003cli\u003eImproved performance of the raw HTML post-processor (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1510\"\u003e#1510\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Python-Markdown/markdown/blob/master/docs/changelog.md\"\u003emarkdown's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003etitle: Changelog\ntoc_depth: 2\u003c/p\u003e\n\u003ch1\u003ePython-Markdown Changelog\u003c/h1\u003e\n\u003cp\u003eAll notable changes to this project will be documented in this file.\u003c/p\u003e\n\u003cp\u003eThe format is based on \u003ca href=\"https://keepachangelog.com/en/1.1.0/\"\u003eKeep a Changelog\u003c/a\u003e,\nand this project adheres to the\n\u003ca href=\"https://packaging.python.org/en/latest/specifications/version-specifiers/\"\u003ePython Version Specification\u003c/a\u003e.\nSee the \u003ca href=\"https://github.com/Python-Markdown/markdown/blob/master/docs/contributing.md\"\u003eContributing Guide\u003c/a\u003e for details.\u003c/p\u003e\n\u003ch2\u003e[3.10.0] - 2025-11-03\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOfficially support Python 3.14 and PyPy 3.11 and drop support for Python 3.9\nand PyPy 3.9.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix an HTML comment parsing case in some Python versions that can cause an\ninfinite loop (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1554\"\u003e#1554\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRevert the default behavior of \u003ccode\u003eUSE_DEFINITION_ORDER\u003c/code\u003e (to \u003ccode\u003eTrue\u003c/code\u003e). The new\nbehavior introduced in 3.9.0 is experimental and results are inconsistent.\nIt should not have been made the default behavior (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1561\"\u003e#1561\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[3.9.0] - 2025-09-04\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFootnotes are now ordered by the occurrence of their references in the\ndocument. A new configuration option for the footnotes extension,\n\u003ccode\u003eUSE_DEFINITION_ORDER\u003c/code\u003e, has been added to support restoring the previous\nbehavior of ordering footnotes by the occurrence of definitions (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1367\"\u003e#1367\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure inline processing iterates through elements in document order (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1546\"\u003e#1546\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix handling of incomplete HTML tags in code spans in Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1547\"\u003e#1547\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[3.8.2] - 2025-06-19\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003ecodecs\u003c/code\u003e deprecation in Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1537\"\u003e#1537\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed comment parsing in Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1537\"\u003e#1537\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed declarations in Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1537\"\u003e#1537\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed HTML tag \u003ccode\u003e\u0026lt;foo\u003c/code\u003e and Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1537\"\u003e#1537\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/22e89c1fc346f72218a10e392a0c3b4731912522\"\u003e\u003ccode\u003e22e89c1\u003c/code\u003e\u003c/a\u003e Bump version to 3.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/c138aea5139a6aceae05bb957e866d9ce7577b94\"\u003e\u003ccode\u003ec138aea\u003c/code\u003e\u003c/a\u003e + PY314 - PY39\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/746f7f527b15f63845253e3b86947b806ef1b98f\"\u003e\u003ccode\u003e746f7f5\u003c/code\u003e\u003c/a\u003e cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/a5ee2b4aad05531898ab8fd726c7ece31ddadf8b\"\u003e\u003ccode\u003ea5ee2b4\u003c/code\u003e\u003c/a\u003e Revert the default behavior of \u003ccode\u003eUSE_DEFINITION_ORDER\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/5354daf618149f92580a1407c036115753c5df73\"\u003e\u003ccode\u003e5354daf\u003c/code\u003e\u003c/a\u003e Fix an HTML comment parsing case that can cause an infinite loop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/f39cf84a24124526c1a0efbe52219fa9950774f6\"\u003e\u003ccode\u003ef39cf84\u003c/code\u003e\u003c/a\u003e Bump version to 3.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/07bf2076623be5de9952e1f35bfb8c218b699300\"\u003e\u003ccode\u003e07bf207\u003c/code\u003e\u003c/a\u003e Order footnotes by reference\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/23c301de28e12426408656efdfa153b11d4ff558\"\u003e\u003ccode\u003e23c301d\u003c/code\u003e\u003c/a\u003e Fix failing cases for Python 3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/4669a09894d4a35cd5f5d2106b0da95e48d1a3f9\"\u003e\u003ccode\u003e4669a09\u003c/code\u003e\u003c/a\u003e fix typo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/d9c8431e404d614812e39a11109afbe9981bba13\"\u003e\u003ccode\u003ed9c8431\u003c/code\u003e\u003c/a\u003e Bump version to 3.8.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Python-Markdown/markdown/compare/3.7...3.10.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mkdocs-material` from 9.5.44 to 9.6.23\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/squidfunk/mkdocs-material/releases\"\u003emkdocs-material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003emkdocs-material-9.6.23\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Burmese translation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.6.22\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Georgian translation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.6.21\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Serbian translations\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8458\"\u003e#8458\u003c/a\u003e: Temporary pin of click dependency\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.6.20\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8446\"\u003e#8446\u003c/a\u003e: Deprecation warning as of Python 3.14 in Emoji extension\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8440\"\u003e#8440\u003c/a\u003e: \u003ccode\u003e\u0026amp;\u003c/code\u003e character not escaped in search highlighting\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8439\"\u003e#8439\u003c/a\u003e: FontAwesome icons color not set in social cards (regression)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.6.19\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14\u003c/li\u003e\n\u003cli\u003eUpdated Bahasa Malaysia translations\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.6.18\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Azerbaijani translations\u003c/li\u003e\n\u003cli\u003eFixed last compat issues with \u003ca href=\"https://github.com/mitsuhiko/minijinja\"\u003eminijinja\u003c/a\u003e, now 100% compatible\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.6.17\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8396\"\u003e#8396\u003c/a\u003e: Videos do not autoplay when inside a content tab\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8394\"\u003e#8394\u003c/a\u003e: Stroke width not effective in Mermaid.js diagrams\u003c/li\u003e\n\u003cli\u003eFixed disappearing version selector when hiding page title\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.6.16\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8349\"\u003e#8349\u003c/a\u003e: Info plugin doesn't correctly detect virtualenv in some cases\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8334\"\u003e#8334\u003c/a\u003e: Find-in-page detects matches in hidden search result list\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.6.15\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Mongolian translations\u003c/li\u003e\n\u003cli\u003eImproved semantic markup of \u0026quot;edit this page\u0026quot; button\u003c/li\u003e\n\u003cli\u003eImproved info plugin virtual environment resolution\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8291\"\u003e#8291\u003c/a\u003e: Large font size setting throws of breakpoints in JavaScript\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.6.14\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8215\"\u003e#8215\u003c/a\u003e: Social plugin crashes when CairoSVG is updated to 2.8\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.6.13\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8204\"\u003e#8204\u003c/a\u003e: Annotations showing list markers in print view\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8153\"\u003e#8153\u003c/a\u003e: Improve style of cardinality symbols in Mermaid.js ER diagrams\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.6.12\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8158\"\u003e#8158\u003c/a\u003e: Flip footnote back reference icon for right-to-left languages\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG\"\u003emkdocs-material's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003emkdocs-material-9.6.23 (2025-11-01)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Burmese translation\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.6.22 (2025-10-15)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Georgian translation\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.6.21 (2025-09-30)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Serbian translations\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8458\"\u003e#8458\u003c/a\u003e: Temporary pin of click dependency\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.6.20 (2025-09-15)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8446\"\u003e#8446\u003c/a\u003e: Deprecation warning as of Python 3.14 in Emoji extension\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8440\"\u003e#8440\u003c/a\u003e: \u003ccode\u003e\u0026amp;\u003c/code\u003e character not escaped in search highlighting\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8439\"\u003e#8439\u003c/a\u003e: FontAwesome icons color not set in social cards (regression)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.6.19 (2025-09-07)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14\u003c/li\u003e\n\u003cli\u003eUpdated Bahasa Malaysia translations\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.6.18 (2025-08-22)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Azerbaijani translations\u003c/li\u003e\n\u003cli\u003eFixed last compat issues with [minijinja], now 100% compatible\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.6.17 (2025-08-15)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8396\"\u003e#8396\u003c/a\u003e: Videos do not autoplay when inside a content tab\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8394\"\u003e#8394\u003c/a\u003e: Stroke width not effective in Mermaid.js diagrams\u003c/li\u003e\n\u003cli\u003eFixed disappearing version selector when hiding page title\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.6.16 (2025-07-26)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8349\"\u003e#8349\u003c/a\u003e: Info plugin doesn't correctly detect virtualenv in some cases\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8334\"\u003e#8334\u003c/a\u003e: Find-in-page detects matches in hidden search result list\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.6.15 (2025-07-01)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Mongolian translations\u003c/li\u003e\n\u003cli\u003eImproved semantic markup of \u0026quot;edit this page\u0026quot; button\u003c/li\u003e\n\u003cli\u003eImproved info plugin virtual environment resolution\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8291\"\u003e#8291\u003c/a\u003e: Large font size setting throws of breakpoints in JavaScript\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.6.14 (2025-05-13)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8215\"\u003e#8215\u003c/a\u003e: Social plugin crashes when CairoSVG is updated to 2.8\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/54c7b79315b5ef5620efe16a1473d3368c8b8f52\"\u003e\u003ccode\u003e54c7b79\u003c/code\u003e\u003c/a\u003e Prepare 9.6.23 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/f0dbcb5b66aa5060eef3ebce04d241686505887c\"\u003e\u003ccode\u003ef0dbcb5\u003c/code\u003e\u003c/a\u003e Disabled dependabot\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/53d15f854d0479f01378023926e06a5cc857e28f\"\u003e\u003ccode\u003e53d15f8\u003c/code\u003e\u003c/a\u003e Updated dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/d9e4f7139274bb70743a076da8b80a898b1a1c14\"\u003e\u003ccode\u003ed9e4f71\u003c/code\u003e\u003c/a\u003e Updated Burmese translations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/9b3247c9cdee7e2bd67c371a136c5de487f38f19\"\u003e\u003ccode\u003e9b3247c\u003c/code\u003e\u003c/a\u003e Updated changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/8f9dcbdd68bd5746ed1dd712d6fd7d5fe0808292\"\u003e\u003ccode\u003e8f9dcbd\u003c/code\u003e\u003c/a\u003e Prepare 9.6.22 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/b29310f37dc9402ab9271ca8aaf356c44b046d78\"\u003e\u003ccode\u003eb29310f\u003c/code\u003e\u003c/a\u003e Updated dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/68bfd526e1dbb8db0c64dcca54780f0c2636d301\"\u003e\u003ccode\u003e68bfd52\u003c/code\u003e\u003c/a\u003e Documentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/c68fac7fb3071fa4f45cc823e2ca2ea82fd67b43\"\u003e\u003ccode\u003ec68fac7\u003c/code\u003e\u003c/a\u003e Updated Georgian translations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/56bb56c0fed1217f0a58a660ccbefd73db671397\"\u003e\u003ccode\u003e56bb56c\u003c/code\u003e\u003c/a\u003e Bump actions/setup-node from 4 to 5 (\u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8471\"\u003e#8471\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/squidfunk/mkdocs-material/compare/9.5.44...9.6.23\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pymdown-extensions` from 10.12 to 10.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facelessuser/pymdown-extensions/releases\"\u003epymdown-extensions's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e10.6.1\u003c/h2\u003e\n\u003ch2\u003e10.16.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eFIX\u003c/strong\u003e: Inefficient regular expression pattern for figure caption numbers.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e10.16\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eNEW\u003c/strong\u003e: Add early support for Python 3.14.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eNEW\u003c/strong\u003e: Drop support for Python 3.8.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eNEW\u003c/strong\u003e: Snippets: Added \u003ccode\u003emax_retries\u003c/code\u003e and \u003ccode\u003ebackoff_retries\u003c/code\u003e options to configure new retry logic for HTTP 429\nerrors (Too Many Requests client error).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eNEW\u003c/strong\u003e: Caption: Prefix templates are now preserved exactly as specified allowing the insertion of HTML tags if\ndesired.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eFIX\u003c/strong\u003e: Caption: Fix issue where manual numbers in auto were not respected appropriately.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e10.15.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eNEW\u003c/strong\u003e: SuperFences: Add \u003ccode\u003erelaxed_headers\u003c/code\u003e option which can tolerate bad content in the fenced code header. When\nenabled, code blocks with bad content in the header will likely still convert into code blocks, often respecting\nthe specified language.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eNEW\u003c/strong\u003e: Add type hints to the Blocks interface and a few additional files.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eFIX\u003c/strong\u003e: Blocks: Fix some corner cases of nested blocks with lists.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eFIX\u003c/strong\u003e: Tab and Tabbed: Fix a case where tabs could fail if \u003ccode\u003ecombine_header_slug\u003c/code\u003e was enabled and there was no\nheader.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e10.14.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eFIX\u003c/strong\u003e: Blocks: An empty, raw block type should not cause an error.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e10.14.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eFIX\u003c/strong\u003e: Blocks: Fix some corner cases with \u003ccode\u003emd_in_html\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e10.14.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eFIX\u003c/strong\u003e: MagicLink: Ensure that repo names that start with \u003ccode\u003e.\u003c/code\u003e are handled correctly.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eFIX\u003c/strong\u003e: FancyLists: Fix case were lists could be falsely created when a line started with \u003ccode\u003e.\u003c/code\u003e or \u003ccode\u003e)\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e10.14\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eNEW\u003c/strong\u003e: Blocks.HTML: Add new \u003ccode\u003ecustom\u003c/code\u003e option to specify tags and the assumed handling for them when automatic mode\nis assumed. This can also be used to override the handling for recognized tags with automatic handling.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eFIX\u003c/strong\u003e: Fix tests to pass with Pygments 2.19+.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e10.13\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eNEW\u003c/strong\u003e: Snippets: Allow multiple line numbers or line number blocks separated by \u003ccode\u003e,\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eNEW\u003c/strong\u003e: Snippets: Allow using a negative index for number start indexes and end indexes. Negative indexes are converted to positive indexes based on the number of lines in the snippet.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eFIX\u003c/strong\u003e: Snippets: Properly capture empty newline at end of file.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eFIX\u003c/strong\u003e: Snippets: Fix issue where when non sections of files are included, section labels are not stripped.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facelessuser/pymdown-extensions/commit/b50d15a56850ed1408a284bba81cc019c6bd72e8\"\u003e\u003ccode\u003eb50d15a\u003c/code\u003e\u003c/a\u003e Caption pattern should match a literal dot (\u003ca href=\"https://redirect.github.com/facelessuser/pymdown-extensions/issues/2717\"\u003e#2717\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facelessuser/pymdown-extensions/commit/f64422f87c05031a8c8d62b1988bf76e8f65f27f\"\u003e\u003ccode\u003ef64422f\u003c/code\u003e\u003c/a\u003e Update copyright\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facelessuser/pymdown-extensions/commit/9edb92606fc813e983fce3187862a4f28bb15886\"\u003e\u003ccode\u003e9edb926\u003c/code\u003e\u003c/a\u003e Use Trusted Publisher\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facelessuser/pymdown-extensions/commit/7d3d4f990463e50b1ba1e20830832285d92990c7\"\u003e\u003ccode\u003e7d3d4f9\u003c/code\u003e\u003c/a\u003e Add early support for Python 3.14 (\u003ca href=\"https://redirect.github.com/facelessuser/pymdown-extensions/issues/2697\"\u003e#2697\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facelessuser/pymdown-extensions/commit/beb841e6f968b81403166d685b083fe2bde84bbc\"\u003e\u003ccode\u003ebeb841e\u003c/code\u003e\u003c/a\u003e Docs: Update JS deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facelessuser/pymdown-extensions/commit/620d7fded457a0b5317019fa461a27f484a0d3d4\"\u003e\u003ccode\u003e620d7fd\u003c/code\u003e\u003c/a\u003e Docs: update JS deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facelessuser/pymdown-extensions/commit/a49f32aa4ac91d97c7c10c9abe7f654b5ec802e5\"\u003e\u003ccode\u003ea49f32a\u003c/code\u003e\u003c/a\u003e Refactor for mypy issue\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facelessuser/pymdown-extensions/commit/52a481b5591879f49baffecf4275f351d27a3759\"\u003e\u003ccode\u003e52a481b\u003c/code\u003e\u003c/a\u003e Docs: update JS dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facelessuser/pymdown-extensions/commit/2a1828accdc2371d97610fbbb574dd878e090b54\"\u003e\u003ccode\u003e2a1828a\u003c/code\u003e\u003c/a\u003e Allow raw HTML in caption prefix (\u003ca href=\"https://redirect.github.com/facelessuser/pymdown-extensions/issues/2679\"\u003e#2679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facelessuser/pymdown-extensions/commit/fbf4bf22da3bc864f24b4ee6a2c05b145fb6c304\"\u003e\u003ccode\u003efbf4bf2\u003c/code\u003e\u003c/a\u003e Fix issue where manual captions in auto were not respected properly (\u003ca href=\"https://redirect.github.com/facelessuser/pymdown-extensions/issues/2678\"\u003e#2678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/facelessuser/pymdown-extensions/compare/10.12...10.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jinja2` from 3.1.4 to 3.1.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets/jinja/releases\"\u003ejinja2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.1.6\u003c/h2\u003e\n\u003cp\u003eThis is the Jinja 3.1.6 security release, which fixes security issues but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.\u003c/p\u003e\n\u003cp\u003ePyPI: \u003ca href=\"https://pypi.org/project/Jinja2/3.1.6/\"\u003ehttps://pypi.org/project/Jinja2/3.1.6/\u003c/a\u003e\nChanges: \u003ca href=\"https://jinja.palletsprojects.com/en/stable/changes/#version-3-1-6\"\u003ehttps://jinja.palletsprojects.com/en/stable/changes/#version-3-1-6\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ccode\u003e|attr\u003c/code\u003e filter does not bypass the environment's attribute lookup, allowing the sandbox to apply its checks. \u003ca href=\"https://github.com/pallets/jinja/security/advisories/GHSA-cpwx-vrp4-4pq7\"\u003ehttps://github.com/pallets/jinja/security/advisories/GHSA-cpwx-vrp4-4pq7\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.1.5\u003c/h2\u003e\n\u003cp\u003eThis is the Jinja 3.1.5 security fix release, which fixes security issues and bugs but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.\u003c/p\u003e\n\u003cp\u003ePyPI: \u003ca href=\"https://pypi.org/project/Jinja2/3.1.5/\"\u003ehttps://pypi.org/project/Jinja2/3.1.5/\u003c/a\u003e\nChanges: \u003ca href=\"https://jinja.palletsprojects.com/changes/#version-3-1-5\"\u003ehttps://jinja.palletsprojects.com/changes/#version-3-1-5\u003c/a\u003e\nMilestone: \u003ca href=\"https://github.com/pallets/jinja/milestone/16?closed=1\"\u003ehttps://github.com/pallets/jinja/milestone/16?closed=1\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe sandboxed environment handles indirect calls to \u003ccode\u003estr.format\u003c/code\u003e, such as by passing a stored reference to a filter that calls its argument. \u003ca href=\"https://github.com/pallets/jinja/security/advisories/GHSA-q2x7-8rv6-6q7h\"\u003eGHSA-q2x7-8rv6-6q7h\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEscape template name before formatting it into error messages, to avoid issues with names that contain f-string syntax. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1792\"\u003e#1792\u003c/a\u003e, \u003ca href=\"https://github.com/pallets/jinja/security/advisories/GHSA-gmj6-6f8f-6699\"\u003eGHSA-gmj6-6f8f-6699\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSandbox does not allow \u003ccode\u003eclear\u003c/code\u003e and \u003ccode\u003epop\u003c/code\u003e on known mutable sequence types. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/2032\"\u003e#2032\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCalling sync \u003ccode\u003erender\u003c/code\u003e for an async template uses \u003ccode\u003easyncio.run\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1952\"\u003e#1952\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid unclosed \u003ccode\u003eauto_aiter\u003c/code\u003e warnings. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1960\"\u003e#1960\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReturn an \u003ccode\u003eaclose\u003c/code\u003e-able \u003ccode\u003eAsyncGenerator\u003c/code\u003e from \u003ccode\u003eTemplate.generate_async\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1960\"\u003e#1960\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid leaving \u003ccode\u003eroot_render_func()\u003c/code\u003e unclosed in \u003ccode\u003eTemplate.generate_async\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1960\"\u003e#1960\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid leaving async generators unclosed in blocks, includes and extends. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1960\"\u003e#1960\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eThe runtime uses the correct \u003ccode\u003econcat\u003c/code\u003e function for the current environment when calling block references. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1701\"\u003e#1701\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003e|unique\u003c/code\u003e async-aware, allowing it to be used after another async-aware filter. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1781\"\u003e#1781\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e|int\u003c/code\u003e filter handles \u003ccode\u003eOverflowError\u003c/code\u003e from scientific notation. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1921\"\u003e#1921\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake compiling deterministic for tuple unpacking in a \u003ccode\u003e{% set ... %}\u003c/code\u003e call. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/2021\"\u003e#2021\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix dunder protocol (\u003ccode\u003ecopy\u003c/code\u003e/\u003ccode\u003epickle\u003c/code\u003e/etc) interaction with \u003ccode\u003eUndefined\u003c/code\u003e objects. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/2025\"\u003e#2025\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecopy\u003c/code\u003e/\u003ccode\u003epickle\u003c/code\u003e support for the internal \u003ccode\u003emissing\u003c/code\u003e object. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/2027\"\u003e#2027\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eEnvironment.overlay(enable_async)\u003c/code\u003e is applied correctly. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/2061\"\u003e#2061\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eThe error message from \u003ccode\u003eFileSystemLoader\u003c/code\u003e includes the paths that were searched. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1661\"\u003e#1661\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ePackageLoader\u003c/code\u003e shows a clearer error message when the package does not contain the templates directory. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1705\"\u003e#1705\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove annotations for methods returning copies. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1880\"\u003e#1880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eurlize\u003c/code\u003e does not add \u003ccode\u003emailto:\u003c/code\u003e to values like \u003ccode\u003e@a@b\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1870\"\u003e#1870\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests decorated with \u003ccode\u003e@pass_context\u003c/code\u003e can be used with the \u003ccode\u003e|select\u003c/code\u003e filter. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1624\"\u003e#1624\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUsing \u003ccode\u003eset\u003c/code\u003e for multiple assignment (\u003ccode\u003ea, b = 1, 2\u003c/code\u003e) does not fail when the target is a namespace attribute. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1413\"\u003e#1413\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUsing \u003ccode\u003eset\u003c/code\u003e in all branches of \u003ccode\u003e{% if %}{% elif %}{% else %}\u003c/code\u003e blocks does not cause the variable to be considered initially undefined. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1253\"\u003e#1253\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets/jinja/blob/main/CHANGES.rst\"\u003ejinja2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.1.6\u003c/h2\u003e\n\u003cp\u003eReleased 2025-03-05\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ccode\u003e|attr\u003c/code\u003e filter does not bypass the environment's attribute lookup,\nallowing the sandbox to apply its checks. :ghsa:\u003ccode\u003ecpwx-vrp4-4pq7\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.1.5\u003c/h2\u003e\n\u003cp\u003eReleased 2024-12-21\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe sandboxed environment handles indirect calls to \u003ccode\u003estr.format\u003c/code\u003e, such as\nby passing a stored reference to a filter that calls its argument.\n:ghsa:\u003ccode\u003eq2x7-8rv6-6q7h\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eEscape template name before formatting it into error messages, to avoid\nissues with names that contain f-string syntax.\n:issue:\u003ccode\u003e1792\u003c/code\u003e, :ghsa:\u003ccode\u003egmj6-6f8f-6699\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eSandbox does not allow \u003ccode\u003eclear\u003c/code\u003e and \u003ccode\u003epop\u003c/code\u003e on known mutable sequence\ntypes. :issue:\u003ccode\u003e2032\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eCalling sync \u003ccode\u003erender\u003c/code\u003e for an async template uses \u003ccode\u003easyncio.run\u003c/code\u003e.\n:pr:\u003ccode\u003e1952\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAvoid unclosed \u003ccode\u003eauto_aiter\u003c/code\u003e warnings. :pr:\u003ccode\u003e1960\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eReturn an \u003ccode\u003eaclose\u003c/code\u003e-able \u003ccode\u003eAsyncGenerator\u003c/code\u003e from\n\u003ccode\u003eTemplate.generate_async\u003c/code\u003e. :pr:\u003ccode\u003e1960\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAvoid leaving \u003ccode\u003eroot_render_func()\u003c/code\u003e unclosed in\n\u003ccode\u003eTemplate.generate_async\u003c/code\u003e. :pr:\u003ccode\u003e1960\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAvoid leaving async generators unclosed in blocks, includes and extends.\n:pr:\u003ccode\u003e1960\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eThe runtime uses the correct \u003ccode\u003econcat\u003c/code\u003e function for the current environment\nwhen calling block references. :issue:\u003ccode\u003e1701\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003e|unique\u003c/code\u003e async-aware, allowing it to be used after another\nasync-aware filter. :issue:\u003ccode\u003e1781\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e|int\u003c/code\u003e filter handles \u003ccode\u003eOverflowError\u003c/code\u003e from scientific notation.\n:issue:\u003ccode\u003e1921\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eMake compiling deterministic for tuple unpacking in a \u003ccode\u003e{% set ... %}\u003c/code\u003e\ncall. :issue:\u003ccode\u003e2021\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFix dunder protocol (\u003ccode\u003ecopy\u003c/code\u003e/\u003ccode\u003epickle\u003c/code\u003e/etc) interaction with \u003ccode\u003eUndefined\u003c/code\u003e\nobjects. :issue:\u003ccode\u003e2025\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecopy\u003c/code\u003e/\u003ccode\u003epickle\u003c/code\u003e support for the internal \u003ccode\u003emissing\u003c/code\u003e object.\n:issue:\u003ccode\u003e2027\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eEnvironment.overlay(enable_async)\u003c/code\u003e is applied correctly. :pr:\u003ccode\u003e2061\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eThe error message from \u003ccode\u003eFileSystemLoader\u003c/code\u003e includes the paths that were\nsearched. :issue:\u003ccode\u003e1661\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ePackageLoader\u003c/code\u003e shows a clearer error message when the package does not\ncontain the templates directory. :issue:\u003ccode\u003e1705\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eImprove annotations for methods returning copies. :pr:\u003ccode\u003e1880\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eurlize\u003c/code\u003e does not add \u003ccode\u003emailto:\u003c/code\u003e to values like \u003ccode\u003e@a@b\u003c/code\u003e. :pr:\u003ccode\u003e1870\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/jinja/commit/15206881c006c79667fe5154fe80c01c65410679\"\u003e\u003ccode\u003e1520688\u003c/code\u003e\u003c/a\u003e release version 3.1.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/jinja/commit/90457bbf33b8662926ae65cdde4c4c32e756e403\"\u003e\u003ccode\u003e90457bb\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/jinja/commit/065334d1ee5b7210e1a0a93c37238c86858f2af7\"\u003e\u003ccode\u003e065334d\u003c/code\u003e\u003c/a\u003e attr filter uses env.getattr\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/jinja/commit/033c20015c7ca899ab52eb921bb0f08e6d3dd145\"\u003e\u003ccode\u003e033c200\u003c/code\u003e\u003c/a\u003e start version 3.1.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/jinja/commit/bc68d4efa99c5f77334f0e519628558059ae8c35\"\u003e\u003ccode\u003ebc68d4e\u003c/code\u003e\u003c/a\u003e use global contributing guide (\u003ca href=\"https://redirect.github.com/pallets/jinja/issues/2070\"\u003e#2070\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/jinja/commit/247de5e0c5062a792eb378e50e13e692885ee486\"\u003e\u003ccode\u003e247de5e\u003c/code\u003e\u003c/a\u003e use global contributing guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/jinja/commit/ab8218c7a1b66b62e0ad6b941bd514e3a64a358f\"\u003e\u003ccode\u003eab8218c\u003c/code\u003e\u003c/a\u003e use project advisory link instead of global\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/jinja/commit/b4ffc8ff299dfd360064bea4cd2f862364601ad2\"\u003e\u003ccode\u003eb4ffc8f\u003c/code\u003e\u003c/a\u003e release version 3.1.5 (\u003ca href=\"https://redirect.github.com/pallets/jinja/issues/2066\"\u003e#2066\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/jinja/commit/877f6e51be8e1765b06d911cfaa9033775f051d1\"\u003e\u003ccode\u003e877f6e5\u003c/code\u003e\u003c/a\u003e release version 3.1.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/jinja/commit/8d588592653b052f957b720e1fc93196e06f207f\"\u003e\u003ccode\u003e8d58859\u003c/code\u003e\u003c/a\u003e remove test pypi\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pallets/jinja/compare/3.1.4...3.1.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `isort` from 5.13.2 to 7.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/releases\"\u003eisort's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.0.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003ch2\u003e:boom: Breaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.9 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2430\"\u003e#2430\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:rocket: Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eShow absolute paths in skipped file messages (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2416\"\u003e#2416\u003c/a\u003e) \u003ca href=\"https://github.com/pranlawate\"\u003e\u003ccode\u003e@​pranlawate\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:beetle: Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSome fixes for Python 3.14 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2433\"\u003e#2433\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on \u003ccode\u003e3.14\u003c/code\u003e and fix any bugs (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2425\"\u003e#2425\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CHANGELOG.md + Fix Formatting and Grammar (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2419\"\u003e#2419\u003c/a\u003e) \u003ca href=\"https://github.com/lukbrew25\"\u003e\u003ccode\u003e@​lukbrew25\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix output of hanging indent for long lines with noqa (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2407\"\u003e#2407\u003c/a\u003e) \u003ca href=\"https://github.com/matan1008\"\u003e\u003ccode\u003e@​matan1008\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFormat with \u003ccode\u003eruff\u003c/code\u003e instead of \u003ccode\u003eblack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2432\"\u003e#2432\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTarget 3.10 for \u003ccode\u003eruff\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2431\"\u003e#2431\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate development dependencies to latest version (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2426\"\u003e#2426\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: update pre-commit examples to version 6.1.0 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2413\"\u003e#2413\u003c/a\u003e) \u003ca href=\"https://github.com/pranlawate\"\u003e\u003ccode\u003e@​pranlawate\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSmall cleanup for developer environment (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2418\"\u003e#2418\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:package: Dependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/setup-python from 5 to 6 in the github-actions group (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2411\"\u003e#2411\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.1.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs discussions channel (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2410\"\u003e#2410\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd python 3.14 classifier and badge (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2409\"\u003e#2409\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop use of non-standard pkg_resources API (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2405\"\u003e#2405\u003c/a\u003e) \u003ca href=\"https://github.com/dvarrazzo\"\u003e\u003ccode\u003e@​dvarrazzo\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse working isort version in pre-commit example (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2402\"\u003e#2402\u003c/a\u003e) \u003ca href=\"https://github.com/iainelder\"\u003e\u003ccode\u003e@​iainelder\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix typo in _get_files_from_dir_cached test (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2392\"\u003e#2392\u003c/a\u003e) \u003ca href=\"https://github.com/tiltingpenguin\"\u003e\u003ccode\u003e@​tiltingpenguin\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eResolve bandit warnings (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2379\"\u003e#2379\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd tox for cross-platform, parallel test suite execution (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2378\"\u003e#2378\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Project URLs to PyPI Side Panel (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2387\"\u003e#2387\u003c/a\u003e) \u003ca href=\"https://github.com/guillermodotn\"\u003e\u003ccode\u003e@​guillermodotn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typos (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2376\"\u003e#2376\u003c/a\u003e) \u003ca href=\"https://github.com/co63oc\"\u003e\u003ccode\u003e@​co63oc\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd make bash scripts portable (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2377\"\u003e#2377\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:package: Dependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/checkout from 4 to 5 in the github-actions group (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2406\"\u003e#2406\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/blob/main/CHANGELOG.md\"\u003eisort's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003eNOTE: isort follows the \u003ca href=\"https://semver.org/\"\u003esemver\u003c/a\u003e versioning standard.\nFind out more about isort's release policy \u003ca href=\"https://pycqa.github.io/isort/docs/major_releases/release_policy\"\u003ehere\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003e6.1.0 October 1 2025\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd python 3.14 classifier and badge (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2409\"\u003e#2409\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop use of non-standard pkg_resources API (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2405\"\u003e#2405\u003c/a\u003e) \u003ca href=\"https://github.com/dvarrazzo\"\u003e\u003ccode\u003e@​dvarrazzo\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e6.0.1 Febuary 26 2025\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd OSError handling in find_imports_in_file (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2331\"\u003e#2331\u003c/a\u003e) \u003ca href=\"https://github.com/kobarity\"\u003e\u003ccode\u003e@​kobarity\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e6.0.0 January 27 2025\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove support for Python 3.8 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2327\"\u003e#2327\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePython 3.13 support (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2306\"\u003e#2306\u003c/a\u003e) \u003ca href=\"https://github.com/mayty\"\u003e\u003ccode\u003e@​mayty\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSpeed up exists_case_sensitive calls (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2264\"\u003e#2264\u003c/a\u003e) \u003ca href=\"https://github.com/correctmost\"\u003e\u003ccode\u003e@​correctmost\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure that split_on_trailing_comma works with as imports (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2340\"\u003e#2340\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBlack profile: enable magic comma (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2236\"\u003e#2236\u003c/a\u003e) \u003ca href=\"https://github.com/MrMino\"\u003e\u003ccode\u003e@​MrMino\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate line_length and single_line_exclusions in google profile (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2149\"\u003e#2149\u003c/a\u003e) \u003ca href=\"https://github.com/jagapiou\"\u003e\u003ccode\u003e@​jagapiou\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow --diff to be used with --jobs (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2302\"\u003e#2302\u003c/a\u003e) \u003ca href=\"https://github.com/mnakama\"\u003e\u003ccode\u003e@​mnakama\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix wemake profile to have correct character limit (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2241\"\u003e#2241\u003c/a\u003e) \u003ca href=\"https://github.com/sobolevn\"\u003e\u003ccode\u003e@​sobolevn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix sort_reexports code mangling (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2283\"\u003e#2283\u003c/a\u003e) \u003ca href=\"https://github.com/Helveg\"\u003e\u003ccode\u003e@​Helveg\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix correct group by package tokenization (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2136\"\u003e#2136\u003c/a\u003e) \u003ca href=\"https://github.com/glasnt\"\u003e\u003ccode\u003e@​glasnt\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/0a09c783808cfe77bb3269250f663ff733d23302\"\u003e\u003ccode\u003e0a09c78\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2433\"\u003e#2433\u003c/a\u003e from DanielNoord/python-314\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/0fee794a05b5d0c471ac80bc8943f9843ca29644\"\u003e\u003ccode\u003e0fee794\u003c/code\u003e\u003c/a\u003e Add 3.14 to \u003ccode\u003estdlibds\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/332a1ad0b68bf3a3acac055b0ec3666408b3b425\"\u003e\u003ccode\u003e332a1ad\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003ezstandard\u003c/code\u003e for 3.14 compat\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/f756e5653afcf6d79ec4d0240b1868cbebd8fafd\"\u003e\u003ccode\u003ef756e56\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2432\"\u003e#2432\u003c/a\u003e from DanielNoord/ruff-it-up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/52f5134889d345ff35afdcb86501c8221b804c70\"\u003e\u003ccode\u003e52f5134\u003c/code\u003e\u003c/a\u003e Format with \u003ccode\u003eruff\u003c/code\u003e instead of \u003ccode\u003eblack\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/012aa69fcadb3c89ff92a3d96aa449be7ae6746f\"\u003e\u003ccode\u003e012aa69\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2431\"\u003e#2431\u003c/a\u003e from DanielNoord/ruff-it-up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/89773dbb371192541092657972a74e9ce0bbbc74\"\u003e\u003ccode\u003e89773db\u003c/code\u003e\u003c/a\u003e Target 3.10 with \u003ccode\u003eruff\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/933e382f98a0c77b4c6e33c4e3ef12bd57192884\"\u003e\u003ccode\u003e933e382\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2430\"\u003e#2430\u003c/a\u003e from DanielNoord/drop-39\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/8b6e00cbe643a216da57fed4baa282d0a4a1b829\"\u003e\u003ccode\u003e8b6e00c\u003c/code\u003e\u003c/a\u003e Remove support for Python 3.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/b5f9f296ad873734e8caa3a731f27360648d9b37\"\u003e\u003ccode\u003eb5f9f29\u003c/code\u003e\u003c/a\u003e Bump profile plugin to 3.10+ and re-lock\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/isort/compare/5.13.2...7.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `coveralls` from 4.0.1 to 4.0.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/TheKevJames/coveralls-python/releases\"\u003ecoveralls's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.0.2 (2025-11-07)\u003c/h2\u003e\n\u003ch4\u003eInternal\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eupdate python support: drop EOL'd versions (3.8, 3.9), begin testing on new versions (3.13, 3.14), and mark explicit future compatibility up to \u0026lt;4.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/TheKevJames/coveralls-python/blob/master/CHANGELOG.md\"\u003ecoveralls's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.0.2 (2025-11-07)\u003c/h2\u003e\n\u003ch4\u003eInternal\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eupdate python support: drop EOL'd versions (3.8, 3.9), begin testing on new versions (3.13, 3.14), and mark explicit future compatibility up to \u0026lt;4.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TheKevJames/coveralls-python/commit/113f52f7fff009d9acf1fec7792eb6481de52b07\"\u003e\u003ccode\u003e113f52f\u003c/code\u003e\u003c/a\u003e chore(release): bump version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TheKevJames/coveralls-python/commit/120cf1e2b58f224bfbdd8a53d0a51b0ce4f2e72b\"\u003e\u003ccode\u003e120cf1e\u003c/code\u003e\u003c/a\u003e chore(compat): bump pythons\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TheKevJames/coveralls-python/commit/a0d0cf677b15fbf08f2f6ee2ad8540feb1e81bcc\"\u003e\u003ccode\u003ea0d0cf6\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency docker to v4 (\u003ca href=\"https://redirect.github.com/TheKevJames/coveralls-python/issues/616\"\u003e#616\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TheKevJames/coveralls-python/commit/fd2302acc0fd2d45e4ebdc4d76679b2ddcd7a6aa\"\u003e\u003ccode\u003efd2302a\u003c/code\u003e\u003c/a\u003e chore(deps): update pandoc/core docker tag to v3.8.2 (\u003ca href=\"https://redirect.github.com/TheKevJames/coveralls-python/issues/630\"\u003e#630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TheKevJames/coveralls-python/commit/12ad037fb18e4d61c391d1e9a4da770323a7d27e\"\u003e\u003ccode\u003e12ad037\u003c/code\u003e\u003c/a\u003e chore(deps): lock file maintenance (\u003ca href=\"https://redirect.github.com/TheKevJames/coveralls-python/issues/629\"\u003e#629\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TheKevJames/coveralls-python/commit/d357cc4b42f8046c278bc614792e7549e4b8ae3d\"\u003e\u003ccode\u003ed357cc4\u003c/code\u003e\u003c/a\u003e chore(deps): lock file maintenance (\u003ca href=\"https://redirect.github.com/TheKevJames/coveralls-python/issues/627\"\u003e#627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TheKevJames/coveralls-python/commit/8feab2702c85e036e7c56775621ffa3e2740ff11\"\u003e\u003ccode\u003e8feab27\u003c/code\u003e\u003c/a\u003e chore(deps): update actions/dependency-review-action action to v4.8.1 (\u003ca href=\"https://redirect.github.com/TheKevJames/coveralls-python/issues/624\"\u003e#624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TheKevJames/coveralls-python/commit/9bc44a47db46bd101ac944ffeb5b642c0ccc8e01\"\u003e\u003ccode\u003e9bc44a4\u003c/code\u003e\u003c/a\u003e chore(deps): lock file maintenance (\u003ca href=\"https://redirect.github.com/TheKevJames/coveralls-python/issues/622\"\u003e#622\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TheKevJames/coveralls-python/commit/7ff43515d6d26b6b596fdde4fc325c37497ad1f6\"\u003e\u003ccode\u003e7ff4351\u003c/code\u003e\u003c/a\u003e chore(deps): update actions/dependency-review-action action to v4.8.0 (\u003ca href=\"https://redirect.github.com/TheKevJames/coveralls-python/issues/620\"\u003e#620\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TheKevJames/coveralls-python/commit/9ab30382883d82b39165cd4b6eed81354beddbcb\"\u003e\u003ccode\u003e9ab3038\u003c/code\u003e\u003c/a\u003e chore(deps): update actions/dependency-review-action action to v4.7.4 (\u003ca href=\"https://redirect.github.com/TheKevJames/coveralls-python/issues/619\"\u003e#619\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/TheKevJames/coveralls-python/compare/4.0.1...4.0.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 8.3.3 to 8.4.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.4.2\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.2 (2025-09-03)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13478\"\u003e#13478\u003c/a\u003e: Fixed a crash when using \u003ccode\u003econsole_output_style\u003c/code\u003e{.interpreted-text role=\u0026quot;confval\u0026quot;} with \u003ccode\u003etimes\u003c/code\u003e and a module is skipped.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13530\"\u003e#13530\u003c/a\u003e: Fixed a crash when using \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and \u003ccode\u003edecimal.Decimal\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} instances with the \u003ccode\u003edecimal.FloatOperation\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} trap set.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13549\"\u003e#13549\u003c/a\u003e: No longer evaluate type annotations in Python \u003ccode\u003e3.14\u003c/code\u003e when inspecting function signatures.\u003c/p\u003e\n\u003cp\u003eThis prevents crashes during module collection when modules do not explicitly use \u003ccode\u003efrom __future__ import annotations\u003c/code\u003e and import types for annotations within a \u003ccode\u003eif TYPE_CHECKING:\u003c/code\u003e block.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13559\"\u003e#13559\u003c/a\u003e: Added missing [int]{.title-ref} and [float]{.title-ref} variants to the [Literal]{.title-ref} type annotation of the [type]{.title-ref} parameter in \u003ccode\u003epytest.Parser.addini\u003c/code\u003e{.interpreted-text role=\u0026quot;meth\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13563\"\u003e#13563\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now only imports \u003ccode\u003enumpy\u003c/code\u003e if NumPy is already in \u003ccode\u003esys.modules\u003c/code\u003e. This fixes unconditional import behavior introduced in [8.4.0]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13577\"\u003e#13577\u003c/a\u003e: Clarify that \u003ccode\u003epytest_generate_tests\u003c/code\u003e is discovered in test modules/classes; other hooks must be in \u003ccode\u003econftest.py\u003c/code\u003e or plugins.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributor-facing changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13480\"\u003e#13480\u003c/a\u003e: Self-testing: fixed a few test failures when run with \u003ccode\u003e-Wdefault\u003c/code\u003e or a similar override.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13547\"\u003e#13547\u003c/a\u003e: Self-testing: corrected expected message for \u003ccode\u003etest_doctest_unexpected_exception\u003c/code\u003e in Python \u003ccode\u003e3.14\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13684\"\u003e#13684\u003c/a\u003e: Make pytest's own testsuite insensitive to the presence of the \u003ccode\u003eCI\u003c/code\u003e environment variable -- by \u003ccode\u003eogrisel\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.1\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.1 (2025-06-17)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13461\"\u003e#13461\u003c/a\u003e: Corrected \u003ccode\u003e_pytest.terminal.TerminalReporter.isatty\u003c/code\u003e to support\nbeing called as a method. Before it was just a boolean which could\nbreak correct code when using \u003ccode\u003e-o log_cli=true\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13477\"\u003e#13477\u003c/a\u003e: Reintroduced \u003ccode\u003epytest.PytestReturnNotNoneWarning\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which was removed by accident in pytest [8.4]{.title-ref}.\u003c/p\u003e\n\u003cp\u003eThis warning is raised when a test functions returns a value other than \u003ccode\u003eNone\u003c/code\u003e, which is often a mistake made by beginners.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ereturn-not-none\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13497\"\u003e#13497\u003c/a\u003e: Fixed compatibility with \u003ccode\u003eTwisted 25+\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e: Fixed outdated warning about \u003ccode\u003efaulthandler\u003c/code\u003e not working on Windows.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.0\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.0 (2025-06-02)\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/bfae4224fd554d3d7f2c277a4cc092b6ec6af3ae\"\u003e\u003ccode\u003ebfae422\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/89905381a163be30ae87d62e5f750e902d750c5f\"\u003e\u003ccode\u003e8990538\u003c/code\u003e\u003c/a\u003e Fix passenv CI in tox ini and make tests insensitive to the presence of the C...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/ca676bfe005aebcb12f4146d1b0f1d2772e2cd5d\"\u003e\u003ccode\u003eca676bf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13687\"\u003e#13687\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/e63f6e51c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/975a60a63ce385a44655596e254c1899feaa53e4\"\u003e\u003ccode\u003e975a60a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13686\"\u003e#13686\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/12bde8af6...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/7723ce84b87ab08f86ddafcb342acc28ba5ec99d\"\u003e\u003ccode\u003e7723ce8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13683\"\u003e#13683\u003c/a\u003e from even-even/fix_Exeption_to_Exception_in_errorMe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b7f05680d1301e0969b30bcb3c4b27433c9ee2b7\"\u003e\u003ccode\u003eb7f0568\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13685\"\u003e#13685\u003c/a\u003e from CoretexShadow/fix/docs-pytest-generate-tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2c94c4a6948ba53440818389298157fa5d5f94cd\"\u003e\u003ccode\u003e2c94c4a\u003c/code\u003e\u003c/a\u003e add missing colon (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13640\"\u003e#13640\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13641\"\u003e#13641\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c3d7684bc01c8c48d05145a30c5211ca8656c68c\"\u003e\u003ccode\u003ec3d7684\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13606\"\u003e#13606\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/5f9938563...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/dc6e3be2ddc75a149b6d102d9b7c82ee47a00cfa\"\u003e\u003ccode\u003edc6e3be\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13605\"\u003e#13605\u003c/a\u003e from The-Compiler/training-update-2025-07\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/f87289c36c8dbe7740e3020f5546b6f8b0861ff0\"\u003e\u003ccode\u003ef87289c\u003c/code\u003e\u003c/a\u003e Fix crash with \u003ccode\u003etimes\u003c/code\u003e output style and skipped module (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13573\"\u003e#13573\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13579\"\u003e#13579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/8.3.3...8.4.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-cov` from 6.0.0 to 7.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-cov/blob/master/CHANGELOG.rst\"\u003epytest-cov's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.0.0 (2025-09-09)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eDropped support for subprocesses measurement.\u003c/p\u003e\n\u003cp\u003eIt was a feature added long time ago when coverage lacked a nice way to measure subprocesses created in tests.\nIt relied on a \u003ccode\u003e.pth\u003c/code\u003e file, there was no way to opt-out and it created bad interations\nwith \u003ccode\u003ecoverage's new patch system \u0026lt;https://coverage.readthedocs.io/en/latest/config.html#run-patch\u0026gt;\u003c/code\u003e_ added\nin \u003ccode\u003e7.10 \u0026lt;https://coverage.readthedocs.io/en/7.10.6/changes.html#version-7-10-0-2025-07-24\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003cp\u003eTo migrate to this release you might need to enable the suprocess patch, example for \u003ccode\u003e.coveragerc\u003c/code\u003e:\u003c/p\u003e\n\u003cp\u003e.. code-block:: ini\u003c/p\u003e\n\u003cp\u003e[run]\npatch = subprocess\u003c/p\u003e\n\u003cp\u003eThis release also requires at least coverage 7.10.6.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eSwitched packaging to have metadata completely in \u003ccode\u003epyproject.toml\u003c/code\u003e and use \u003ccode\u003ehatchling \u0026lt;https://pypi.org/project/hatchling/\u0026gt;\u003c/code\u003e_ for\nbuilding.\nContributed by Ofek Lev in \u003ccode\u003e[#551](https://github.com/pytest-dev/pytest-cov/issues/551) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/551\u0026gt;\u003c/code\u003e_\nwith some extras in \u003ccode\u003e[#716](https://github.com/pytest-dev/pytest-cov/issues/716) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/716\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemoved some not really necessary testing deps like \u003ccode\u003esix\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.3.0 (2025-09-06)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for markdown reports.\nContributed by Marcos Boger in \u003ccode\u003e[#712](https://github.com/pytest-dev/pytest-cov/issues/712) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/712\u0026gt;\u003c/code\u003e_\nand \u003ccode\u003e[#714](https://github.com/pytest-dev/pytest-cov/issues/714) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/714\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eFixed some formatting issues in docs.\nAnonymous contribution in \u003ccode\u003e[#706](https://github.com/pytest-dev/pytest-cov/issues/706) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/706\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.2.1 (2025-06-12)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded a version requirement for pytest's pluggy dependency (1.2.0, released 2023-06-21) that has the required new-style hookwrapper API.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemoved deprecated license classifier (packaging).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDisabled coverage warnings in two more situations where they have no value:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u0026quot;module-not-measured\u0026quot; in workers\u003c/li\u003e\n\u003cli\u003e\u0026quot;already-imported\u0026quot; in subprocesses\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.2.0 (2025-06-11)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe plugin now adds 3 rules in the filter warnings configuration to prevent common coverage warnings being raised as obscure errors::\u003c/p\u003e\n\u003cp\u003edefault:unclosed database in \u0026lt;sqlite3.Connection object at:ResourceWarning\nonce::PytestCovWarning\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/224d8964caad90074a8cf6dc8720b8f70f31629b\"\u003e\u003ccode\u003e224d896\u003c/code\u003e\u003c/a\u003e Bump version: 6.3.0 → 7.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/73424e3999f865eac72e27f09d5fe11b9703cfd6\"\u003e\u003ccode\u003e73424e3\u003c/code\u003e\u003c/a\u003e Cleanup the docs a bit.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/36f1cc2967831dbd4c8aa70086fc86dc495f8b9a\"\u003e\u003ccode\u003e36f1cc2\u003c/code\u003e\u003c/a\u003e Bump pins in template.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f299c590a63a48e51e3ae949993dc7bb1f1d480d\"\u003e\u003ccode\u003ef299c59\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 2 updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/25f0b2e0cdbc345c0d3e49170f7a328c3e0d805f\"\u003e\u003ccode\u003e25f0b2e\u003c/code\u003e\u003c/a\u003e Update docs/config.rst\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/bb23eacc5531fb8f499213d8420407e0d72f88e3\"\u003e\u003ccode\u003ebb23eac\u003c/code\u003e\u003c/a\u003e Improve configuration docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/a19531e91e1ab753ccf648a2d9bab08a6fddebb9\"\u003e\u003ccode\u003ea19531e\u003c/code\u003e\u003c/a\u003e Switch from build/pre-commit to uv/prek - this should make this faster.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/82f999391073f2fb8ae422af452602f310086a2a\"\u003e\u003ccode\u003e82f9993\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/211b5cd41c29916bc643b4a11b00578ba4fd6fe8\"\u003e\u003ccode\u003e211b5cd\u003c/code\u003e\u003c/a\u003e Fix links.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/97aadd74bcbc00a2078d240e8fe871dd62b83d80\"\u003e\u003ccode\u003e97aadd7\u003c/code\u003e\u003c/a\u003e Update some ci config, reformat and apply some lint fixes.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v6.0.0...v7.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.7.4 to 0.14.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.14.4\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cp\u003eReleased on 2025-11-06.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[formatter] Allow newlines after function headers without docstrings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/21110\"\u003e#21110\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Avoid extra parentheses for long \u003ccode\u003ematch\u003c/code\u003e patterns with \u003ccode\u003eas\u003c/code\u003e captures (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/21176\"\u003e#21176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Expand fix safety for keyword arguments and \u003ccode\u003eDecimal\u003c/code\u003es (\u003ccode\u003eFURB164\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/21259\"\u003e#21259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Preserve argument ordering in autofix (\u003ccode\u003eFURB103\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20790\"\u003e#20790\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[server] Fix missing diagnostics for notebooks (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/21156\"\u003e#21156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Ignore non-NFKC attribute names in \u003ccode\u003eB009\u003c/code\u003e and \u003ccode\u003eB010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/21131\"\u003e#21131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix false negative for underscores before sign in \u003ccode\u003eDecimal\u003c/code\u003e constructor (\u003ccode\u003eFURB157\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/21190\"\u003e#21190\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives on starred arguments (\u003ccode\u003eRUF057\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/21256\"\u003e#21256\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] extend deprecated argument \u003ccode\u003econcurrency\u003c/code\u003e in \u003ccode\u003eairflow..DAG\u003c/code\u003e (\u003ccode\u003eAIR301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/21220\"\u003e#21220\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove \u003ccode\u003eextend\u003c/code\u003e docs (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/21135\"\u003e#21135\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Fix typo in \u003ccode\u003eC416\u003c/code\u003e documentation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/21184\"\u003e#21184\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRevise Ruff setup instructions for Zed editor (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20935\"\u003e#20935\u003c/a\u003e)\u003c...\n\n_Description has been truncated_","html_url":"https://github.com/PySATL/pysatl-knowledge/pull/9","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/PySATL%2Fpysatl-knowledge/issues/9","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/9/packages"},{"uuid":"3511116637","node_id":"PR_kwDOO_gais6thSTS","number":22,"state":"closed","title":"Upgrade: bump the pip-updates group across 1 directory with 21 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-11-10T18:40:38.000Z","author_association":null,"state_reason":null,"created_at":"2025-10-13T18:48:55.000Z","updated_at":"2025-11-10T18:40:40.000Z","time_to_close":2418703,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Upgrade: bump","group_name":"pip-updates","update_count":21,"packages":[{"name":"django","old_version":"5.2.3","new_version":"5.2.7","repository_url":"https://github.com/django/django"},{"name":"psycopg","old_version":"3.2.9","new_version":"3.2.10","repository_url":"https://github.com/psycopg/psycopg"},{"name":"govuk-frontend-jinja","old_version":"3.6.0","new_version":"3.8.0","repository_url":"https://github.com/LandRegistry/govuk-frontend-jinja"},{"name":"whitenoise","old_version":"6.9.0","new_version":"6.11.0","repository_url":"https://github.com/evansd/whitenoise"},{"name":"boto3","old_version":"1.38.39","new_version":"1.40.50","repository_url":"https://github.com/boto/boto3"},{"name":"pydantic","old_version":"2.11.7","new_version":"2.12.0","repository_url":"https://github.com/pydantic/pydantic"},{"name":"datamodel-code-generator","old_version":"0.31.1","new_version":"0.35.0","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"django-types","old_version":"0.21.0","new_version":"0.22.0","repository_url":"https://github.com/sbdchd/django-types"},{"name":"sentry-sdk","old_version":"2.30.0","new_version":"2.41.0","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"psutil","old_version":"7.0.0","new_version":"7.1.0","repository_url":"https://github.com/giampaolo/psutil"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"},{"name":"django-rq","old_version":"3.0.1","new_version":"3.1","repository_url":"https://github.com/rq/django-rq"},{"name":"django-simple-history","old_version":"3.8.0","new_version":"3.10.1","repository_url":"https://github.com/django-commons/django-simple-history"},{"name":"pandas","old_version":"2.3.0","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"moto","old_version":"5.1.6","new_version":"5.1.14","repository_url":"https://github.com/getmoto/moto"},{"name":"freezegun","old_version":"1.5.2","new_version":"1.5.5","repository_url":"https://github.com/spulec/freezegun"},{"name":"pytest-lazy-fixtures","old_version":"1.1.4","new_version":"1.4.0","repository_url":"https://github.com/dev-petrov/pytest-lazy-fixtures"},{"name":"ruff","old_version":"0.12.0","new_version":"0.14.0","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"mypy","old_version":"1.16.1","new_version":"1.18.2","repository_url":"https://github.com/python/mypy"},{"name":"django-webtest","old_version":"1.9.13","new_version":"1.9.14","repository_url":"https://github.com/django-webtest/django-webtest"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-updates group with 21 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [django](https://github.com/django/django) | `5.2.3` | `5.2.7` |\n| [psycopg](https://github.com/psycopg/psycopg) | `3.2.9` | `3.2.10` |\n| [govuk-frontend-jinja](https://github.com/LandRegistry/govuk-frontend-jinja) | `3.6.0` | `3.8.0` |\n| [whitenoise](https://github.com/evansd/whitenoise) | `6.9.0` | `6.11.0` |\n| [boto3](https://github.com/boto/boto3) | `1.38.39` | `1.40.50` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.11.7` | `2.12.0` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.31.1` | `0.35.0` |\n| [django-types](https://github.com/sbdchd/django-types) | `0.21.0` | `0.22.0` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.30.0` | `2.41.0` |\n| [psutil](https://github.com/giampaolo/psutil) | `7.0.0` | `7.1.0` |\n| [pytest-random-order](https://github.com/jbasko/pytest-random-order) | `1.1.1` | `1.2.0` |\n| [django-rq](https://github.com/rq/django-rq) | `3.0.1` | `3.1` |\n| [django-simple-history](https://github.com/django-commons/django-simple-history) | `3.8.0` | `3.10.1` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.3.0` | `2.3.3` |\n| [moto](https://github.com/getmoto/moto) | `5.1.6` | `5.1.14` |\n| [freezegun](https://github.com/spulec/freezegun) | `1.5.2` | `1.5.5` |\n| [pytest-lazy-fixtures](https://github.com/dev-petrov/pytest-lazy-fixtures) | `1.1.4` | `1.4.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.12.0` | `0.14.0` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.3.0` |\n| [mypy](https://github.com/python/mypy) | `1.16.1` | `1.18.2` |\n| [django-webtest](https://github.com/django-webtest/django-webtest) | `1.9.13` | `1.9.14` |\n\n\nUpdates `django` from 5.2.3 to 5.2.7\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/3cff3209e35a560f94801d428cf7f2a3ecb2a051\"\u003e\u003ccode\u003e3cff320\u003c/code\u003e\u003c/a\u003e [5.2.x] Bumped version for 5.2.7 release.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/ed8fc39d77465eddbde1191a054ae965f6a8a584\"\u003e\u003ccode\u003eed8fc39\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed CVE-2025-59682 -- Fixed potential partial directory-traversal v...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/52fbae0a4dbbe5faa59827f8f05694a0065cc135\"\u003e\u003ccode\u003e52fbae0\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed CVE-2025-59681 -- Protected QuerySet.annotate(), alias(), aggre...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/1794cbf961f9ea54715fb094fe8adc80a5054947\"\u003e\u003ccode\u003e1794cbf\u003c/code\u003e\u003c/a\u003e [5.2.x] Made cosmetic edits to 5.2.7 release notes.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/81625a141e1feaaea877fc18876fdd7b6394442c\"\u003e\u003ccode\u003e81625a1\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/36587\"\u003e#36587\u003c/a\u003e -- Clarified usage of \u003ccode\u003elist.insert()\u003c/code\u003e for upload handlers.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/6f3813e4b6e3db7fa3cc612c78f898142468bca9\"\u003e\u003ccode\u003e6f3813e\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/35877\"\u003e#35877\u003c/a\u003e, Refs \u003ca href=\"https://redirect.github.com/django/django/issues/36128\"\u003e#36128\u003c/a\u003e -- Documented unique constraint when migrat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/10a2d3b837c5d8c1ac0cabd399ad7edcc66bfa8e\"\u003e\u003ccode\u003e10a2d3b\u003c/code\u003e\u003c/a\u003e [5.2.x] Added stub release notes and release date for 5.2.7, 5.1.13, and 4.2.25.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/b2773a39a34f0f0ca768fa1daaf8bf72fca56e06\"\u003e\u003ccode\u003eb2773a3\u003c/code\u003e\u003c/a\u003e [5.2.x] Refs \u003ca href=\"https://redirect.github.com/django/django/issues/25508\"\u003e#25508\u003c/a\u003e -- Used QuerySet.\u003cstrong\u003erepr\u003c/strong\u003e in docs/ref/contrib/postgres/se...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/7554c54e5f02566520dee81c8b95f47429f1b553\"\u003e\u003ccode\u003e7554c54\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/36581\"\u003e#36581\u003c/a\u003e -- Updated serialization examples from XML to JSON.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/2a2936c3e6444a0f37156773ca405cedaf28dea7\"\u003e\u003ccode\u003e2a2936c\u003c/code\u003e\u003c/a\u003e [5.2.x] Updated translations from Transifex.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/django/django/compare/5.2.3...5.2.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `psycopg` from 3.2.9 to 3.2.10\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psycopg/psycopg/blob/master/docs/news.rst\"\u003epsycopg's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e.. currentmodule:: psycopg\u003c/p\u003e\n\u003cp\u003e.. index::\nsingle: Release notes\nsingle: News\u003c/p\u003e\n\u003ch1\u003e\u003ccode\u003epsycopg\u003c/code\u003e release notes\u003c/h1\u003e\n\u003ch2\u003eFuture releases\u003c/h2\u003e\n\u003cp\u003ePsycopg 3.3.0 (unreleased)\n^^^^^^^^^^^^^^^^^^^^^^^^^^\u003c/p\u003e\n\u003cp\u003e.. rubric:: New top-level features\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd :ref:\u003ccode\u003etemplate strings queries \\\u0026lt;template-strings\u0026gt;\u003c/code\u003e (:ticket:\u003ccode\u003e[#1054](https://github.com/psycopg/psycopg/issues/1054)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eCursors are now iterators, not only iterables. This means you can call\n\u003ccode\u003enext(cur)\u003c/code\u003e to fetch the next row (:ticket:\u003ccode\u003e[#1064](https://github.com/psycopg/psycopg/issues/1064)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eCursor.results()\u003c/code\u003e to iterate over the result sets of the queries\nexecuted though \u003ccode\u003e~Cursor.executemany()\u003c/code\u003e or \u003ccode\u003e~Cursor.execute()\u003c/code\u003e\n(:ticket:\u003ccode\u003e[#1080](https://github.com/psycopg/psycopg/issues/1080)\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. rubric:: New libpq wrapper features\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003epq.PGconn.used_gssapi\u003c/code\u003e attribute and \u003ccode\u003eCapabilities.has_used_gssapi()\u003c/code\u003e\nfunction (:ticket:\u003ccode\u003e[#1138](https://github.com/psycopg/psycopg/issues/1138)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eConnectionInfo.full_protocol_version\u003c/code\u003e attribute,\n\u003ccode\u003eCapabilities.has_full_protocol_version()\u003c/code\u003e function (:ticket:\u003ccode\u003e[#1079](https://github.com/psycopg/psycopg/issues/1079)\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. rubric:: Other changes\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eDisable default GSSAPI preferential connection in the binary package\n(:ticket:\u003ccode\u003e[#1136](https://github.com/psycopg/psycopg/issues/1136)\u003c/code\u003e).\u003c/p\u003e\n\u003cp\u003e.. warning::\u003c/p\u003e\n\u003cp\u003ePlease explicitly set the gssencmode_ connection parameter or the\n:envvar:\u003ccode\u003ePGGSSENCMODE\u003c/code\u003e environment variable to interact reliably with the\nGSSAPI.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDrop support for Python 3.8 (:ticket:\u003ccode\u003e[#976](https://github.com/psycopg/psycopg/issues/976)\u003c/code\u003e) and 3.9 (:ticket:\u003ccode\u003e[#1056](https://github.com/psycopg/psycopg/issues/1056)\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003ePsycopg 3.2.11 (unreleased)\n^^^^^^^^^^^^^^^^^^^^^^^^^^^\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix spurious readiness flags in some of the wait functions (:ticket:\u003ccode\u003e[#1141](https://github.com/psycopg/psycopg/issues/1141)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eFix high CPU usage using the \u003ccode\u003ewait_c\u003c/code\u003e function on Windows (:ticket:\u003ccode\u003e[#645](https://github.com/psycopg/psycopg/issues/645)\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/6cc2adfb45464f201bb7a15dd95189a7af16c26e\"\u003e\u003ccode\u003e6cc2adf\u003c/code\u003e\u003c/a\u003e chore: bump psycopg package version to 3.2.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/4c2fd3735c0670d63b92a7ad098fc0a0a2c7f52a\"\u003e\u003ccode\u003e4c2fd37\u003c/code\u003e\u003c/a\u003e Merge branch 'pg18-3.2' into maint-3.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/6ddad7b4bb7144b317e41ea57fcf3b720756fc8a\"\u003e\u003ccode\u003e6ddad7b\u003c/code\u003e\u003c/a\u003e docs: mention PostgreSQL v18 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/30bfdb954ea93cf92ce9a823f41ea6f67fd03d52\"\u003e\u003ccode\u003e30bfdb9\u003c/code\u003e\u003c/a\u003e ci: add PostgreSQL 18 to the test grid\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/57236b83b83cbfb588fcfcf70c1ca81c62d05a5b\"\u003e\u003ccode\u003e57236b8\u003c/code\u003e\u003c/a\u003e chore: add PostgreSQL 18 exceptions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/970a307b3d6d2b5125abf8337320aab97292f34f\"\u003e\u003ccode\u003e970a307\u003c/code\u003e\u003c/a\u003e fix: add ConnStatus.CONNECTION_AUTHENTICATING value\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/6903a92b5f9dc40e25f3a3d7ba62a4b4e739a638\"\u003e\u003ccode\u003e6903a92\u003c/code\u003e\u003c/a\u003e Merge branch 'fix-1091' into maint-3.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/43ad961c85703c0458c58eccc512ec1e1f2d9fae\"\u003e\u003ccode\u003e43ad961\u003c/code\u003e\u003c/a\u003e docs: document the changes to notifies generator\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/eac8115523d1b569e279eaec5fc31d76da25ef55\"\u003e\u003ccode\u003eeac8115\u003c/code\u003e\u003c/a\u003e fix: raise a warning when notifies generator and handlers are used together\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/5cc99d65f05844413730cdada00840bf9739e293\"\u003e\u003ccode\u003e5cc99d6\u003c/code\u003e\u003c/a\u003e fix: collect notifies only if no handler was registered\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psycopg/psycopg/compare/3.2.9...3.2.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `govuk-frontend-jinja` from 3.6.0 to 3.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/releases\"\u003egovuk-frontend-jinja's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.8.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for \u003ca href=\"https://github.com/alphagov/govuk-frontend/releases/tag/v5.12.0\"\u003eGOV.UK Frontend v5.12.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.9 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/LandRegistry/govuk-frontend-jinja/issues/82\"\u003e#82\u003c/a\u003e - Templates use lower filter on values where it should not\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/tim-s-ccs\"\u003e\u003ccode\u003e@​tim-s-ccs\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/samuelhwilliams\"\u003e\u003ccode\u003e@​samuelhwilliams\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.7.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for \u003ca href=\"https://github.com/alphagov/govuk-frontend/releases/tag/v5.11.1\"\u003eGOV.UK Frontend v5.11.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/blob/main/CHANGELOG.md\"\u003egovuk-frontend-jinja's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/releases/tag/3.8.0\"\u003e3.8.0\u003c/a\u003e - 06/10/2025\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for \u003ca href=\"https://github.com/alphagov/govuk-frontend/releases/tag/v5.12.0\"\u003eGOV.UK Frontend v5.12.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.9 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/LandRegistry/govuk-frontend-jinja/issues/82\"\u003e#82\u003c/a\u003e - Templates use lower filter on values where it should not\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/tim-s-ccs\"\u003eTim South\u003c/a\u003e and \u003ca href=\"https://github.com/samuelhwilliams\"\u003eSamuel Williams\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/releases/tag/3.7.0\"\u003e3.7.0\u003c/a\u003e - 14/08/2025\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for \u003ca href=\"https://github.com/alphagov/govuk-frontend/releases/tag/v5.11.1\"\u003eGOV.UK Frontend v5.11.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/b9a6fd3f452c1c61dfbd06a71c875d0bba917018\"\u003e\u003ccode\u003eb9a6fd3\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/LandRegistry/govuk-frontend-jinja/issues/101\"\u003e#101\u003c/a\u003e from LandRegistry/govuk-frontend-512\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/be989e3c402ebb622eb895b6e5d9a9b6d72fed0d\"\u003e\u003ccode\u003ebe989e3\u003c/code\u003e\u003c/a\u003e refine fixed issue\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/e28b6095d4909d21e1e3e6c2dfbf44c43b993b6a\"\u003e\u003ccode\u003ee28b609\u003c/code\u003e\u003c/a\u003e identical requirements since 3.9 removal\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/2738e28a5b77a3e93c2427eec1c57e42ce2e9d81\"\u003e\u003ccode\u003e2738e28\u003c/code\u003e\u003c/a\u003e upgrade test dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/9b9de9b8d38dcffe96c6c169cf69c24e6fd3c7bd\"\u003e\u003ccode\u003e9b9de9b\u003c/code\u003e\u003c/a\u003e Templates use lower filter on values where it should not\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/cdf76723a0476900916454aea731747a80306ad4\"\u003e\u003ccode\u003ecdf7672\u003c/code\u003e\u003c/a\u003e only lowercase bools\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/31a0b0a7274fb41d22b628031b33da66b01ab691\"\u003e\u003ccode\u003e31a0b0a\u003c/code\u003e\u003c/a\u003e minor version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/4d2deb03d13f8bebb74984a1978b25835d09d565\"\u003e\u003ccode\u003e4d2deb0\u003c/code\u003e\u003c/a\u003e drop python 3.9 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/c125a6501a14edf3febd16c76d755058f5ca739d\"\u003e\u003ccode\u003ec125a65\u003c/code\u003e\u003c/a\u003e test 5.12.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/0fb146b1d9a5595f0a0a99aaed94fbfd7bddd637\"\u003e\u003ccode\u003e0fb146b\u003c/code\u003e\u003c/a\u003e bump versions\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/compare/3.6.0...3.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `whitenoise` from 6.9.0 to 6.11.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/evansd/whitenoise/blob/main/docs/changelog.rst\"\u003ewhitenoise's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.11.0 (2025-09-18)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport Django 6.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.10.0 (2025-09-09)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evansd/whitenoise/commit/c9c06e9382b92fc959ffdfc3e2ec63057de82561\"\u003e\u003ccode\u003ec9c06e9\u003c/code\u003e\u003c/a\u003e Version 6.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evansd/whitenoise/commit/051c4e997a07fd3ae5e9f3ec092080102ab89d93\"\u003e\u003ccode\u003e051c4e9\u003c/code\u003e\u003c/a\u003e Support Django 6.0 (\u003ca href=\"https://redirect.github.com/evansd/whitenoise/issues/665\"\u003e#665\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evansd/whitenoise/commit/c903cc13394895cbb3926e48c7acecf364efcd26\"\u003e\u003ccode\u003ec903cc1\u003c/code\u003e\u003c/a\u003e Version 6.10.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evansd/whitenoise/commit/a81bcb0ae2dd0c5884ebadb762f46827ecb54d0f\"\u003e\u003ccode\u003ea81bcb0\u003c/code\u003e\u003c/a\u003e docs(django): use the stable version in URLs (\u003ca href=\"https://redirect.github.com/evansd/whitenoise/issues/626\"\u003e#626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evansd/whitenoise/commit/67b4f32b12a9700b6dcc30ced8e9ad23bf39baa1\"\u003e\u003ccode\u003e67b4f32\u003c/code\u003e\u003c/a\u003e Support Python 3.14 (\u003ca href=\"https://redirect.github.com/evansd/whitenoise/issues/664\"\u003e#664\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evansd/whitenoise/commit/da8d333d165be1bdd9e7decbb3a293b5e55ff608\"\u003e\u003ccode\u003eda8d333\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/evansd/whitenoise/issues/663\"\u003e#663\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evansd/whitenoise/commit/800072482c0652f81864ae78c26539d3dfc765b2\"\u003e\u003ccode\u003e8000724\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 2 updates (\u003ca href=\"https://redirect.github.com/evansd/whitenoise/issues/662\"\u003e#662\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evansd/whitenoise/commit/8fb339f0eaee9219b1e02a840b5fd2227cf2fbbf\"\u003e\u003ccode\u003e8fb339f\u003c/code\u003e\u003c/a\u003e Upgrade dependencies (\u003ca href=\"https://redirect.github.com/evansd/whitenoise/issues/661\"\u003e#661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evansd/whitenoise/commit/adf64ddfa5329d622cbc4740aec49b7baf0df792\"\u003e\u003ccode\u003eadf64dd\u003c/code\u003e\u003c/a\u003e Use uvx to run tox on GitHub Actions (\u003ca href=\"https://redirect.github.com/evansd/whitenoise/issues/660\"\u003e#660\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evansd/whitenoise/commit/ad6eb204640ff69498f8fc60bd9eb876ee5771b8\"\u003e\u003ccode\u003ead6eb20\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/evansd/whitenoise/issues/659\"\u003e#659\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/evansd/whitenoise/compare/6.9.0...6.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `boto3` from 1.38.39 to 1.40.50\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/d8b41867dbfac406a2115d87abe1f8caea0365e7\"\u003e\u003ccode\u003ed8b4186\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.50'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/8fc5b245cf38d48dc03a7726be4141911fc09c54\"\u003e\u003ccode\u003e8fc5b24\u003c/code\u003e\u003c/a\u003e Bumping version to 1.40.50\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/f4d009760a05b09435bd1078c41e7c753246172d\"\u003e\u003ccode\u003ef4d0097\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/660a1ec6b8b97d109a8ab37ca5a79925844388f0\"\u003e\u003ccode\u003e660a1ec\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.49'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/a5eec708c97fdb2e07179603fc8a42c8c80ad2ca\"\u003e\u003ccode\u003ea5eec70\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.49' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/a06ac9ea4e4ed70c7ec9e5f52b742a2e739f6bab\"\u003e\u003ccode\u003ea06ac9e\u003c/code\u003e\u003c/a\u003e Bumping version to 1.40.49\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/4dd0569b4cab67d26d8e4d450ad61eb8ec715c2c\"\u003e\u003ccode\u003e4dd0569\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/5ad02481857ce9341a40e65c27cd6321b2de380f\"\u003e\u003ccode\u003e5ad0248\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.48'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/578c49e7015f47fe32dbc51d0b51ba6e76f8118d\"\u003e\u003ccode\u003e578c49e\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.48' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/01618f3cfb1633487de5d2d536f8dfe161063953\"\u003e\u003ccode\u003e01618f3\u003c/code\u003e\u003c/a\u003e Bumping version to 1.40.48\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.38.39...1.40.50\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.11.7 to 2.12.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pydantic/pydantic/releases\"\u003epydantic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.12.0 2025-10-07\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch1\u003ev2.12.0 (2025-10-07)\u003c/h1\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!NOTE]\nCheck out the \u003ca href=\"https://pydantic.dev/articles/pydantic-v2-12-release\"\u003eblog post\u003c/a\u003e for release highlights. Several minor \u003ca href=\"https://pydantic.dev/articles/pydantic-v2-12-release#changes\"\u003echanges\u003c/a\u003e (considered non-breaking changes according to our \u003ca href=\"https://docs.pydantic.dev/2.12/version-policy/#pydantic-v2\"\u003eversioning policy\u003c/a\u003e) are also included in this release. Make sure to look into them before upgrading.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!WARNING]\nThe core functionality of Pydantic V1 is \u003cstrong\u003enot\u003c/strong\u003e compatible with \u003cstrong\u003ePython 3.14\u003c/strong\u003e or greater.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cp\u003eThis is the final 2.12 release. It features the work of 20 external contributors and provides useful new features, along with initial Python 3.14 support.\u003c/p\u003e\n\u003cp\u003eChangelog (see the \u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.0a1\"\u003e2.12.0a1\u003c/a\u003e and \u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.0b1\"\u003e2.12.0b1\u003c/a\u003e releases for additional changes since 2.11):\u003c/p\u003e\n\u003ch4\u003ePackaging\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate V1 copy to v1.10.24 by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12338\"\u003e#12338\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eNew Features\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eextra\u003c/code\u003e parameter to the validate functions by \u003ca href=\"https://github.com/anvilpete\"\u003e\u003ccode\u003e@​anvilpete\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12233\"\u003e#12233\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eexclude_computed_fields\u003c/code\u003e serialization option by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12334\"\u003e#12334\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epreverse_empty_path\u003c/code\u003e URL options by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12336\"\u003e#12336\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eunion_format\u003c/code\u003e parameter to JSON Schema generation by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12147\"\u003e#12147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e__qualname__\u003c/code\u003e parameter for \u003ccode\u003ecreate_model\u003c/code\u003e by \u003ca href=\"https://github.com/Atry\"\u003e\u003ccode\u003e@​Atry\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12001\"\u003e#12001\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eDo not try to infer name from lambda definitions in pipelines API by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12289\"\u003e#12289\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse proper namespace for functions in \u003ccode\u003eTypeAdapter\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12324\"\u003e#12324\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003eAny\u003c/code\u003e for context type annotation in \u003ccode\u003eTypeAdapter\u003c/code\u003e by \u003ca href=\"https://github.com/inducer\"\u003e\u003ccode\u003e@​inducer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12279\"\u003e#12279\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003eFieldInfo\u003c/code\u003e in \u003ccode\u003epydantic.fields.__all__\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12339\"\u003e#12339\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRespect \u003ccode\u003evalidation_alias\u003c/code\u003e in \u003ccode\u003e@validate_call\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12340\"\u003e#12340\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003eAny\u003c/code\u003e as context annotation in plugin API by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12341\"\u003e#12341\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse proper \u003ccode\u003estacklevel\u003c/code\u003e in warnings when possible by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12342\"\u003e#12342\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNew Contributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anvilpete\"\u003e\u003ccode\u003e@​anvilpete\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12233\"\u003e#12233\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JonathanWindell\"\u003e\u003ccode\u003e@​JonathanWindell\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12327\"\u003e#12327\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inducer\"\u003e\u003ccode\u003e@​inducer\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12279\"\u003e#12279\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Atry\"\u003e\u003ccode\u003e@​Atry\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12001\"\u003e#12001\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.11.10...v2.12.0\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.10...v2.12.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.0b1 2025-10-03\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pydantic/pydantic/blob/main/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.12.0 (2025-10-07)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.0\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eThis is the final 2.12 release. It features the work of 20 external contributors and provides useful new features, along with initial Python 3.14 support.\nSeveral minor changes (considered non-breaking changes according to our \u003ca href=\"https://docs.pydantic.dev/2.12/version-policy/#pydantic-v2\"\u003eversioning policy\u003c/a\u003e)\nare also included in this release. Make sure to look into them before upgrading.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eNote that Pydantic V1 is not compatible with Python 3.14 and greater\u003c/strong\u003e.\u003c/p\u003e\n\u003cp\u003eChanges (see the alpha and beta releases for additional changes since 2.11):\u003c/p\u003e\n\u003ch4\u003ePackaging\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate V1 copy to v1.10.24 by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12338\"\u003e#12338\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eNew Features\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eextra\u003c/code\u003e parameter to the validate functions by \u003ca href=\"https://github.com/anvilpete\"\u003e\u003ccode\u003e@​anvilpete\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12233\"\u003e#12233\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eexclude_computed_fields\u003c/code\u003e serialization option by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12334\"\u003e#12334\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epreverse_empty_path\u003c/code\u003e URL options by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12336\"\u003e#12336\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eunion_format\u003c/code\u003e parameter to JSON Schema generation by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12147\"\u003e#12147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e__qualname__\u003c/code\u003e parameter for \u003ccode\u003ecreate_model\u003c/code\u003e by \u003ca href=\"https://github.com/Atry\"\u003e\u003ccode\u003e@​Atry\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12001\"\u003e#12001\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eDo not try to infer name from lambda definitions in pipelines API by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12289\"\u003e#12289\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse proper namespace for functions in \u003ccode\u003eTypeAdapter\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12324\"\u003e#12324\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003eAny\u003c/code\u003e for context type annotation in \u003ccode\u003eTypeAdapter\u003c/code\u003e by \u003ca href=\"https://github.com/inducer\"\u003e\u003ccode\u003e@​inducer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12279\"\u003e#12279\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003eFieldInfo\u003c/code\u003e in \u003ccode\u003epydantic.fields.__all__\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12339\"\u003e#12339\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRespect \u003ccode\u003evalidation_alias\u003c/code\u003e in \u003ccode\u003e@validate_call\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12340\"\u003e#12340\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003eAny\u003c/code\u003e as context annotation in plugin API by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12341\"\u003e#12341\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse proper \u003ccode\u003estacklevel\u003c/code\u003e in warnings when possible by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12342\"\u003e#12342\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNew Contributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anvilpete\"\u003e\u003ccode\u003e@​anvilpete\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12233\"\u003e#12233\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JonathanWindell\"\u003e\u003ccode\u003e@​JonathanWindell\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12327\"\u003e#12327\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inducer\"\u003e\u003ccode\u003e@​inducer\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12279\"\u003e#12279\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Atry\"\u003e\u003ccode\u003e@​Atry\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12001\"\u003e#12001\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.12.0b1 (2025-10-03)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.0b1\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis is the first beta release of the upcoming 2.12 release.\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a7928e692e5a7841c4379d1af1fd37966941dade\"\u003e\u003ccode\u003ea7928e6\u003c/code\u003e\u003c/a\u003e Update Python version in documentation publishing CI job (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/12344\"\u003e#12344\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/0e188d02f30ce0a4bfeb6a719ce562084fb5621d\"\u003e\u003ccode\u003e0e188d0\u003c/code\u003e\u003c/a\u003e Prepare release 2.12.0 (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/12343\"\u003e#12343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/1231eeea6943baa7d5167f72cb7b6116f4347e26\"\u003e\u003ccode\u003e1231eee\u003c/code\u003e\u003c/a\u003e Use proper \u003ccode\u003estacklevel\u003c/code\u003e in warnings when possible (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/12342\"\u003e#12342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/94989e0b09b8aeecfe0551c918bdc004ce9c0cf3\"\u003e\u003ccode\u003e94989e0\u003c/code\u003e\u003c/a\u003e Use \u003ccode\u003eAny\u003c/code\u003e as context annotation in plugin API (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/12341\"\u003e#12341\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/3f59a03ea3219d9e4efd02a504c59138f273723e\"\u003e\u003ccode\u003e3f59a03\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003e__qualname__\u003c/code\u003e parameter for \u003ccode\u003ecreate_model\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/12001\"\u003e#12001\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/28c62c33218258fdb0f53f7d26c607b24dd6ed50\"\u003e\u003ccode\u003e28c62c3\u003c/code\u003e\u003c/a\u003e Rewrite std types, fields and strict mode documentation (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/12287\"\u003e#12287\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/34baf1254115f113c031ffc0d9424bb89616ad49\"\u003e\u003ccode\u003e34baf12\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eunion_format\u003c/code\u003e parameter to JSON Schema generation (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/12147\"\u003e#12147\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/495b03f92dc9aedd18af454b69f2605ac402a580\"\u003e\u003ccode\u003e495b03f\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003epreverse_empty_path\u003c/code\u003e URL options (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/12336\"\u003e#12336\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/82d4254f30895c9a7ae63368a72e2aa4efa675d5\"\u003e\u003ccode\u003e82d4254\u003c/code\u003e\u003c/a\u003e Respect \u003ccode\u003evalidation_alias\u003c/code\u003e in \u003ccode\u003e@validate_call\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/4bd84188a7f8a4a856b5e1923b27cbae28ee38b4\"\u003e\u003ccode\u003e4bd8418\u003c/code\u003e\u003c/a\u003e Expose \u003ccode\u003eFieldInfo\u003c/code\u003e in \u003ccode\u003epydantic.fields.__all__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/12339\"\u003e#12339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.11.7...v2.12.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `datamodel-code-generator` from 0.31.1 to 0.35.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/releases\"\u003edatamodel-code-generator's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.35.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support to Python 3.14 by \u003ca href=\"https://github.com/ilovelinux\"\u003e\u003ccode\u003e@​ilovelinux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2469\"\u003ekoxudaxi/datamodel-code-generator#2469\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.34.0...0.35.0\"\u003ehttps://github.com/koxudaxi/datamodel-code-generator/compare/0.34.0...0.35.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.34.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTypedDict: Add support for const fields using Literal by \u003ca href=\"https://github.com/erandagan\"\u003e\u003ccode\u003e@​erandagan\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2475\"\u003ekoxudaxi/datamodel-code-generator#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCorrect custom CodeFormatter error message by \u003ca href=\"https://github.com/MrSnapperVibes\"\u003e\u003ccode\u003e@​MrSnapperVibes\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2489\"\u003ekoxudaxi/datamodel-code-generator#2489\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edataclass: Add support for const fields using Literal[T] by \u003ca href=\"https://github.com/ysndr\"\u003e\u003ccode\u003e@​ysndr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2486\"\u003ekoxudaxi/datamodel-code-generator#2486\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: Add argument to disable the \u003cstrong\u003efuture\u003c/strong\u003e annotations import by \u003ca href=\"https://github.com/daviddmd\"\u003e\u003ccode\u003e@​daviddmd\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2498\"\u003ekoxudaxi/datamodel-code-generator#2498\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Objects with additionalProperties shouldn't be unioned with None by default by \u003ca href=\"https://github.com/erandagan\"\u003e\u003ccode\u003e@​erandagan\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2493\"\u003ekoxudaxi/datamodel-code-generator#2493\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/erandagan\"\u003e\u003ccode\u003e@​erandagan\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2475\"\u003ekoxudaxi/datamodel-code-generator#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MrSnapperVibes\"\u003e\u003ccode\u003e@​MrSnapperVibes\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2489\"\u003ekoxudaxi/datamodel-code-generator#2489\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ysndr\"\u003e\u003ccode\u003e@​ysndr\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2486\"\u003ekoxudaxi/datamodel-code-generator#2486\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/daviddmd\"\u003e\u003ccode\u003e@​daviddmd\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2498\"\u003ekoxudaxi/datamodel-code-generator#2498\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.33.0...0.34.0\"\u003ehttps://github.com/koxudaxi/datamodel-code-generator/compare/0.33.0...0.34.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.33.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUse Pytest \u003ccode\u003etmp_path\u003c/code\u003e fixture instead of \u003ccode\u003eTemporaryDirectory\u003c/code\u003e by \u003ca href=\"https://github.com/ilovelinux\"\u003e\u003ccode\u003e@​ilovelinux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2463\"\u003ekoxudaxi/datamodel-code-generator#2463\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRevert default date-time behaviour to respect OpenAPI/JSON Schema specifications by \u003ca href=\"https://github.com/mueslo\"\u003e\u003ccode\u003e@​mueslo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2442\"\u003ekoxudaxi/datamodel-code-generator#2442\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid mixing up configurations of different objects with the same name by \u003ca href=\"https://github.com/ilovelinux\"\u003e\u003ccode\u003e@​ilovelinux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2461\"\u003ekoxudaxi/datamodel-code-generator#2461\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix Pydantic \u003ccode\u003e@model_validator()\u003c/code\u003e usage  for Pydantic 2.12 by \u003ca href=\"https://github.com/ilovelinux\"\u003e\u003ccode\u003e@​ilovelinux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2472\"\u003ekoxudaxi/datamodel-code-generator#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRun the test suite daily to check breaking changes by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2479\"\u003ekoxudaxi/datamodel-code-generator#2479\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAutomatically infer CSV file type by \u003ca href=\"https://github.com/ilovelinux\"\u003e\u003ccode\u003e@​ilovelinux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2467\"\u003ekoxudaxi/datamodel-code-generator#2467\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid collapsing models when referencing a forwarding reference by \u003ca href=\"https://github.com/ilovelinux\"\u003e\u003ccode\u003e@​ilovelinux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2465\"\u003ekoxudaxi/datamodel-code-generator#2465\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mueslo\"\u003e\u003ccode\u003e@​mueslo\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2442\"\u003ekoxudaxi/datamodel-code-generator#2442\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.32.0...0.33.0\"\u003ehttps://github.com/koxudaxi/datamodel-code-generator/compare/0.32.0...0.33.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.32.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003emodify __typename field to honor \u003ccode\u003e--use-default-kwarg\u003c/code\u003e flag by \u003ca href=\"https://github.com/rpmcginty\"\u003e\u003ccode\u003e@​rpmcginty\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2420\"\u003ekoxudaxi/datamodel-code-generator#2420\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typo in variable name by \u003ca href=\"https://github.com/eltoder\"\u003e\u003ccode\u003e@​eltoder\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2439\"\u003ekoxudaxi/datamodel-code-generator#2439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSend use_non_positive_negative_number_constrained_types to the data type manager by \u003ca href=\"https://github.com/torarvid\"\u003e\u003ccode\u003e@​torarvid\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2425\"\u003ekoxudaxi/datamodel-code-generator#2425\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow parsing non-string lists for required fields by \u003ca href=\"https://github.com/HeroGamers\"\u003e\u003ccode\u003e@​HeroGamers\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2446\"\u003ekoxudaxi/datamodel-code-generator#2446\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow including path parameters in generated models by \u003ca href=\"https://github.com/MrLoh\"\u003e\u003ccode\u003e@​MrLoh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2445\"\u003ekoxudaxi/datamodel-code-generator#2445\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePassing in treat_dot_as_module bool to Enum init function by \u003ca href=\"https://github.com/LukeAtThat\"\u003e\u003ccode\u003e@​LukeAtThat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2456\"\u003ekoxudaxi/datamodel-code-generator#2456\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: correctly handle multiline comments in Unions by \u003ca href=\"https://github.com/anor4k\"\u003e\u003ccode\u003e@​anor4k\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2454\"\u003ekoxudaxi/datamodel-code-generator#2454\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReturn Parameter and RequestBody DataTypesare  by \u003ca href=\"https://github.com/MrLoh\"\u003e\u003ccode\u003e@​MrLoh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2444\"\u003ekoxudaxi/datamodel-code-generator#2444\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/9d836695163fa5e2a3afd542dc49e75651b0ed0a\"\u003e\u003ccode\u003e9d83669\u003c/code\u003e\u003c/a\u003e Add support to Python 3.14 (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2469\"\u003e#2469\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/8d91fc5faa59504df5e611d4bed5e7cb223963f0\"\u003e\u003ccode\u003e8d91fc5\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2509\"\u003e#2509\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/ab2fb6ddc04f45ad04a2726f37134a307c9532de\"\u003e\u003ccode\u003eab2fb6d\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2506\"\u003e#2506\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/092f8d06ac4131cb041dc8a272205b8082d7fe02\"\u003e\u003ccode\u003e092f8d0\u003c/code\u003e\u003c/a\u003e Fix: Objects with additionalProperties shouldn't be unioned with None by defa...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/849b75c6f4c45e1904234249b109442987c5c836\"\u003e\u003ccode\u003e849b75c\u003c/code\u003e\u003c/a\u003e feat: Add argument to disable the \u003cstrong\u003efuture\u003c/strong\u003e annotations import (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2498\"\u003e#2498\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/3ad899bf73ccaa475ec48a86d40feeec53fb71b2\"\u003e\u003ccode\u003e3ad899b\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2502\"\u003e#2502\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/d2b89bb5fe8bbe27116db15c4b7c2b4735da4f85\"\u003e\u003ccode\u003ed2b89bb\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2496\"\u003e#2496\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/9ad3d865871a1525ec13296fc47d034c0133f50b\"\u003e\u003ccode\u003e9ad3d86\u003c/code\u003e\u003c/a\u003e dataclass: Add support for const fields using Literal[T] (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2486\"\u003e#2486\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/82a929504db9d9ec587eed38130729b0079b02d1\"\u003e\u003ccode\u003e82a9295\u003c/code\u003e\u003c/a\u003e build(deps): bump pypa/gh-action-pypi-publish in /.github/workflows (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2495\"\u003e#2495\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/d97e532bb0f9a3070b0e26a7eb2577d461eafabf\"\u003e\u003ccode\u003ed97e532\u003c/code\u003e\u003c/a\u003e Correct custom CodeFormatter error message (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2489\"\u003e#2489\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.35.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `django-types` from 0.21.0 to 0.22.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sbdchd/django-types/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentry-sdk` from 2.30.0 to 2.41.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/releases\"\u003esentry-sdk's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.41.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003efeat: Add \u003ccode\u003econcurrent.futures\u003c/code\u003e patch to threading integration (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4770\"\u003e#4770\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThe SDK now makes sure to automatically preserve span relationships when using \u003ccode\u003eThreadPoolExecutor\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003echore: Remove old metrics code (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4899\"\u003e#4899\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eRemoved all code related to the deprecated experimental metrics feature (\u003ccode\u003esentry_sdk.metrics\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eref: Remove \u0026quot;experimental\u0026quot; from log function name (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4901\"\u003e#4901\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003efix(ai): Add mapping for gen_ai message roles (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4884\"\u003e#4884\u003c/a\u003e) by \u003ca href=\"https://github.com/shellmayr\"\u003e\u003ccode\u003e@​shellmayr\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003efeat(metrics): Add trace metrics behind an experiments flag (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4898\"\u003e#4898\u003c/a\u003e) by \u003ca href=\"https://github.com/k-fish\"\u003e\u003ccode\u003e@​k-fish\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.40.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd LiteLLM integration (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4864\"\u003e#4864\u003c/a\u003e) by \u003ca href=\"https://github.com/constantinius\"\u003e\u003ccode\u003e@​constantinius\u003c/code\u003e\u003c/a\u003e\nOnce you've enabled the \u003ca href=\"https://docs.sentry.io/platforms/python/integrations/litellm/\"\u003enew LiteLLM integration\u003c/a\u003e, you can use the Sentry AI Agents Monitoring, a Sentry dashboard that helps you understand what's going on with your AI requests:\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.litellm import LiteLLMIntegration\nsentry_sdk.init(\n    dsn=\u0026quot;\u0026lt;your-dsn\u0026gt;\u0026quot;,\n    # Set traces_sample_rate to 1.0 to capture 100%\n    # of transactions for tracing.\n    traces_sample_rate=1.0,\n    # Add data like inputs and responses;\n    # see https://docs.sentry.io/platforms/python/data-management/data-collected/ for more info\n    send_default_pii=True,\n    integrations=[\n        LiteLLMIntegration(),\n    ],\n)\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eLitestar: Copy request info to prevent cookies mutation (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4883\"\u003e#4883\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd tracing to \u003ccode\u003eDramatiqIntegration\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4571\"\u003e#4571\u003c/a\u003e) by \u003ca href=\"https://github.com/Igreh\"\u003e\u003ccode\u003e@​Igreh\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAlso emit spans for MCP tool calls done by the LLM (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4875\"\u003e#4875\u003c/a\u003e) by \u003ca href=\"https://github.com/constantinius\"\u003e\u003ccode\u003e@​constantinius\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eOption to not trace HTTP requests based on status codes (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4869\"\u003e#4869\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\nYou can now disable transactions for incoming requests with specific HTTP status codes. The \u003ca href=\"https://docs.sentry.io/platforms/python/configuration/options/#trace_ignore_status_codes\"\u003enew \u003ccode\u003etrace_ignore_status_codes\u003c/code\u003e option\u003c/a\u003e accepts a \u003ccode\u003eset\u003c/code\u003e of status codes as integers. If a transaction wraps a request that results in one of the provided status codes, the transaction will be unsampled.\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\ntrace_ignore_status_codes={301, 302, 303, *range(305, 400), 404},\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md\"\u003esentry-sdk's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.41.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003efeat: Add \u003ccode\u003econcurrent.futures\u003c/code\u003e patch to threading integration (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4770\"\u003e#4770\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThe SDK now makes sure to automatically preserve span relationships when using \u003ccode\u003eThreadPoolExecutor\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003echore: Remove old metrics code (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4899\"\u003e#4899\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eRemoved all code related to the deprecated experimental metrics feature (\u003ccode\u003esentry_sdk.metrics\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eref: Remove \u0026quot;experimental\u0026quot; from log function name (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4901\"\u003e#4901\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003efix(ai): Add mapping for gen_ai message roles (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4884\"\u003e#4884\u003c/a\u003e) by \u003ca href=\"https://github.com/shellmayr\"\u003e\u003ccode\u003e@​shellmayr\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003efeat(metrics): Add trace metrics behind an experiments flag (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4898\"\u003e#4898\u003c/a\u003e) by \u003ca href=\"https://github.com/k-fish\"\u003e\u003ccode\u003e@​k-fish\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.40.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd LiteLLM integration (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4864\"\u003e#4864\u003c/a\u003e) by \u003ca href=\"https://github.com/constantinius\"\u003e\u003ccode\u003e@​constantinius\u003c/code\u003e\u003c/a\u003e\nOnce you've enabled the \u003ca href=\"https://docs.sentry.io/platforms/python/integrations/litellm/\"\u003enew LiteLLM integration\u003c/a\u003e, you can use the Sentry AI Agents Monitoring, a Sentry dashboard that helps you understand what's going on with your AI requests:\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.litellm import LiteLLMIntegration\nsentry_sdk.init(\n    dsn=\u0026quot;\u0026lt;your-dsn\u0026gt;\u0026quot;,\n    # Set traces_sample_rate to 1.0 to capture 100%\n    # of transactions for tracing.\n    traces_sample_rate=1.0,\n    # Add data like inputs and responses;\n    # see https://docs.sentry.io/platforms/python/data-management/data-collected/ for more info\n    send_default_pii=True,\n    integrations=[\n        LiteLLMIntegration(),\n    ],\n)\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eLitestar: Copy request info to prevent cookies mutation (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4883\"\u003e#4883\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd tracing to \u003ccode\u003eDramatiqIntegration\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4571\"\u003e#4571\u003c/a\u003e) by \u003ca href=\"https://github.com/Igreh\"\u003e\u003ccode\u003e@​Igreh\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAlso emit spans for MCP tool calls done by the LLM (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4875\"\u003e#4875\u003c/a\u003e) by \u003ca href=\"https://github.com/constantinius\"\u003e\u003ccode\u003e@​constantinius\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eOption to not trace HTTP requests based on status codes (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4869\"\u003e#4869\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\nYou can now disable transactions for incoming requests with specific HTTP status codes. The \u003ca href=\"https://docs.sentry.io/platforms/python/configuration/options/#trace_ignore_status_codes\"\u003enew \u003ccode\u003etrace_ignore_status_codes\u003c/code\u003e option\u003c/a\u003e accepts a \u003ccode\u003eset\u003c/code\u003e of status codes as integers. If a transaction wraps a request that results in one of the provided status codes, the transaction will be unsampled.\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\ntrace_ignore_status_codes={301, 302, 303, *range(305, 400), 404},\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/685287d36da8f9423d2cfb03dc7c13bb7d6c57dd\"\u003e\u003ccode\u003e685287d\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/272af1b1380db38fbf70087e561555c558bf8308\"\u003e\u003ccode\u003e272af1b\u003c/code\u003e\u003c/a\u003e release: 2.41.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/1f8c008e9368874d6cea289283da61e236062b34\"\u003e\u003ccode\u003e1f8c008\u003c/code\u003e\u003c/a\u003e feat(metrics): Add trace metrics behind an experiments flag (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4898\"\u003e#4898\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/a04974744e54c333733648152b530d19c457205f\"\u003e\u003ccode\u003ea049747\u003c/code\u003e\u003c/a\u003e ref: Remove \u0026quot;experimental\u0026quot; from log func name (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4901\"\u003e#4901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/79973687822f0af0d7cda10e92a79aac7393a097\"\u003e\u003ccode\u003e7997368\u003c/code\u003e\u003c/a\u003e chore: Remove old metrics code (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4899\"\u003e#4899\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/55e903e2c52b3026d434e67a4b18b04878894a0f\"\u003e\u003ccode\u003e55e903e\u003c/code\u003e\u003c/a\u003e ci: Bump Python version for linting (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4897\"\u003e#4897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/f32e391a6fe22cc1d26c093e63ac4499e52b9d68\"\u003e\u003ccode\u003ef32e391\u003c/code\u003e\u003c/a\u003e feat: Add concurrent.futures patch to threading integration (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4770\"\u003e#4770\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/b1dd2dcf3b63c73ab91f25ca217a28cf3ea7f6e9\"\u003e\u003ccode\u003eb1dd2dc\u003c/code\u003e\u003c/a\u003e fix(ai): add mapping for gen_ai message roles (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4884\"\u003e#4884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/a879d8292b90becc582d5c0ee1e5edf1072dea10\"\u003e\u003ccode\u003ea879d82\u003c/code\u003e\u003c/a\u003e ci: Remove toxgen check (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4892\"\u003e#4892\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/87f8f390eea0ca435a9a6e53747bcf5f844acbd1\"\u003e\u003ccode\u003e87f8f39\u003c/code\u003e\u003c/a\u003e Merge branch 'release/2.40.0'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getsentry/sentry-python/compare/2.30.0...2.41.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `psutil` from 7.0.0 to 7.1.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/giampaolo/psutil/blob/master/HISTORY.rst\"\u003epsutil's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e7.1.0\u003c/h1\u003e\n\u003cp\u003e2025-09-17\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eEnhancements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e2581_, [Windows]: publish ARM64 wheels.  (patch by Matthieu Darbois)\u003c/li\u003e\n\u003cli\u003e2571_, [FreeBSD]: Dropped support for FreeBSD 8 and earlier. FreeBSD 8 was\nmaintained from 2009 to 2013.\u003c/li\u003e\n\u003cli\u003e2575_: introduced \u003ccode\u003edprint\u003c/code\u003e CLI tool to format .yml and .md files.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBug fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e2473_, [macOS]: Fix build issue on macOS 11 and lower.\u003c/li\u003e\n\u003cli\u003e2494_, [Windows]: All APIs dealing with paths, such as\n\u003ccode\u003eProcess.memory_maps()\u003c/code\u003e\u003cem\u003e, \u003ccode\u003eProcess.exe()\u003c/code\u003e\u003c/em\u003e and \u003ccode\u003eProcess.open_files()\u003c/code\u003e_ does\nnot properly handle UNC paths. Paths such as \u003ccode\u003e\\\\??\\\\C:\\\\Windows\\\\Temp\u003c/code\u003e and\n\u003ccode\u003e'\\\\Device\\\\HarddiskVolume1\\\\Windows\\\\Temp'\u003c/code\u003e are now converted to\n\u003ccode\u003eC:\\\\Windows\\\\Temp\u003c/code\u003e.  (patch by Ben Peddell)\u003c/li\u003e\n\u003cli\u003e2506_, [Windows]: Windows service APIs had issues with unicode services using\nspecial characters in their name.\u003c/li\u003e\n\u003cli\u003e2514_, [Linux]: \u003ccode\u003eProcess.cwd()\u003c/code\u003e_ sometimes fail with \u003ccode\u003eFileNotFoundError\u003c/code\u003e due\nto a race condition.\u003c/li\u003e\n\u003cli\u003e2526_, [Linux]: \u003ccode\u003eProcess.create_time()\u003c/code\u003e\u003cem\u003e, which is used to univocally\nidentify a process over time, is subject to system clock updates, and as such\ncan lead to \u003ccode\u003eProcess.is_running()\u003c/code\u003e\u003c/em\u003e returning a wrong result. A monotonic\ncreation time is now used instead.  (patch by Jonathan Kohler)\u003c/li\u003e\n\u003cli\u003e2528_, [Linux]: \u003ccode\u003eProcess.children()\u003c/code\u003e_ may raise \u003ccode\u003ePermissionError\u003c/code\u003e. It will\nnow raise \u003ccode\u003eAccessDenied\u003c/code\u003e_ instead.\u003c/li\u003e\n\u003cli\u003e2540_, [macOS]: \u003ccode\u003eboot_time()\u003c/code\u003e_ is off by 45 seconds (C precision issue).\u003c/li\u003e\n\u003cli\u003e2541_, 2570_, 2578_ [Linux], [macOS], [NetBSD]: \u003ccode\u003eProcess.create_time()\u003c/code\u003e_ does\nnot reflect system clock updates.\u003c/li\u003e\n\u003cli\u003e2542_: if system clock is updated \u003ccode\u003eProcess.children()\u003c/code\u003e_ and\n\u003ccode\u003eProcess.parent()\u003c/code\u003e_ may not be able to return the right information.\u003c/li\u003e\n\u003cli\u003e2545_: [Illumos]: Fix handling of MIB2_UDP_ENTRY in \u003ccode\u003enet_connections()\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003e2552_, [Windows]: \u003ccode\u003eboot_time()\u003c/code\u003e_ didn't take into account the time spent\nduring suspend / hibernation.\u003c/li\u003e\n\u003cli\u003e2560_, [Linux]: \u003ccode\u003eProcess.memory_maps()\u003c/code\u003e_ may crash with \u003ccode\u003eIndexError\u003c/code\u003e on\nRISCV64 due to a malformed \u003ccode\u003e/proc/{PID}/smaps\u003c/code\u003e file.  (patch by Julien\nStephan)\u003c/li\u003e\n\u003cli\u003e2586_, [macOS], [CRITICAL]: fixed different places in C code which can\ntrigger a segfault.\u003c/li\u003e\n\u003cli\u003e2604_, [Linux]: \u003ccode\u003evirtual_memory()\u003c/code\u003e_ \u0026quot;used\u0026quot; memory does not match recent\nversions of \u003ccode\u003efree\u003c/code\u003e CLI utility.  (patch by Isaac K. Ko)\u003c/li\u003e\n\u003cli\u003e2605_, [Linux]: \u003ccode\u003epsutil.sensors_battery()\u003c/code\u003e reports a negative amount for\nseconds left.\u003c/li\u003e\n\u003cli\u003e2607_, [Windows]: \u003ccode\u003eWindowsService.description()\u003c/code\u003e method may fail with\n\u003ccode\u003eERROR_NOT_FOUND\u003c/code\u003e. Now it returns an empty string instead.\u003c/li\u003e\n\u003cli\u003e2610:, [macOS], [CRITICAL]: fix \u003ccode\u003ecpu_freq()\u003c/code\u003e_ segfault on ARM architectures.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/0d18187e79b349e577fadabd3589f8fdbf99bf5a\"\u003e\u003ccode\u003e0d18187\u003c/code\u003e\u003c/a\u003e Revert HISTORY notes about \u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2629\"\u003e#2629\u003c/a\u003e. We still do publish 3.6 and 3.7 wheels.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/229e2de232860fe22e2c2884c20b8979c643d5c6\"\u003e\u003ccode\u003e229e2de\u003c/code\u003e\u003c/a\u003e Pre-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/fb75b28226ec8e6b9e5b9eefa05a62de579cc114\"\u003e\u003ccode\u003efb75b28\u003c/code\u003e\u003c/a\u003e Chore: skip CI tests except on Python 3.8 and 3.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/3a4c01638bc61c77f43a05aea5bc6e1ddc81c6c4\"\u003e\u003ccode\u003e3a4c016\u003c/code\u003e\u003c/a\u003e Stop publishing wheels for Python 3.6 and 3.7 (\u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2629\"\u003e#2629\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/83e4f7fdd76051dd8e0eeed99e2bf5fc881a2960\"\u003e\u003ccode\u003e83e4f7f\u003c/code\u003e\u003c/a\u003e OSX: disable failing test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/df0d4e2637917377bd5971f1745e881b75f2c6e2\"\u003e\u003ccode\u003edf0d4e2\u003c/code\u003e\u003c/a\u003e Call GetExtended[Tcp|Udp]Table twice under free-threaded build (round 2) (\u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2627\"\u003e#2627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/dcbfb81e863fa2b8688ccd8da27b09b539404688\"\u003e\u003ccode\u003edcbfb81\u003c/code\u003e\u003c/a\u003e [Windows] fix unicode issues around service APIs (\u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2626\"\u003e#2626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/ef72dcd076f1cec94ba50ec30b5dbebb272845d0\"\u003e\u003ccode\u003eef72dcd\u003c/code\u003e\u003c/a\u003e revert \u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2590\"\u003e#2590\u003c/a\u003e (Call GetExtended[Tcp|Udp]Table twice under free-threaded build)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/8773698006d387db90b3982d78fd4ff6b2ebe71c\"\u003e\u003ccode\u003e8773698\u003c/code\u003e\u003c/a\u003e small refact around UTXENT_MUTEX_LOCK\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/13b711fc3ffa384d481e03881e46ae48009c4eeb\"\u003e\u003ccode\u003e13b711f\u003c/code\u003e\u003c/a\u003e Lock around uses of getutent/setutent/endutent (\u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2615\"\u003e#2615\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/giampaolo/psutil/compare/release-7.0.0...release-7.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `django-rq` from 3.0.1 to 3.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rq/django-rq/releases\"\u003edjango-rq's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e/metrics\u003c/code\u003e endpoint to expose RQ metrics in Prometheus format. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded token based authentication for the \u003ccode\u003e/metrics\u003c/code\u003e and \u003ccode\u003e/stats.json\u003c/code\u003e endpoints. Thanks \u003ca href=\"https://github.com/RasmusThing\"\u003e\u003ccode\u003e@​RasmusThing\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eMigrated Django-RQ to use Python's modern packaging standard. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eFixed an issue with setting \u003ccode\u003eresult_ttl\u003c/code\u003e via job decorators. Thanks \u003ca href=\"https://github.com/Sir-heed\"\u003e\u003ccode\u003e@​Sir-heed\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVarious admin page improvements. Thanks \u003ca href=\"https://github.com/selwin\"\u003e\u003ccode\u003e@​selwin\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/DhavalGojiya\"\u003e\u003ccode\u003e@​DhavalGojiya\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rq/django-rq/blob/master/CHANGELOG.md\"\u003edjango-rq's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003eVersion 3.1 (2025-08-02)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e/metrics\u003c/code\u003e endpoint to expose RQ metrics in Prometheus format. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded token based authentication for the \u003ccode\u003e/metrics\u003c/code\u003e and \u003ccode\u003e/stats.json\u003c/code\u003e endpoints. Thanks \u003ca href=\"https://github.com/RasmusThing\"\u003e\u003ccode\u003e@​RasmusThing\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eMigrated Django-RQ to use Python's modern packaging standard. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eFixed an issue with setting \u003ccode\u003eresult_ttl\u003c/code\u003e via job decorators. Thanks \u003ca href=\"https://github.com/Sir-heed\"\u003e\u003ccode\u003e@​Sir-heed\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVarious admin page improvements. Thanks \u003ca href=\"https://github.com/selwin\"\u003e\u003ccode\u003e@​selwin\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/DhavalGojiya\"\u003e\u003ccode\u003e@​DhavalGojiya\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/571082b7849942448ba7f34c4a0a3b88fbebaade\"\u003e\u003ccode\u003e571082b\u003c/code\u003e\u003c/a\u003e Bump version to 3.1 in pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/edd22bd2f5042feecaee8a4034784a930856137a\"\u003e\u003ccode\u003eedd22bd\u003c/code\u003e\u003c/a\u003e Bump version to 3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/f9fadb81699347bf3369053e3cd619226ca2c75d\"\u003e\u003ccode\u003ef9fadb8\u003c/code\u003e\u003c/a\u003e Change url token to header auth and add to /metrics/ aswell (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/718\"\u003e#718\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/fc9a6dee60c05cdd34530e9ce002cda982c65f71\"\u003e\u003ccode\u003efc9a6de\u003c/code\u003e\u003c/a\u003e Update packaging to use modern packaging with a pyproject.toml (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/715\"\u003e#715\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/b1e6e87d0f6da4dcc29ec5745fb4a3665bde10ad\"\u003e\u003ccode\u003eb1e6e87\u003c/code\u003e\u003c/a\u003e Update README.rst\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/429933202673712ba55d6ad49672b73bece04dfc\"\u003e\u003ccode\u003e4299332\u003c/code\u003e\u003c/a\u003e fix job decorator default ttl (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/714\"\u003e#714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/38143405218e0387ca2f4fc2cd48a0d0e7382370\"\u003e\u003ccode\u003e3814340\u003c/code\u003e\u003c/a\u003e Added sorting for deferred_jobs and scheduled_jobs views (\u003ca href=\"ht...\n\n_Description has been truncated_","html_url":"https://github.com/Ed-BW/consult-demo/pull/22","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ed-BW%2Fconsult-demo/issues/22","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/22/packages"},{"uuid":"3508912016","node_id":"PR_kwDOOQGkKM6tZwrh","number":58,"state":"closed","title":"😨 Bump the runtime-minors group across 1 directory with 4 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":12,"pull_request":true,"closed_at":"2025-11-10T07:43:45.000Z","author_association":null,"state_reason":null,"created_at":"2025-10-13T08:01:20.000Z","updated_at":"2025-11-10T07:43:47.000Z","time_to_close":2418145,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"😨 Bump","group_name":"runtime-minors","update_count":4,"packages":[{"name":"pytest","old_version":"8.3.4","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"},{"name":"pytest-httpdbg","old_version":"0.9.0","new_version":"0.9.1","repository_url":"https://github.com/cle-b/pytest-httpdbg"}],"path":null,"ecosystem":"pip"},"body":"Bumps the runtime-minors group with 4 updates in the / directory: [pytest](https://github.com/pytest-dev/pytest), [pytest-mock](https://github.com/pytest-dev/pytest-mock), [pytest-random-order](https://github.com/jbasko/pytest-random-order) and [pytest-httpdbg](https://github.com/cle-b/pytest-httpdbg).\n\nUpdates `pytest` from 8.3.4 to 8.4.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.4.2\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.2 (2025-09-03)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13478\"\u003e#13478\u003c/a\u003e: Fixed a crash when using \u003ccode\u003econsole_output_style\u003c/code\u003e{.interpreted-text role=\u0026quot;confval\u0026quot;} with \u003ccode\u003etimes\u003c/code\u003e and a module is skipped.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13530\"\u003e#13530\u003c/a\u003e: Fixed a crash when using \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and \u003ccode\u003edecimal.Decimal\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} instances with the \u003ccode\u003edecimal.FloatOperation\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} trap set.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13549\"\u003e#13549\u003c/a\u003e: No longer evaluate type annotations in Python \u003ccode\u003e3.14\u003c/code\u003e when inspecting function signatures.\u003c/p\u003e\n\u003cp\u003eThis prevents crashes during module collection when modules do not explicitly use \u003ccode\u003efrom __future__ import annotations\u003c/code\u003e and import types for annotations within a \u003ccode\u003eif TYPE_CHECKING:\u003c/code\u003e block.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13559\"\u003e#13559\u003c/a\u003e: Added missing [int]{.title-ref} and [float]{.title-ref} variants to the [Literal]{.title-ref} type annotation of the [type]{.title-ref} parameter in \u003ccode\u003epytest.Parser.addini\u003c/code\u003e{.interpreted-text role=\u0026quot;meth\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13563\"\u003e#13563\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now only imports \u003ccode\u003enumpy\u003c/code\u003e if NumPy is already in \u003ccode\u003esys.modules\u003c/code\u003e. This fixes unconditional import behavior introduced in [8.4.0]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13577\"\u003e#13577\u003c/a\u003e: Clarify that \u003ccode\u003epytest_generate_tests\u003c/code\u003e is discovered in test modules/classes; other hooks must be in \u003ccode\u003econftest.py\u003c/code\u003e or plugins.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributor-facing changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13480\"\u003e#13480\u003c/a\u003e: Self-testing: fixed a few test failures when run with \u003ccode\u003e-Wdefault\u003c/code\u003e or a similar override.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13547\"\u003e#13547\u003c/a\u003e: Self-testing: corrected expected message for \u003ccode\u003etest_doctest_unexpected_exception\u003c/code\u003e in Python \u003ccode\u003e3.14\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13684\"\u003e#13684\u003c/a\u003e: Make pytest's own testsuite insensitive to the presence of the \u003ccode\u003eCI\u003c/code\u003e environment variable -- by \u003ccode\u003eogrisel\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.1\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.1 (2025-06-17)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13461\"\u003e#13461\u003c/a\u003e: Corrected \u003ccode\u003e_pytest.terminal.TerminalReporter.isatty\u003c/code\u003e to support\nbeing called as a method. Before it was just a boolean which could\nbreak correct code when using \u003ccode\u003e-o log_cli=true\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13477\"\u003e#13477\u003c/a\u003e: Reintroduced \u003ccode\u003epytest.PytestReturnNotNoneWarning\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which was removed by accident in pytest [8.4]{.title-ref}.\u003c/p\u003e\n\u003cp\u003eThis warning is raised when a test functions returns a value other than \u003ccode\u003eNone\u003c/code\u003e, which is often a mistake made by beginners.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ereturn-not-none\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13497\"\u003e#13497\u003c/a\u003e: Fixed compatibility with \u003ccode\u003eTwisted 25+\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e: Fixed outdated warning about \u003ccode\u003efaulthandler\u003c/code\u003e not working on Windows.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.0\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.0 (2025-06-02)\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/bfae4224fd554d3d7f2c277a4cc092b6ec6af3ae\"\u003e\u003ccode\u003ebfae422\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/89905381a163be30ae87d62e5f750e902d750c5f\"\u003e\u003ccode\u003e8990538\u003c/code\u003e\u003c/a\u003e Fix passenv CI in tox ini and make tests insensitive to the presence of the C...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/ca676bfe005aebcb12f4146d1b0f1d2772e2cd5d\"\u003e\u003ccode\u003eca676bf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13687\"\u003e#13687\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/e63f6e51c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/975a60a63ce385a44655596e254c1899feaa53e4\"\u003e\u003ccode\u003e975a60a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13686\"\u003e#13686\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/12bde8af6...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/7723ce84b87ab08f86ddafcb342acc28ba5ec99d\"\u003e\u003ccode\u003e7723ce8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13683\"\u003e#13683\u003c/a\u003e from even-even/fix_Exeption_to_Exception_in_errorMe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b7f05680d1301e0969b30bcb3c4b27433c9ee2b7\"\u003e\u003ccode\u003eb7f0568\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13685\"\u003e#13685\u003c/a\u003e from CoretexShadow/fix/docs-pytest-generate-tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2c94c4a6948ba53440818389298157fa5d5f94cd\"\u003e\u003ccode\u003e2c94c4a\u003c/code\u003e\u003c/a\u003e add missing colon (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13640\"\u003e#13640\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13641\"\u003e#13641\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c3d7684bc01c8c48d05145a30c5211ca8656c68c\"\u003e\u003ccode\u003ec3d7684\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13606\"\u003e#13606\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/5f9938563...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/dc6e3be2ddc75a149b6d102d9b7c82ee47a00cfa\"\u003e\u003ccode\u003edc6e3be\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13605\"\u003e#13605\u003c/a\u003e from The-Compiler/training-update-2025-07\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/f87289c36c8dbe7740e3020f5546b6f8b0861ff0\"\u003e\u003ccode\u003ef87289c\u003c/code\u003e\u003c/a\u003e Fix crash with \u003ccode\u003etimes\u003c/code\u003e output style and skipped module (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13573\"\u003e#13573\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13579\"\u003e#13579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/8.3.4...8.4.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-mock` from 3.14.0 to 3.15.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-mock/releases\"\u003epytest-mock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.15.1\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2025-09-16\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/529\"\u003e#529\u003c/a\u003e: Fixed \u003ccode\u003eitertools._tee object has no attribute error\u003c/code\u003e -- now \u003ccode\u003eduplicate_iterators=True\u003c/code\u003e must be passed to \u003ccode\u003emocker.spy\u003c/code\u003e to duplicate iterators.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.15.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2025-09-04\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 (EOL) is no longer supported.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/524\"\u003e#524\u003c/a\u003e: Added \u003ccode\u003espy_return_iter\u003c/code\u003e to \u003ccode\u003emocker.spy\u003c/code\u003e, which contains a duplicate of the return value of the spied method if it is an \u003ccode\u003eIterator\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.14.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/503\"\u003e#503\u003c/a\u003e: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst\"\u003epytest-mock's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.15.1\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2025-09-16\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#529](https://github.com/pytest-dev/pytest-mock/issues/529) \u0026lt;https://github.com/pytest-dev/pytest-mock/issues/529\u0026gt;\u003c/code\u003e_: Fixed \u003ccode\u003eitertools._tee object has no attribute error\u003c/code\u003e -- now \u003ccode\u003eduplicate_iterators=True\u003c/code\u003e must be passed to \u003ccode\u003emocker.spy\u003c/code\u003e to duplicate iterators.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.15.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2025-09-04\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 (EOL) is no longer supported.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[#524](https://github.com/pytest-dev/pytest-mock/issues/524) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/524\u0026gt;\u003c/code\u003e_: Added \u003ccode\u003espy_return_iter\u003c/code\u003e to \u003ccode\u003emocker.spy\u003c/code\u003e, which contains a duplicate of the return value of the spied method if it is an \u003ccode\u003eIterator\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.14.1 (2025-05-26)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#503](https://github.com/pytest-dev/pytest-mock/issues/503) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/503\u0026gt;\u003c/code\u003e_: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/e1b5c62a38c5a05cae614aef3847f240ba50d269\"\u003e\u003ccode\u003ee1b5c62\u003c/code\u003e\u003c/a\u003e Release 3.15.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/184eb190d6be417f5f33727bcbc9704909479498\"\u003e\u003ccode\u003e184eb19\u003c/code\u003e\u003c/a\u003e Set \u003ccode\u003espy_return_iter\u003c/code\u003e only when explicitly requested (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/537\"\u003e#537\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/4fa0088a0aa85eefb1313bd97adf43889bf1f647\"\u003e\u003ccode\u003e4fa0088\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/536\"\u003e#536\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/f5aff33ce71ed4620acc43dc41cb3b198bcf4cb0\"\u003e\u003ccode\u003ef5aff33\u003c/code\u003e\u003c/a\u003e Fix test failure with pytest 8+ and verbose mode (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/535\"\u003e#535\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/adc41873c9d6aa69b87e3f108c93a29c847869aa\"\u003e\u003ccode\u003eadc4187\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 5 to 6 in the github-actions group (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/533\"\u003e#533\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/95ad5700609aae73c6f767b8cc2ccfb2483e0f5c\"\u003e\u003ccode\u003e95ad570\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/532\"\u003e#532\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/e696bf02c199b1f7d0c48adb450f40e5a75b699a\"\u003e\u003ccode\u003ee696bf0\u003c/code\u003e\u003c/a\u003e Fix standalone mock support (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/531\"\u003e#531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/5b29b03ce9581cfcd867dd6c04a970fb2c861291\"\u003e\u003ccode\u003e5b29b03\u003c/code\u003e\u003c/a\u003e Fix gen-release-notes script\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/7d22ef4e560351832e60687d8bd15ebe2785ff3b\"\u003e\u003ccode\u003e7d22ef4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/528\"\u003e#528\u003c/a\u003e from pytest-dev/release-3.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/90b29f89e2086c139a7b4fea89202faa192ee5a9\"\u003e\u003ccode\u003e90b29f8\u003c/code\u003e\u003c/a\u003e Update CHANGELOG for 3.15.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-mock/compare/v3.14.0...v3.15.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-httpdbg` from 0.9.0 to 0.9.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/cle-b/pytest-httpdbg/releases\"\u003epytest-httpdbg's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.9.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eimprove allure attachment type detection by \u003ca href=\"https://github.com/cle-b\"\u003e\u003ccode\u003e@​cle-b\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/cle-b/pytest-httpdbg/pull/18\"\u003ecle-b/pytest-httpdbg#18\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/cle-b/pytest-httpdbg/compare/v0.9.0...v0.9.1\"\u003ehttps://github.com/cle-b/pytest-httpdbg/compare/v0.9.0...v0.9.1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cle-b/pytest-httpdbg/commit/26c4368fbffc565f24f80831624e2b06e58f70d6\"\u003e\u003ccode\u003e26c4368\u003c/code\u003e\u003c/a\u003e improve allure attachment type detection (\u003ca href=\"https://redirect.github.com/cle-b/pytest-httpdbg/issues/18\"\u003e#18\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/cle-b/pytest-httpdbg/compare/v0.9.0...v0.9.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/RecordedFuture-ProfessionalServices/psengine/pull/58","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/RecordedFuture-ProfessionalServices%2Fpsengine/issues/58","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/58/packages"},{"uuid":"3416845770","node_id":"PR_kwDOOQGkKM6olA6y","number":52,"state":"open","title":"😨 Bump the runtime-minors group across 1 directory with 3 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":11,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-09-15T08:22:33.000Z","updated_at":"2025-09-15T10:00:36.478Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"😨 Bump","group_name":"runtime-minors","update_count":3,"packages":[{"name":"pytest","old_version":"8.3.4","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.0","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"}],"path":null,"ecosystem":"pip"},"body":"Bumps the runtime-minors group with 3 updates in the / directory: [pytest](https://github.com/pytest-dev/pytest), [pytest-mock](https://github.com/pytest-dev/pytest-mock) and [pytest-random-order](https://github.com/jbasko/pytest-random-order).\n\nUpdates `pytest` from 8.3.4 to 8.4.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.4.2\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.2 (2025-09-03)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13478\"\u003e#13478\u003c/a\u003e: Fixed a crash when using \u003ccode\u003econsole_output_style\u003c/code\u003e{.interpreted-text role=\u0026quot;confval\u0026quot;} with \u003ccode\u003etimes\u003c/code\u003e and a module is skipped.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13530\"\u003e#13530\u003c/a\u003e: Fixed a crash when using \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and \u003ccode\u003edecimal.Decimal\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} instances with the \u003ccode\u003edecimal.FloatOperation\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} trap set.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13549\"\u003e#13549\u003c/a\u003e: No longer evaluate type annotations in Python \u003ccode\u003e3.14\u003c/code\u003e when inspecting function signatures.\u003c/p\u003e\n\u003cp\u003eThis prevents crashes during module collection when modules do not explicitly use \u003ccode\u003efrom __future__ import annotations\u003c/code\u003e and import types for annotations within a \u003ccode\u003eif TYPE_CHECKING:\u003c/code\u003e block.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13559\"\u003e#13559\u003c/a\u003e: Added missing [int]{.title-ref} and [float]{.title-ref} variants to the [Literal]{.title-ref} type annotation of the [type]{.title-ref} parameter in \u003ccode\u003epytest.Parser.addini\u003c/code\u003e{.interpreted-text role=\u0026quot;meth\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13563\"\u003e#13563\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now only imports \u003ccode\u003enumpy\u003c/code\u003e if NumPy is already in \u003ccode\u003esys.modules\u003c/code\u003e. This fixes unconditional import behavior introduced in [8.4.0]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13577\"\u003e#13577\u003c/a\u003e: Clarify that \u003ccode\u003epytest_generate_tests\u003c/code\u003e is discovered in test modules/classes; other hooks must be in \u003ccode\u003econftest.py\u003c/code\u003e or plugins.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributor-facing changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13480\"\u003e#13480\u003c/a\u003e: Self-testing: fixed a few test failures when run with \u003ccode\u003e-Wdefault\u003c/code\u003e or a similar override.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13547\"\u003e#13547\u003c/a\u003e: Self-testing: corrected expected message for \u003ccode\u003etest_doctest_unexpected_exception\u003c/code\u003e in Python \u003ccode\u003e3.14\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13684\"\u003e#13684\u003c/a\u003e: Make pytest's own testsuite insensitive to the presence of the \u003ccode\u003eCI\u003c/code\u003e environment variable -- by \u003ccode\u003eogrisel\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.1\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.1 (2025-06-17)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13461\"\u003e#13461\u003c/a\u003e: Corrected \u003ccode\u003e_pytest.terminal.TerminalReporter.isatty\u003c/code\u003e to support\nbeing called as a method. Before it was just a boolean which could\nbreak correct code when using \u003ccode\u003e-o log_cli=true\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13477\"\u003e#13477\u003c/a\u003e: Reintroduced \u003ccode\u003epytest.PytestReturnNotNoneWarning\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which was removed by accident in pytest [8.4]{.title-ref}.\u003c/p\u003e\n\u003cp\u003eThis warning is raised when a test functions returns a value other than \u003ccode\u003eNone\u003c/code\u003e, which is often a mistake made by beginners.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ereturn-not-none\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13497\"\u003e#13497\u003c/a\u003e: Fixed compatibility with \u003ccode\u003eTwisted 25+\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e: Fixed outdated warning about \u003ccode\u003efaulthandler\u003c/code\u003e not working on Windows.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.0\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.0 (2025-06-02)\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/bfae4224fd554d3d7f2c277a4cc092b6ec6af3ae\"\u003e\u003ccode\u003ebfae422\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/89905381a163be30ae87d62e5f750e902d750c5f\"\u003e\u003ccode\u003e8990538\u003c/code\u003e\u003c/a\u003e Fix passenv CI in tox ini and make tests insensitive to the presence of the C...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/ca676bfe005aebcb12f4146d1b0f1d2772e2cd5d\"\u003e\u003ccode\u003eca676bf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13687\"\u003e#13687\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/e63f6e51c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/975a60a63ce385a44655596e254c1899feaa53e4\"\u003e\u003ccode\u003e975a60a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13686\"\u003e#13686\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/12bde8af6...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/7723ce84b87ab08f86ddafcb342acc28ba5ec99d\"\u003e\u003ccode\u003e7723ce8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13683\"\u003e#13683\u003c/a\u003e from even-even/fix_Exeption_to_Exception_in_errorMe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b7f05680d1301e0969b30bcb3c4b27433c9ee2b7\"\u003e\u003ccode\u003eb7f0568\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13685\"\u003e#13685\u003c/a\u003e from CoretexShadow/fix/docs-pytest-generate-tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2c94c4a6948ba53440818389298157fa5d5f94cd\"\u003e\u003ccode\u003e2c94c4a\u003c/code\u003e\u003c/a\u003e add missing colon (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13640\"\u003e#13640\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13641\"\u003e#13641\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c3d7684bc01c8c48d05145a30c5211ca8656c68c\"\u003e\u003ccode\u003ec3d7684\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13606\"\u003e#13606\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/5f9938563...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/dc6e3be2ddc75a149b6d102d9b7c82ee47a00cfa\"\u003e\u003ccode\u003edc6e3be\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13605\"\u003e#13605\u003c/a\u003e from The-Compiler/training-update-2025-07\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/f87289c36c8dbe7740e3020f5546b6f8b0861ff0\"\u003e\u003ccode\u003ef87289c\u003c/code\u003e\u003c/a\u003e Fix crash with \u003ccode\u003etimes\u003c/code\u003e output style and skipped module (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13573\"\u003e#13573\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13579\"\u003e#13579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/8.3.4...8.4.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-mock` from 3.14.0 to 3.15.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-mock/releases\"\u003epytest-mock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.15.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2025-09-04\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 (EOL) is no longer supported.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/524\"\u003e#524\u003c/a\u003e: Added \u003ccode\u003espy_return_iter\u003c/code\u003e to \u003ccode\u003emocker.spy\u003c/code\u003e, which contains a duplicate of the return value of the spied method if it is an \u003ccode\u003eIterator\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.14.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/503\"\u003e#503\u003c/a\u003e: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst\"\u003epytest-mock's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.15.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2025-09-04\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 (EOL) is no longer supported.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[#524](https://github.com/pytest-dev/pytest-mock/issues/524) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/524\u0026gt;\u003c/code\u003e_: Added \u003ccode\u003espy_return_iter\u003c/code\u003e to \u003ccode\u003emocker.spy\u003c/code\u003e, which contains a duplicate of the return value of the spied method if it is an \u003ccode\u003eIterator\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.14.1 (2025-05-26)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#503](https://github.com/pytest-dev/pytest-mock/issues/503) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/503\u0026gt;\u003c/code\u003e_: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/90b29f89e2086c139a7b4fea89202faa192ee5a9\"\u003e\u003ccode\u003e90b29f8\u003c/code\u003e\u003c/a\u003e Update CHANGELOG for 3.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/53a6190b9c793f0b1801cd8b08afd58d3436bad6\"\u003e\u003ccode\u003e53a6190\u003c/code\u003e\u003c/a\u003e Drop support for Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/5aa9e9cd7e0d25403c8d9d478bc3480bb5ca2456\"\u003e\u003ccode\u003e5aa9e9c\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003espy_return_iter\u003c/code\u003e attribute to \u003ccode\u003espy\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/524\"\u003e#524\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/dc6df75a91aad4980af1a711e42a2ade19960f36\"\u003e\u003ccode\u003edc6df75\u003c/code\u003e\u003c/a\u003e Bump pypa/gh-action-pypi-publish in /.github/workflows (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/526\"\u003e#526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/b977d83d051390c5efd91b02884236ea5eba8ae4\"\u003e\u003ccode\u003eb977d83\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/525\"\u003e#525\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/bd66c9cb8b1ffc59b4d9e42a1b413bafa3a16eac\"\u003e\u003ccode\u003ebd66c9c\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/523\"\u003e#523\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/f9e47b6e1685169972488391d8c2ba1d10e0901d\"\u003e\u003ccode\u003ef9e47b6\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 2 updates (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/521\"\u003e#521\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/3aec7677f47f6c4b89dbdee9e4a32a8fe047943f\"\u003e\u003ccode\u003e3aec767\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/522\"\u003e#522\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/e09e5be3fcaa54102006b7c01add91ac33ebf9ed\"\u003e\u003ccode\u003ee09e5be\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/520\"\u003e#520\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/ba83a70ff9c15c0b8534e7f1a7c6ba5321aea046\"\u003e\u003ccode\u003eba83a70\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/518\"\u003e#518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-mock/compare/v3.14.0...v3.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/RecordedFuture-ProfessionalServices/psengine/pull/52","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/RecordedFuture-ProfessionalServices%2Fpsengine/issues/52","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/52/packages"},{"uuid":"3395439653","node_id":"PR_kwDOO_gais6ncyfV","number":18,"state":"open","title":"Upgrade: bump the pip-updates group across 1 directory with 17 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-08T19:34:50.000Z","updated_at":"2025-09-22T19:22:56.221Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Upgrade: bump","group_name":"pip-updates","update_count":17,"packages":[{"name":"django","old_version":"5.2.3","new_version":"5.2.6","repository_url":"https://github.com/django/django"},{"name":"psycopg","old_version":"3.2.9","new_version":"3.2.10","repository_url":"https://github.com/psycopg/psycopg"},{"name":"govuk-frontend-jinja","old_version":"3.6.0","new_version":"3.7.0","repository_url":"https://github.com/LandRegistry/govuk-frontend-jinja"},{"name":"boto3","old_version":"1.38.39","new_version":"1.40.25","repository_url":"https://github.com/boto/boto3"},{"name":"datamodel-code-generator","old_version":"0.31.1","new_version":"0.33.0","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"django-types","old_version":"0.21.0","new_version":"0.22.0","repository_url":"https://github.com/sbdchd/django-types"},{"name":"sentry-sdk","old_version":"2.30.0","new_version":"2.37.0","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"},{"name":"django-rq","old_version":"3.0.1","new_version":"3.1","repository_url":"https://github.com/rq/django-rq"},{"name":"django-simple-history","old_version":"3.8.0","new_version":"3.10.1","repository_url":"https://github.com/django-commons/django-simple-history"},{"name":"pandas","old_version":"2.3.0","new_version":"2.3.2","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"moto","old_version":"5.1.6","new_version":"5.1.12","repository_url":"https://github.com/getmoto/moto"},{"name":"freezegun","old_version":"1.5.2","new_version":"1.5.5","repository_url":"https://github.com/spulec/freezegun"},{"name":"pytest-lazy-fixtures","old_version":"1.1.4","new_version":"1.3.4","repository_url":"https://github.com/dev-petrov/pytest-lazy-fixtures"},{"name":"ruff","old_version":"0.12.0","new_version":"0.12.12","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"mypy","old_version":"1.16.1","new_version":"1.17.1","repository_url":"https://github.com/python/mypy"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-updates group with 17 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [django](https://github.com/django/django) | `5.2.3` | `5.2.6` |\n| [psycopg](https://github.com/psycopg/psycopg) | `3.2.9` | `3.2.10` |\n| [govuk-frontend-jinja](https://github.com/LandRegistry/govuk-frontend-jinja) | `3.6.0` | `3.7.0` |\n| [boto3](https://github.com/boto/boto3) | `1.38.39` | `1.40.25` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.31.1` | `0.33.0` |\n| [django-types](https://github.com/sbdchd/django-types) | `0.21.0` | `0.22.0` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.30.0` | `2.37.0` |\n| [pytest-random-order](https://github.com/jbasko/pytest-random-order) | `1.1.1` | `1.2.0` |\n| [django-rq](https://github.com/rq/django-rq) | `3.0.1` | `3.1` |\n| [django-simple-history](https://github.com/django-commons/django-simple-history) | `3.8.0` | `3.10.1` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.3.0` | `2.3.2` |\n| [moto](https://github.com/getmoto/moto) | `5.1.6` | `5.1.12` |\n| [freezegun](https://github.com/spulec/freezegun) | `1.5.2` | `1.5.5` |\n| [pytest-lazy-fixtures](https://github.com/dev-petrov/pytest-lazy-fixtures) | `1.1.4` | `1.3.4` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.12.0` | `0.12.12` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.3.0` |\n| [mypy](https://github.com/python/mypy) | `1.16.1` | `1.17.1` |\n\n\nUpdates `django` from 5.2.3 to 5.2.6\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/75c4403f07b8ad25893f7832dbe8fc6814b53b2d\"\u003e\u003ccode\u003e75c4403\u003c/code\u003e\u003c/a\u003e [5.2.x] Bumped version for 5.2.6 release.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/4c044fcc866ec226f612c475950b690b0139d243\"\u003e\u003ccode\u003e4c044fc\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed CVE-2025-57833 -- Protected FilteredRelation against SQL inject...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/e87ca3d6fa6fb12e06f9c755ecd3ebc3a528e02b\"\u003e\u003ccode\u003ee87ca3d\u003c/code\u003e\u003c/a\u003e [5.2.x] Made cosmetic edits to 5.2.6 release notes.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/ebec2c93230216f128184f5563215ad7760a7fc5\"\u003e\u003ccode\u003eebec2c9\u003c/code\u003e\u003c/a\u003e [5.2.x] Removed unused import in docs/ref/models/expressions.txt example.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/ace59cb83b87a4fdeab29424ea134e78de24fb27\"\u003e\u003ccode\u003eace59cb\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/36431\"\u003e#36431\u003c/a\u003e -- Returned tuples for multi-column ForeignObject in val...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/16a12a979989565f471ef1a2011bab59f8226f05\"\u003e\u003ccode\u003e16a12a9\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/35831\"\u003e#35831\u003c/a\u003e -- Documented the model form meta API in model form refe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/51753bc80925ecbe07d944dd22449d5ca867b9d4\"\u003e\u003ccode\u003e51753bc\u003c/code\u003e\u003c/a\u003e [5.2.x] Added stub release notes and release date for 5.2.6, 5.1.12, and 4.2.24.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/a4864551259f70e044043cf64b6925b816352156\"\u003e\u003ccode\u003ea486455\u003c/code\u003e\u003c/a\u003e [5.2.x] Corrected definition of \u0026quot;needsinfo\u0026quot; triage stage in contributing guide.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/f8e572e843b037dea9c79bcecd7b9626b2b4ceba\"\u003e\u003ccode\u003ef8e572e\u003c/code\u003e\u003c/a\u003e [5.2.x] Removed reference to flake8 file exclusions.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/9c9ed6fd7a8399113a18b979c8cd6f04cfbfa30b\"\u003e\u003ccode\u003e9c9ed6f\u003c/code\u003e\u003c/a\u003e [5.2.x] Refs \u003ca href=\"https://redirect.github.com/django/django/issues/35530\"\u003e#35530\u003c/a\u003e -- Corrected deprecation message in auth.alogin().\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/django/django/compare/5.2.3...5.2.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `psycopg` from 3.2.9 to 3.2.10\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psycopg/psycopg/blob/master/docs/news.rst\"\u003epsycopg's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e.. currentmodule:: psycopg\u003c/p\u003e\n\u003cp\u003e.. index::\nsingle: Release notes\nsingle: News\u003c/p\u003e\n\u003ch1\u003e\u003ccode\u003epsycopg\u003c/code\u003e release notes\u003c/h1\u003e\n\u003ch2\u003eFuture releases\u003c/h2\u003e\n\u003cp\u003ePsycopg 3.3.0 (unreleased)\n^^^^^^^^^^^^^^^^^^^^^^^^^^\u003c/p\u003e\n\u003cp\u003e.. rubric:: New top-level features\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd :ref:\u003ccode\u003etemplate strings queries \\\u0026lt;template-strings\u0026gt;\u003c/code\u003e (:ticket:\u003ccode\u003e[#1054](https://github.com/psycopg/psycopg/issues/1054)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eCursors are now iterators, not only iterables. This means you can call\n\u003ccode\u003enext(cur)\u003c/code\u003e to fetch the next row (:ticket:\u003ccode\u003e[#1064](https://github.com/psycopg/psycopg/issues/1064)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eCursor.results()\u003c/code\u003e to iterate over the result sets of the queries\nexecuted though \u003ccode\u003e~Cursor.executemany()\u003c/code\u003e or \u003ccode\u003e~Cursor.execute()\u003c/code\u003e\n(:ticket:\u003ccode\u003e[#1080](https://github.com/psycopg/psycopg/issues/1080)\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. rubric:: New libpq wrapper features\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003epq.PGconn.used_gssapi\u003c/code\u003e attribute and \u003ccode\u003eCapabilities.has_used_gssapi()\u003c/code\u003e\nfunction (:ticket:\u003ccode\u003e[#1138](https://github.com/psycopg/psycopg/issues/1138)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eConnectionInfo.full_protocol_version\u003c/code\u003e attribute,\n\u003ccode\u003eCapabilities.has_full_protocol_version()\u003c/code\u003e function (:ticket:\u003ccode\u003e[#1079](https://github.com/psycopg/psycopg/issues/1079)\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. rubric:: Other changes\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eDisable default GSSAPI preferential connection in the binary package\n(:ticket:\u003ccode\u003e[#1136](https://github.com/psycopg/psycopg/issues/1136)\u003c/code\u003e).\u003c/p\u003e\n\u003cp\u003e.. warning::\u003c/p\u003e\n\u003cp\u003ePlease explicitly set the gssencmode_ connection parameter or the\n:envvar:\u003ccode\u003ePGGSSENCMODE\u003c/code\u003e environment variable to interact reliably with the\nGSSAPI.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDrop support for Python 3.8 (:ticket:\u003ccode\u003e[#976](https://github.com/psycopg/psycopg/issues/976)\u003c/code\u003e) and 3.9 (:ticket:\u003ccode\u003e[#1056](https://github.com/psycopg/psycopg/issues/1056)\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eCurrent release\u003c/h2\u003e\n\u003cp\u003e.. _psycopg-3.2.10:\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/6cc2adfb45464f201bb7a15dd95189a7af16c26e\"\u003e\u003ccode\u003e6cc2adf\u003c/code\u003e\u003c/a\u003e chore: bump psycopg package version to 3.2.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/4c2fd3735c0670d63b92a7ad098fc0a0a2c7f52a\"\u003e\u003ccode\u003e4c2fd37\u003c/code\u003e\u003c/a\u003e Merge branch 'pg18-3.2' into maint-3.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/6ddad7b4bb7144b317e41ea57fcf3b720756fc8a\"\u003e\u003ccode\u003e6ddad7b\u003c/code\u003e\u003c/a\u003e docs: mention PostgreSQL v18 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/30bfdb954ea93cf92ce9a823f41ea6f67fd03d52\"\u003e\u003ccode\u003e30bfdb9\u003c/code\u003e\u003c/a\u003e ci: add PostgreSQL 18 to the test grid\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/57236b83b83cbfb588fcfcf70c1ca81c62d05a5b\"\u003e\u003ccode\u003e57236b8\u003c/code\u003e\u003c/a\u003e chore: add PostgreSQL 18 exceptions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/970a307b3d6d2b5125abf8337320aab97292f34f\"\u003e\u003ccode\u003e970a307\u003c/code\u003e\u003c/a\u003e fix: add ConnStatus.CONNECTION_AUTHENTICATING value\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/6903a92b5f9dc40e25f3a3d7ba62a4b4e739a638\"\u003e\u003ccode\u003e6903a92\u003c/code\u003e\u003c/a\u003e Merge branch 'fix-1091' into maint-3.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/43ad961c85703c0458c58eccc512ec1e1f2d9fae\"\u003e\u003ccode\u003e43ad961\u003c/code\u003e\u003c/a\u003e docs: document the changes to notifies generator\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/eac8115523d1b569e279eaec5fc31d76da25ef55\"\u003e\u003ccode\u003eeac8115\u003c/code\u003e\u003c/a\u003e fix: raise a warning when notifies generator and handlers are used together\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/5cc99d65f05844413730cdada00840bf9739e293\"\u003e\u003ccode\u003e5cc99d6\u003c/code\u003e\u003c/a\u003e fix: collect notifies only if no handler was registered\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psycopg/psycopg/compare/3.2.9...3.2.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `govuk-frontend-jinja` from 3.6.0 to 3.7.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/releases\"\u003egovuk-frontend-jinja's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.7.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for \u003ca href=\"https://github.com/alphagov/govuk-frontend/releases/tag/v5.11.1\"\u003eGOV.UK Frontend v5.11.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/blob/main/CHANGELOG.md\"\u003egovuk-frontend-jinja's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/releases/tag/3.7.0\"\u003e3.7.0\u003c/a\u003e - 14/08/2025\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for \u003ca href=\"https://github.com/alphagov/govuk-frontend/releases/tag/v5.11.1\"\u003eGOV.UK Frontend v5.11.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/60365bd8451c8dcd434f4087dbb013460b9332d2\"\u003e\u003ccode\u003e60365bd\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/LandRegistry/govuk-frontend-jinja/issues/99\"\u003e#99\u003c/a\u003e from LandRegistry/govuk-frontend-511\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/0e4e874123d1e9bad9a7b179b1a99eb3336ed076\"\u003e\u003ccode\u003e0e4e874\u003c/code\u003e\u003c/a\u003e logo tweak\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/79cebabe0b4f93e38eb4a171112157b8a791a3a8\"\u003e\u003ccode\u003e79cebab\u003c/code\u003e\u003c/a\u003e collapse on mobile\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/debcb30a2d394e6b96a36c8274c9de9c9e6c75df\"\u003e\u003ccode\u003edebcb30\u003c/code\u003e\u003c/a\u003e dependency upgrades\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/b939cd53a3a19cada054c497868217cb9de0203a\"\u003e\u003ccode\u003eb939cd5\u003c/code\u003e\u003c/a\u003e bump version numbers\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/compare/3.6.0...3.7.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `boto3` from 1.38.39 to 1.40.25\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/c1c60440ef00f399fbae54d6ad0b9a211d33dcb6\"\u003e\u003ccode\u003ec1c6044\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.25'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/faf7045f326ab280e80062a07f483d57f51a36a7\"\u003e\u003ccode\u003efaf7045\u003c/code\u003e\u003c/a\u003e Bumping version to 1.40.25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/041cf03a0d7186a280b29b1526bc79ca9451610c\"\u003e\u003ccode\u003e041cf03\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/d3129b62a4afde9fd5072d9dfa8233dcd1000fa7\"\u003e\u003ccode\u003ed3129b6\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.24'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/f1964795b48920af0604a95712788fcd03ac16ca\"\u003e\u003ccode\u003ef196479\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.24' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/c503159dfb5644efeb3198ffc1ad11eee0c6ecc7\"\u003e\u003ccode\u003ec503159\u003c/code\u003e\u003c/a\u003e Bumping version to 1.40.24\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/95fd165eca88bb9ae321e2d737d20b33e9ec9976\"\u003e\u003ccode\u003e95fd165\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/dd74a1e97c450cf7670cabf3a9516b5127bcffb5\"\u003e\u003ccode\u003edd74a1e\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 3.29.0 to 3.30.0 (\u003ca href=\"https://redirect.github.com/boto/boto3/issues/4605\"\u003e#4605\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/182b1adfe02c2fab6fad473afecf437b73af898c\"\u003e\u003ccode\u003e182b1ad\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.23'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/244d2f2f6789508a5456745406e1b2f40025d60f\"\u003e\u003ccode\u003e244d2f2\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.23' into develop\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.38.39...1.40.25\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `datamodel-code-generator` from 0.31.1 to 0.33.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/releases\"\u003edatamodel-code-generator's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.33.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUse Pytest \u003ccode\u003etmp_path\u003c/code\u003e fixture instead of \u003ccode\u003eTemporaryDirectory\u003c/code\u003e by \u003ca href=\"https://github.com/ilovelinux\"\u003e\u003ccode\u003e@​ilovelinux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2463\"\u003ekoxudaxi/datamodel-code-generator#2463\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRevert default date-time behaviour to respect OpenAPI/JSON Schema specifications by \u003ca href=\"https://github.com/mueslo\"\u003e\u003ccode\u003e@​mueslo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2442\"\u003ekoxudaxi/datamodel-code-generator#2442\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid mixing up configurations of different objects with the same name by \u003ca href=\"https://github.com/ilovelinux\"\u003e\u003ccode\u003e@​ilovelinux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2461\"\u003ekoxudaxi/datamodel-code-generator#2461\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix Pydantic \u003ccode\u003e@model_validator()\u003c/code\u003e usage  for Pydantic 2.12 by \u003ca href=\"https://github.com/ilovelinux\"\u003e\u003ccode\u003e@​ilovelinux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2472\"\u003ekoxudaxi/datamodel-code-generator#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRun the test suite daily to check breaking changes by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2479\"\u003ekoxudaxi/datamodel-code-generator#2479\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAutomatically infer CSV file type by \u003ca href=\"https://github.com/ilovelinux\"\u003e\u003ccode\u003e@​ilovelinux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2467\"\u003ekoxudaxi/datamodel-code-generator#2467\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid collapsing models when referencing a forwarding reference by \u003ca href=\"https://github.com/ilovelinux\"\u003e\u003ccode\u003e@​ilovelinux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2465\"\u003ekoxudaxi/datamodel-code-generator#2465\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mueslo\"\u003e\u003ccode\u003e@​mueslo\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2442\"\u003ekoxudaxi/datamodel-code-generator#2442\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.32.0...0.33.0\"\u003ehttps://github.com/koxudaxi/datamodel-code-generator/compare/0.32.0...0.33.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.32.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003emodify __typename field to honor \u003ccode\u003e--use-default-kwarg\u003c/code\u003e flag by \u003ca href=\"https://github.com/rpmcginty\"\u003e\u003ccode\u003e@​rpmcginty\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2420\"\u003ekoxudaxi/datamodel-code-generator#2420\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typo in variable name by \u003ca href=\"https://github.com/eltoder\"\u003e\u003ccode\u003e@​eltoder\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2439\"\u003ekoxudaxi/datamodel-code-generator#2439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSend use_non_positive_negative_number_constrained_types to the data type manager by \u003ca href=\"https://github.com/torarvid\"\u003e\u003ccode\u003e@​torarvid\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2425\"\u003ekoxudaxi/datamodel-code-generator#2425\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow parsing non-string lists for required fields by \u003ca href=\"https://github.com/HeroGamers\"\u003e\u003ccode\u003e@​HeroGamers\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2446\"\u003ekoxudaxi/datamodel-code-generator#2446\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow including path parameters in generated models by \u003ca href=\"https://github.com/MrLoh\"\u003e\u003ccode\u003e@​MrLoh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2445\"\u003ekoxudaxi/datamodel-code-generator#2445\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePassing in treat_dot_as_module bool to Enum init function by \u003ca href=\"https://github.com/LukeAtThat\"\u003e\u003ccode\u003e@​LukeAtThat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2456\"\u003ekoxudaxi/datamodel-code-generator#2456\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: correctly handle multiline comments in Unions by \u003ca href=\"https://github.com/anor4k\"\u003e\u003ccode\u003e@​anor4k\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2454\"\u003ekoxudaxi/datamodel-code-generator#2454\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReturn Parameter and RequestBody DataTypesare  by \u003ca href=\"https://github.com/MrLoh\"\u003e\u003ccode\u003e@​MrLoh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2444\"\u003ekoxudaxi/datamodel-code-generator#2444\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rpmcginty\"\u003e\u003ccode\u003e@​rpmcginty\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2420\"\u003ekoxudaxi/datamodel-code-generator#2420\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eltoder\"\u003e\u003ccode\u003e@​eltoder\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2439\"\u003ekoxudaxi/datamodel-code-generator#2439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/torarvid\"\u003e\u003ccode\u003e@​torarvid\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2425\"\u003ekoxudaxi/datamodel-code-generator#2425\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/HeroGamers\"\u003e\u003ccode\u003e@​HeroGamers\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2446\"\u003ekoxudaxi/datamodel-code-generator#2446\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MrLoh\"\u003e\u003ccode\u003e@​MrLoh\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2445\"\u003ekoxudaxi/datamodel-code-generator#2445\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LukeAtThat\"\u003e\u003ccode\u003e@​LukeAtThat\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2456\"\u003ekoxudaxi/datamodel-code-generator#2456\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anor4k\"\u003e\u003ccode\u003e@​anor4k\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2454\"\u003ekoxudaxi/datamodel-code-generator#2454\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.31.2...0.32.0\"\u003ehttps://github.com/koxudaxi/datamodel-code-generator/compare/0.31.2...0.32.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.31.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: prevent code injection through filename in generated headers by \u003ca href=\"https://github.com/koxudaxi\"\u003e\u003ccode\u003e@​koxudaxi\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2428\"\u003ekoxudaxi/datamodel-code-generator#2428\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.31.2\"\u003ehttps://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.31.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/33f13cf31c61aa4be871add0d8dd928b28b8cfd4\"\u003e\u003ccode\u003e33f13cf\u003c/code\u003e\u003c/a\u003e Avoid collapsing models when referencing a forwarding reference (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2465\"\u003e#2465\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/400b9be526c2e466d8e82580c55ab68e89c28564\"\u003e\u003ccode\u003e400b9be\u003c/code\u003e\u003c/a\u003e Automatically infer CSV file type (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2467\"\u003e#2467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/819516d754e6f5c784a99d91cb8b5b90764707ac\"\u003e\u003ccode\u003e819516d\u003c/code\u003e\u003c/a\u003e Run the test suite daily to check breaking changes (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2479\"\u003e#2479\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/e9ffb9fdf8ac55dc7a7306674c0430adfc73b92f\"\u003e\u003ccode\u003ee9ffb9f\u003c/code\u003e\u003c/a\u003e Fix Pydantic \u003ccode\u003e@model_validator()\u003c/code\u003e usage  for Pydantic 2.12 (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2472\"\u003e#2472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/10da583f64568a1fdac426c71688dd604d3ff51d\"\u003e\u003ccode\u003e10da583\u003c/code\u003e\u003c/a\u003e Avoid mixing up configurations of different objects with the same name (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2461\"\u003e#2461\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/e30a46fac3f94cd493cb75018c496dd88119fbe5\"\u003e\u003ccode\u003ee30a46f\u003c/code\u003e\u003c/a\u003e Revert default date-time behaviour to respect OpenAPI/JSON Schema specificati...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/4d5019a7f77f4a3e74aabf2b4174c5487876f270\"\u003e\u003ccode\u003e4d5019a\u003c/code\u003e\u003c/a\u003e Use Pytest \u003ccode\u003etmp_path\u003c/code\u003e fixture instead of \u003ccode\u003eTemporaryDirectory\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2463\"\u003e#2463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/0070c1c13e5c61c705c9679db7255db1b866b18c\"\u003e\u003ccode\u003e0070c1c\u003c/code\u003e\u003c/a\u003e Return Parameter and RequestBody DataTypesare  (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2444\"\u003e#2444\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/d32cef106b47f2452fe19af0063738b1b360d9af\"\u003e\u003ccode\u003ed32cef1\u003c/code\u003e\u003c/a\u003e fix: correctly handle multiline comments in Unions, and add a test case (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2454\"\u003e#2454\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/a833f6f8b824badfa1ee43131c74c49ece99de43\"\u003e\u003ccode\u003ea833f6f\u003c/code\u003e\u003c/a\u003e Passing in treat_dot_as_module bool to Enum init function (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2456\"\u003e#2456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.33.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `django-types` from 0.21.0 to 0.22.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sbdchd/django-types/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentry-sdk` from 2.30.0 to 2.37.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/releases\"\u003esentry-sdk's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.37.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eNew Integration (BETA):\u003c/strong\u003e Add support for \u003ccode\u003elanggraph\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4727\"\u003e#4727\u003c/a\u003e) by \u003ca href=\"https://github.com/shellmayr\"\u003e\u003ccode\u003e@​shellmayr\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe can now instrument AI agents that are created with \u003ca href=\"https://www.langchain.com/langgraph\"\u003eLangGraph\u003c/a\u003e out of the box.\u003c/p\u003e\n\u003cp\u003eFor more information see the \u003ca href=\"https://docs.sentry.io/platforms/python/integrations/langgraph/\"\u003eLangGraph integrations documentation\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAI Agents: Improve rendering of input and output messages in AI agents integrations. (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4750\"\u003e#4750\u003c/a\u003e) by \u003ca href=\"https://github.com/shellmayr\"\u003e\u003ccode\u003e@​shellmayr\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAI Agents: Format span attributes in AI integrations (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4762\"\u003e#4762\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eCI: Fix celery (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4765\"\u003e#4765\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Move asyncpg under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4757\"\u003e#4757\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Move beam under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4759\"\u003e#4759\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Move boto3 tests under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4761\"\u003e#4761\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Remove openai pin and update tox (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4748\"\u003e#4748\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.36.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eNew integration:\u003c/strong\u003e Unraisable exceptions (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4733\"\u003e#4733\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eAdd the unraisable exception integration to your sentry_sdk.init call:\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.unraisablehook import UnraisablehookIntegration\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\ndsn=\u0026quot;...\u0026quot;,\u003cbr /\u003e\nintegrations=[\u003cbr /\u003e\nUnraisablehookIntegration(),\u003cbr /\u003e\n]\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003emeta: Update instructions on release process (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4755\"\u003e#4755\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etests: Move arq under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4739\"\u003e#4739\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etests: Support dashes in test suite names (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4740\"\u003e#4740\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDon't fail if there is no \u003ccode\u003e_context_manager_state\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4698\"\u003e#4698\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWrap span restoration in \u003ccode\u003e__exit__\u003c/code\u003e in \u003ccode\u003ecapture_internal_exceptions\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4719\"\u003e#4719\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Constrain types of ai_track decorator (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4745\"\u003e#4745\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eopenai_agents\u003c/code\u003e in CI (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4742\"\u003e#4742\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove old langchain test suites from ignore list (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4737\"\u003e#4737\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etests: Trigger Pytest failure when an unraisable exception occurs (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4738\"\u003e#4738\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(openai): Avoid double exit causing an unraisable exception (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4736\"\u003e#4736\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etests: Move langchain under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4734\"\u003e#4734\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etoxgen: Add variants \u0026amp; move OpenAI under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4730\"\u003e#4730\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate tox.ini (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4731\"\u003e#4731\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.35.2\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md\"\u003esentry-sdk's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.37.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eNew Integration (BETA):\u003c/strong\u003e Add support for \u003ccode\u003elanggraph\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4727\"\u003e#4727\u003c/a\u003e) by \u003ca href=\"https://github.com/shellmayr\"\u003e\u003ccode\u003e@​shellmayr\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe can now instrument AI agents that are created with \u003ca href=\"https://www.langchain.com/langgraph\"\u003eLangGraph\u003c/a\u003e out of the box.\u003c/p\u003e\n\u003cp\u003eFor more information see the \u003ca href=\"https://docs.sentry.io/platforms/python/integrations/langgraph/\"\u003eLangGraph integrations documentation\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAI Agents: Improve rendering of input and output messages in AI agents integrations. (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4750\"\u003e#4750\u003c/a\u003e) by \u003ca href=\"https://github.com/shellmayr\"\u003e\u003ccode\u003e@​shellmayr\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAI Agents: Format span attributes in AI integrations (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4762\"\u003e#4762\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eCI: Fix celery (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4765\"\u003e#4765\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Move asyncpg under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4757\"\u003e#4757\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Move beam under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4759\"\u003e#4759\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Move boto3 tests under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4761\"\u003e#4761\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Remove openai pin and update tox (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4748\"\u003e#4748\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.36.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eNew integration:\u003c/strong\u003e Unraisable exceptions (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4733\"\u003e#4733\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eAdd the unraisable exception integration to your sentry_sdk.init call:\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.unraisablehook import UnraisablehookIntegration\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\ndsn=\u0026quot;...\u0026quot;,\u003cbr /\u003e\nintegrations=[\u003cbr /\u003e\nUnraisablehookIntegration(),\u003cbr /\u003e\n]\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003emeta: Update instructions on release process (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4755\"\u003e#4755\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etests: Move arq under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4739\"\u003e#4739\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etests: Support dashes in test suite names (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4740\"\u003e#4740\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDon't fail if there is no \u003ccode\u003e_context_manager_state\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4698\"\u003e#4698\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWrap span restoration in \u003ccode\u003e__exit__\u003c/code\u003e in \u003ccode\u003ecapture_internal_exceptions\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4719\"\u003e#4719\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Constrain types of ai_track decorator (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4745\"\u003e#4745\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eopenai_agents\u003c/code\u003e in CI (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4742\"\u003e#4742\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove old langchain test suites from ignore list (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4737\"\u003e#4737\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etests: Trigger Pytest failure when an unraisable exception occurs (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4738\"\u003e#4738\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(openai): Avoid double exit causing an unraisable exception (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4736\"\u003e#4736\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etests: Move langchain under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4734\"\u003e#4734\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etoxgen: Add variants \u0026amp; move OpenAI under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4730\"\u003e#4730\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate tox.ini (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4731\"\u003e#4731\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.35.2\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/75ef769d494c45e6f8b133da22fe75dcf9da713e\"\u003e\u003ccode\u003e75ef769\u003c/code\u003e\u003c/a\u003e Updated changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/f78552480e894b7a5a152530c589d9677f81bc14\"\u003e\u003ccode\u003ef785524\u003c/code\u003e\u003c/a\u003e release: 2.37.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/dee6de1579ba37acb46af622e2892d862e9c70ef\"\u003e\u003ccode\u003edee6de1\u003c/code\u003e\u003c/a\u003e feat(agents): improve instrumentation of input messages (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4750\"\u003e#4750\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/ad3c435398d78949eda68dff66ef8eb8b4928679\"\u003e\u003ccode\u003ead3c435\u003c/code\u003e\u003c/a\u003e tests: Move boto3 tests under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4761\"\u003e#4761\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/0c0a8d8497647e40ae8b285f5a53069394b084ad\"\u003e\u003ccode\u003e0c0a8d8\u003c/code\u003e\u003c/a\u003e ci: Fix celery (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4765\"\u003e#4765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/b50f7e4a68c69caccdf29bc6b645f51c215e7ada\"\u003e\u003ccode\u003eb50f7e4\u003c/code\u003e\u003c/a\u003e Format span attributes in AI integrations (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4762\"\u003e#4762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/9711b3be884263bb34f1ae5a0f719cb9acb4b0ca\"\u003e\u003ccode\u003e9711b3b\u003c/code\u003e\u003c/a\u003e tests: Move asyncpg under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4757\"\u003e#4757\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/58a9827e1a5bb207a34651409a303bc21890fb66\"\u003e\u003ccode\u003e58a9827\u003c/code\u003e\u003c/a\u003e feat: Add LangGraph integration (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4727\"\u003e#4727\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/c378c2d8d9032a50f4371df20a1929756342b245\"\u003e\u003ccode\u003ec378c2d\u003c/code\u003e\u003c/a\u003e tests: Move beam under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/ff9b1c37f2ccbdad39e1950dab09546b29e2d247\"\u003e\u003ccode\u003eff9b1c3\u003c/code\u003e\u003c/a\u003e tests: Remove openai pin and update tox (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4748\"\u003e#4748\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getsentry/sentry-python/compare/2.30.0...2.37.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `django-rq` from 3.0.1 to 3.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rq/django-rq/releases\"\u003edjango-rq's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e/metrics\u003c/code\u003e endpoint to expose RQ metrics in Prometheus format. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded token based authentication for the \u003ccode\u003e/metrics\u003c/code\u003e and \u003ccode\u003e/stats.json\u003c/code\u003e endpoints. Thanks \u003ca href=\"https://github.com/RasmusThing\"\u003e\u003ccode\u003e@​RasmusThing\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eMigrated Django-RQ to use Python's modern packaging standard. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eFixed an issue with setting \u003ccode\u003eresult_ttl\u003c/code\u003e via job decorators. Thanks \u003ca href=\"https://github.com/Sir-heed\"\u003e\u003ccode\u003e@​Sir-heed\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVarious admin page improvements. Thanks \u003ca href=\"https://github.com/selwin\"\u003e\u003ccode\u003e@​selwin\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/DhavalGojiya\"\u003e\u003ccode\u003e@​DhavalGojiya\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rq/django-rq/blob/master/CHANGELOG.md\"\u003edjango-rq's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003eVersion 3.1 (2025-08-02)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e/metrics\u003c/code\u003e endpoint to expose RQ metrics in Prometheus format. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded token based authentication for the \u003ccode\u003e/metrics\u003c/code\u003e and \u003ccode\u003e/stats.json\u003c/code\u003e endpoints. Thanks \u003ca href=\"https://github.com/RasmusThing\"\u003e\u003ccode\u003e@​RasmusThing\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eMigrated Django-RQ to use Python's modern packaging standard. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eFixed an issue with setting \u003ccode\u003eresult_ttl\u003c/code\u003e via job decorators. Thanks \u003ca href=\"https://github.com/Sir-heed\"\u003e\u003ccode\u003e@​Sir-heed\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVarious admin page improvements. Thanks \u003ca href=\"https://github.com/selwin\"\u003e\u003ccode\u003e@​selwin\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/DhavalGojiya\"\u003e\u003ccode\u003e@​DhavalGojiya\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/571082b7849942448ba7f34c4a0a3b88fbebaade\"\u003e\u003ccode\u003e571082b\u003c/code\u003e\u003c/a\u003e Bump version to 3.1 in pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/edd22bd2f5042feecaee8a4034784a930856137a\"\u003e\u003ccode\u003eedd22bd\u003c/code\u003e\u003c/a\u003e Bump version to 3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/f9fadb81699347bf3369053e3cd619226ca2c75d\"\u003e\u003ccode\u003ef9fadb8\u003c/code\u003e\u003c/a\u003e Change url token to header auth and add to /metrics/ aswell (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/718\"\u003e#718\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/fc9a6dee60c05cdd34530e9ce002cda982c65f71\"\u003e\u003ccode\u003efc9a6de\u003c/code\u003e\u003c/a\u003e Update packaging to use modern packaging with a pyproject.toml (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/715\"\u003e#715\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/b1e6e87d0f6da4dcc29ec5745fb4a3665bde10ad\"\u003e\u003ccode\u003eb1e6e87\u003c/code\u003e\u003c/a\u003e Update README.rst\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/429933202673712ba55d6ad49672b73bece04dfc\"\u003e\u003ccode\u003e4299332\u003c/code\u003e\u003c/a\u003e fix job decorator default ttl (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/714\"\u003e#714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/38143405218e0387ca2f4fc2cd48a0d0e7382370\"\u003e\u003ccode\u003e3814340\u003c/code\u003e\u003c/a\u003e Added sorting for deferred_jobs and scheduled_jobs views (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/713\"\u003e#713\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/399c18f3e96ea710deabe27ad64829c46f01583b\"\u003e\u003ccode\u003e399c18f\u003c/code\u003e\u003c/a\u003e fix pyright check (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/707\"\u003e#707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/ec02320dfa342a880278f6b39685047a9cccc9f4\"\u003e\u003ccode\u003eec02320\u003c/code\u003e\u003c/a\u003e [FIX] -- job status display in scheduler listing page template. (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/694\"\u003e#694\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/507b985dd65d67cbce73a1b70d0d1bcb92fc68ab\"\u003e\u003ccode\u003e507b985\u003c/code\u003e\u003c/a\u003e Bump requests from 2.32.0 to 2.32.4 in /integration_test (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/711\"\u003e#711\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rq/django-rq/compare/v3.0.1...v3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `django-simple-history` from 3.8.0 to 3.10.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/django-commons/django-simple-history/releases\"\u003edjango-simple-history's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 3.10.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/blob/3.10.1/CHANGES.rst#3101-2025-06-20\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed changed log syntax to support PyPI packaging. by \u003ca href=\"https://github.com/tim-schilling\"\u003e\u003ccode\u003e@​tim-schilling\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1499\"\u003edjango-commons/django-simple-history#1499\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.10.0...3.10.1\"\u003ehttps://github.com/django-commons/django-simple-history/compare/3.10.0...3.10.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease 3.10.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/jazzband/django-simple-history/blob/3.10.0/CHANGES.rst#3100-2025-06-20\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExclude tests from wheels by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1478\"\u003edjango-commons/django-simple-history#1478\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSwitch repo to Django Commons by \u003ca href=\"https://github.com/tim-schilling\"\u003e\u003ccode\u003e@​tim-schilling\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1429\"\u003edjango-commons/django-simple-history#1429\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for release 3.10.0 by \u003ca href=\"https://github.com/ddabble\"\u003e\u003ccode\u003e@​ddabble\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1498\"\u003edjango-commons/django-simple-history#1498\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1478\"\u003edjango-commons/django-simple-history#1478\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.9.0...3.10.0\"\u003ehttps://github.com/django-commons/django-simple-history/compare/3.9.0...3.10.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease 3.9.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/jazzband/django-simple-history/blob/3.9.0/CHANGES.rst#390-2025-01-26\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove the deprecated \u003ccode\u003esimple_history_admin_list.display_list()\u003c/code\u003e + \u003cstrong\u003eRelease 3.9.0\u003c/strong\u003e by \u003ca href=\"https://github.com/ddabble\"\u003e\u003ccode\u003e@​ddabble\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jazzband/django-simple-history/pull/1444\"\u003ejazzband/django-simple-history#1444\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jazzband/django-simple-history/compare/3.8.0...3.9.0\"\u003ehttps://github.com/jazzband/django-simple-history/compare/3.8.0...3.9.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/django-commons/django-simple-history/blob/master/CHANGES.rst\"\u003edjango-simple-history's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.10.1 (2025-06-20)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed changelog syntax to support PyPI packaging (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1499\"\u003egh-1499\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.0 (2025-06-20)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTests are no longer bundled in released wheels (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1478\"\u003egh-1478\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMove repository to the Django Commons organization (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1391\"\u003egh-1391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.9.0 (2025-01-26)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved the \u003ccode\u003esimple_history_admin_list.display_list()\u003c/code\u003e template tag that was\ndeprecated in version 3.6.0 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1444\"\u003egh-1444\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/dc569842772578558fe4a84e5937d6fc31dd735d\"\u003e\u003ccode\u003edc56984\u003c/code\u003e\u003c/a\u003e Fixed changed log syntax to support PyPI packaging. (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1499\"\u003e#1499\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/58dbb06e68f821c99128b83619a856444319fa04\"\u003e\u003ccode\u003e58dbb06\u003c/code\u003e\u003c/a\u003e Prepare for release 3.10.0 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1498\"\u003e#1498\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/bc9909f32e33f8f33dccd28934994dffb9c4f459\"\u003e\u003ccode\u003ebc9909f\u003c/code\u003e\u003c/a\u003e Switch repo to Django Commons (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1429\"\u003e#1429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/9fb7c5c30b43917eaf98ee5ef266705bd191a825\"\u003e\u003ccode\u003e9fb7c5c\u003c/code\u003e\u003c/a\u003e Bump codecov/codecov-action from 3 to 5 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1425\"\u003e#1425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/7d6b50bf6f4ccbddd75bc3685dc9cf04240176d2\"\u003e\u003ccode\u003e7d6b50b\u003c/code\u003e\u003c/a\u003e Bump coverage from 7.8.0 to 7.9.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1495\"\u003e#1495\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/8bb61757cb9563c2fd0c17e1fa22c53013c311e3\"\u003e\u003ccode\u003e8bb6175\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1482\"\u003e#1482\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/010928f2fc52acd68df41e61686ed233171530e8\"\u003e\u003ccode\u003e010928f\u003c/code\u003e\u003c/a\u003e Bump tox from 4.25.0 to 4.26.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1485\"\u003e#1485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/5721e31055b0c952daf3601b6c35bcde78cab31b\"\u003e\u003ccode\u003e5721e31\u003c/code\u003e\u003c/a\u003e Bump psycopg[binary] from 3.2.6 to 3.2.9 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1484\"\u003e#1484\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/810149708ad11a284cd581972db46142120f824a\"\u003e\u003ccode\u003e8101497\u003c/code\u003e\u003c/a\u003e Bump flake8 from 7.1.2 to 7.2.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1474\"\u003e#1474\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/626ece4082c4a7f87d14566e7a3c568043233ac5\"\u003e\u003ccode\u003e626ece4\u003c/code\u003e\u003c/a\u003e Bump coverage from 7.6.12 to 7.8.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.8.0...3.10.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` from 2.3.0 to 2.3.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pandas-dev/pandas/releases\"\u003epandas's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePandas 2.3.2\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.2.\nThis release includes some improvements and fixes to the future string data type (preview feature for the upcoming pandas 3.0). We recommend that all users upgrade to this version.\u003c/p\u003e\n\u003cp\u003eSee the \u003ca href=\"https://pandas.pydata.org/pandas-docs/version/2.3/whatsnew/v2.3.2.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.2 supports Python 3.9 and higher.\u003c/p\u003e\n\u003cp\u003eThe release will be available on the conda-forge channel:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install pandas --channel conda-forge\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr via PyPI:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython3 -m pip install --upgrade pandas\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003ePlease report any issues with the release on the \u003ca href=\"https://github.com/pandas-dev/pandas/issues\"\u003epandas issue tracker\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThanks to all the contributors who made this release possible.\u003c/p\u003e\n\u003ch2\u003ePandas 2.3.1\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.1.\nThis release includes some improvements and fixes to the future string data type (preview feature for the upcoming pandas 3.0). We recommend that all users upgrade to this version.\u003c/p\u003e\n\u003cp\u003eSee the \u003ca href=\"https://pandas.pydata.org/pandas-docs/version/2.3.1/whatsnew/v2.3.1.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.1 supports Python 3.9 and higher.\u003c/p\u003e\n\u003cp\u003eThe release will be available on the conda-forge channel:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install pandas --channel conda-forge\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr via PyPI:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython3 -m pip install --upgrade pandas\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003ePlease report any issues with the release on the \u003ca href=\"https://github.com/pandas-dev/pandas/issues\"\u003epandas issue tracker\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThanks to all the contributors who made this release possible.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/4665c10899bc413b639194f6fb8665a5c70f7db5\"\u003e\u003ccode\u003e4665c10\u003c/code\u003e\u003c/a\u003e RLS: 2.3.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/633c68b91808441eba7d73b630a82b713ba19da8\"\u003e\u003ccode\u003e633c68b\u003c/code\u003e\u003c/a\u003e DOC: fix syntax in whatsnew file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/456ad4702cb017aab36e2d09a4029b1b085198f5\"\u003e\u003ccode\u003e456ad47\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62152\"\u003e#62152\u003c/a\u003e on branch 2.3.x (DOC: prepare 2.3.2 whatsnew notes for rel...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/6cae6444444ed7943ceffbd5990cd8249dd5b47c\"\u003e\u003ccode\u003e6cae644\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] DOC: move and reword whatsnew note for replace fix (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/57865\"\u003eGH-57865\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/a91c50a58c372cddf104fd60241c7284bbf8fc80\"\u003e\u003ccode\u003ea91c50a\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62147\"\u003e#62147\u003c/a\u003e on branch 2.3.x (DOC: correct and rewrite string migration...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/f7a2cfdf2ed08016167ae6c5e577c54949a849b2\"\u003e\u003ccode\u003ef7a2cfd\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG/DEPR: logical operation with bool and string (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/61995\"\u003e#61995\u003c/a\u003e) (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/7981a43db4339826a3ce5020e9b1b931e604e5bd\"\u003e\u003ccode\u003e7981a43\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62124\"\u003e#62124\u003c/a\u003e on branch 2.3.x (CI/BLD: don't use strict xfail for '%m.%Y...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/fafbcbd03d1721830f4df8255abdab341db2a583\"\u003e\u003ccode\u003efafbcbd\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG(CoW): also raise for chained assignment for .at / .iat (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/3ac64a714886d917ca24ba637a85c4aaf563fc1b\"\u003e\u003ccode\u003e3ac64a7\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: Fix Series.str.contains with compiled regex on Arrow st...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/1f2dc4fd8a2503773b6f90cb5e8cc5c3172c3c11\"\u003e\u003ccode\u003e1f2dc4f\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: fix Series.str.fullmatch() and Series.str.match() with ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pandas-dev/pandas/compare/v2.3.0...v2.3.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `moto` from 5.1.6 to 5.1.12\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getmoto/moto/blob/master/CHANGELOG.md\"\u003emoto's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.1.12\u003c/h2\u003e\n\u003cp\u003eDocker Digest for 5.1.12: \u003cem\u003esha256:e1cf8b624019e6eba25cb5b37efdf95a463fc24691978540a1c7008b7d02fda0\u003c/em\u003e\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGeneral:\n    * Removed support for OpsWorks, now that AWS has also deprecated this service.\n      https://docs.aws.amazon.com/opsworks/latest/userguide/stacks-eol-faqs.html\n\u003cp\u003eNew Methods:\n* Glue:\n* batch_get_workflows()\n* create_workflow()\n* delete_workflow()\n* get_workflow()\n* get_workflow_run()\n* get_workflow_runs()\n* get_workflow_run_properties()\n* list_workflows()\n* put_workflow_run_properties()\n* start_workflow_run()\n* stop_workflow_run()\n* update_workflow()\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e* IOT:\n    * add_thing_to_billing_group()\n    * create_billing_group()\n    * delete_billing_group()\n    * describe_billing_group()\n    * list_billing_groups()\n    * list_things_in_billing_group()\n    * remove_thing_from_billing_group()\n    * update_billing_group()\n\n* SES:\n    * clone_receipt_rule_set()\n\n* SSM:\n    * create_data_source()\n    * deregister_patch_baseline_for_patch_group()\n    * delete_data_source()\n    * describe_data_source()\n    * get_patch_baseline_for_patch_group()\n    * list_data_sources()\n    * list_tags_for_resource()\n    * register_patch_baseline_for_patch_group()\n    * update_data_source()\n    * tag_resource()\n    * untag_resource()\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eMiscellaneous:\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/981d6417b828412406eeba70045cb6be98612ec3\"\u003e\u003ccode\u003e981d641\u003c/code\u003e\u003c/a\u003e Pre-Release: Up Version Number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/9def14736ea0d75dcfdeebdf0a5fc8046f64566d\"\u003e\u003ccode\u003e9def147\u003c/code\u003e\u003c/a\u003e Admin: Prep release 5.1.12 (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9270\"\u003e#9270\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/ea94b4054296549662f61979cc69e859574a3272\"\u003e\u003ccode\u003eea94b40\u003c/code\u003e\u003c/a\u003e chore: update SSM default parameters (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9269\"\u003e#9269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/8ce36f7b8565f607fb16da9a70a59599b2d29b9d\"\u003e\u003ccode\u003e8ce36f7\u003c/code\u003e\u003c/a\u003e chore: update EMR Instance Types (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9266\"\u003e#9266\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/2d358ba575948a086c0f1078679db893d127e0e3\"\u003e\u003ccode\u003e2d358ba\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Types (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9268\"\u003e#9268\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/e35b280819341bd4e0c5a51d0c2132527717b94d\"\u003e\u003ccode\u003ee35b280\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Offerings (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9267\"\u003e#9267\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/6c16d2d0aef0facc991997cd4abd2621959bafb2\"\u003e\u003ccode\u003e6c16d2d\u003c/code\u003e\u003c/a\u003e [DirectConnect] Updating ARNs to match AWS (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9265\"\u003e#9265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/0e24869fc946ce3e907e80bdc6096eac586d38c6\"\u003e\u003ccode\u003e0e24869\u003c/code\u003e\u003c/a\u003e SSM: register/deregister/get patch group (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9259\"\u003e#9259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/a82fc4950da62a87c1fa2d8ed543a0c327c298cd\"\u003e\u003ccode\u003ea82fc49\u003c/code\u003e\u003c/a\u003e SES: Enhancements/Validations around CreateReceiptRule action (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9249\"\u003e#9249\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/020c0f7b7d63394f7c636b86512d3ecc8df4a506\"\u003e\u003ccode\u003e020c0f7\u003c/code\u003e\u003c/a\u003e [EC2] Adds attributes to elastic network interface association response (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9261\"\u003e#9261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getmoto/moto/compare/5.1.6...5.1.12\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `freezegun` from 1.5.2 to 1.5.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spulec/freezegun/blob/master/CHANGELOG\"\u003efreezegun's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.5.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAllow parametrized arguments called 'func' (Broken in 1.5.4)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Ability to yield fixtures (broken in 1.5.3)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix compatibility with pytest 8.4.0 when using fixtures\u003c/li\u003e\n\u003cli\u003eAdd (back) class-decorator overload to guarantee Pytype understands it\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/c9bf52c5aa12ea1b5b8647a136a92504ea071f2f\"\u003e\u003ccode\u003ec9bf52c\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/0f2bd7ed8b420da73372f4cbb0207b777caa66e9\"\u003e\u003ccode\u003e0f2bd7e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/582\"\u003e#582\u003c/a\u003e from spulec/fixture-called-func\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/a6080557cbcbe4891843934c1334430bb1c5ead7\"\u003e\u003ccode\u003ea608055\u003c/code\u003e\u003c/a\u003e Allow parametrized arguments with name 'func'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/2bb47113a5f9f290d26630c92732e58f49557179\"\u003e\u003ccode\u003e2bb4711\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/7599eeea16b8f206e881892dc104128a5b36de82\"\u003e\u003ccode\u003e7599eee\u003c/code\u003e\u003c/a\u003e Add 1.5.4 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/0d00e7ddd9ad33fc63fbed29af17853b18bc3c61\"\u003e\u003ccode\u003e0d00e7d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/579\"\u003e#579\u003c/a\u003e from zsh8/decorate_generator\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/10c93f2d6c98f82e54470b05144cd0f17d3e1b46\"\u003e\u003ccode\u003e10c93f2\u003c/code\u003e\u003c/a\u003e fix: preserve functionality in pytest yield fixtures\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/d2e0a00addb0653b0cf3be65f8fa7137c7e3bda1\"\u003e\u003ccode\u003ed2e0a00\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/6229e27d27ec61c4c55d7006db7ede6f16d7280a\"\u003e\u003ccode\u003e6229e27\u003c/code\u003e\u003c/a\u003e Add 1.5.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/3111775d6e484f55a85030c626180b592adef569\"\u003e\u003ccode\u003e3111775\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/576\"\u003e#576\u003c/a\u003e from spulec/support-fixtures-pytest-840\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spulec/freezegun/compare/1.5.2...1.5.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-lazy-fixtures` from 1.1.4 to 1.3.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/releases\"\u003epytest-lazy-fixtures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.3.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/checkout from 4 to 5 in the github-actions group by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/45\"\u003edev-petrov/pytest-lazy-fixtures#45\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix fixture classes support by \u003ca href=\"https://github.com/dev-petrov\"\u003e\u003ccode\u003e@​dev-petrov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/48\"\u003edev-petrov/pytest-lazy-fixtures#48\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.3.3...1.3.4\"\u003ehttps://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.3.3...1.3.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.3.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix replace same object by \u003ca href=\"https://github.com/dev-petrov\"\u003e\u003ccode\u003e@​dev-petrov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/44\"\u003edev-petrov/pytest-lazy-fixtures#44\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.3.2...1.3.3\"\u003ehttps://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.3.2...1.3.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.3.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix nested fixtures collection by \u003ca href=\"https://github.com/dev-petrov\"\u003e\u003ccode\u003e@​dev-petrov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/42\"\u003edev-petrov/pytest-lazy-fixtures#42\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.3.1...1.3.2\"\u003ehttps://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.3.1...1.3.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.3.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix collect_fixtures by \u003ca href=\"https://github.com/dev-petrov\"\u003e\u003ccode\u003e@​dev-petrov\u003c/code\u003e\u003c/a\u003e in \u003c...\n\n_Description has been truncated_","html_url":"https://github.com/Ed-BW/consult-demo/pull/18","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ed-BW%2Fconsult-demo/issues/18","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/18/packages"},{"uuid":"3384057979","node_id":"PR_kwDOOQGkKM6m4CG3","number":45,"state":"open","title":"😨 Bump the runtime-minors group with 4 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":12,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-09-04T14:30:33.000Z","updated_at":"2025-09-15T09:35:42.957Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"😨 Bump","group_name":"runtime-minors","update_count":4,"packages":[{"name":"pytest","old_version":"8.3.4","new_version":"8.4.1","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"6.0.0","new_version":"6.2.1","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"}],"path":null,"ecosystem":"pip"},"body":"Bumps the runtime-minors group with 4 updates: [pytest](https://github.com/pytest-dev/pytest), [pytest-cov](https://github.com/pytest-dev/pytest-cov), [pytest-mock](https://github.com/pytest-dev/pytest-mock) and [pytest-random-order](https://github.com/jbasko/pytest-random-order).\n\nUpdates `pytest` from 8.3.4 to 8.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.4.1\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.1 (2025-06-17)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13461\"\u003e#13461\u003c/a\u003e: Corrected \u003ccode\u003e_pytest.terminal.TerminalReporter.isatty\u003c/code\u003e to support\nbeing called as a method. Before it was just a boolean which could\nbreak correct code when using \u003ccode\u003e-o log_cli=true\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13477\"\u003e#13477\u003c/a\u003e: Reintroduced \u003ccode\u003epytest.PytestReturnNotNoneWarning\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which was removed by accident in pytest [8.4]{.title-ref}.\u003c/p\u003e\n\u003cp\u003eThis warning is raised when a test functions returns a value other than \u003ccode\u003eNone\u003c/code\u003e, which is often a mistake made by beginners.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ereturn-not-none\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13497\"\u003e#13497\u003c/a\u003e: Fixed compatibility with \u003ccode\u003eTwisted 25+\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e: Fixed outdated warning about \u003ccode\u003efaulthandler\u003c/code\u003e not working on Windows.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.0\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.0 (2025-06-02)\u003c/h1\u003e\n\u003ch2\u003eRemovals and backward incompatible breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11372\"\u003e#11372\u003c/a\u003e: Async tests will now fail, instead of warning+skipping, if you don't have any suitable plugin installed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12346\"\u003e#12346\u003c/a\u003e: Tests will now fail, instead of raising a warning, if they return any value other than None.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12874\"\u003e#12874\u003c/a\u003e: We dropped support for Python 3.8 following its end of life (2024-10-07).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12960\"\u003e#12960\u003c/a\u003e: Test functions containing a yield now cause an explicit error. They have not been run since pytest 4.0, and were previously marked as an expected failure and deprecation warning.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ethe docs \u0026lt;yield tests deprecated\u0026gt;\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDeprecations (removal in next major release)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10839\"\u003e#10839\u003c/a\u003e: Requesting an asynchronous fixture without a [pytest_fixture_setup]{.title-ref} hook that resolves it will now give a DeprecationWarning. This most commonly happens if a sync test requests an async fixture. This should have no effect on a majority of users with async tests or fixtures using async pytest plugins, but may affect non-standard hook setups or \u003ccode\u003eautouse=True\u003c/code\u003e. For guidance on how to work around this warning see \u003ccode\u003esync-test-async-fixture\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11538\"\u003e#11538\u003c/a\u003e: Added \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} as an equivalent to \u003ccode\u003epytest.raises\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} for expecting \u003ccode\u003eExceptionGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;exc\u0026quot;}. Also adds \u003ccode\u003epytest.RaisesExc\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which is now the logic behind \u003ccode\u003epytest.raises\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and used as parameter to \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;}. \u003ccode\u003eRaisesGroup\u003c/code\u003e includes the ability to specify multiple different expected exceptions, the structure of nested exception groups, and flags for emulating \u003ccode\u003eexcept* \u0026lt;except_star\u0026gt;\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}. See \u003ccode\u003eassert-matching-exception-groups\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} and docstrings for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12081\"\u003e#12081\u003c/a\u003e: Added \u003ccode\u003ecapteesys\u003c/code\u003e{.interpreted-text role=\u0026quot;fixture\u0026quot;} to capture AND pass output to next handler set by \u003ccode\u003e--capture=\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12504\"\u003e#12504\u003c/a\u003e: \u003ccode\u003epytest.mark.xfail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now accepts \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} for the \u003ccode\u003eraises\u003c/code\u003e parameter when you expect an exception group. You can also pass a \u003ccode\u003epytest.RaisesExc\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} if you e.g. want to make use of the \u003ccode\u003echeck\u003c/code\u003e parameter.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12713\"\u003e#12713\u003c/a\u003e: New [--force-short-summary]{.title-ref} option to force condensed summary output regardless of verbosity level.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/8d99211f0ce3927eb7ee579f7b4f969da06dc787\"\u003e\u003ccode\u003e8d99211\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/5dc5880715633c97310c0593f0ae356de27fa933\"\u003e\u003ccode\u003e5dc5880\u003c/code\u003e\u003c/a\u003e docs: update pytest.ini addopts example to use separate -p entries (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13529\"\u003e#13529\u003c/a\u003e) (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/d0c7ed0bfae5a5f1f9153cd1e464a421d701e925\"\u003e\u003ccode\u003ed0c7ed0\u003c/code\u003e\u003c/a\u003e Reintroduce PytestReturnNotNoneWarning (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13495\"\u003e#13495\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13527\"\u003e#13527\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/a1b3a7879589eb437e4fd97c169b228c3ed58c63\"\u003e\u003ccode\u003ea1b3a78\u003c/code\u003e\u003c/a\u003e Fix compatibility with Twisted 25 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13502\"\u003e#13502\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13531\"\u003e#13531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/4c161aba8ecaab9940040702369025595d26564c\"\u003e\u003ccode\u003e4c161ab\u003c/code\u003e\u003c/a\u003e pytester: avoid unraisableexception gc collects in inline runs to speed up te...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/a86ee09291f913b36fdeec14c42356515b91c979\"\u003e\u003ccode\u003ea86ee09\u003c/code\u003e\u003c/a\u003e Fix typo in parametrize.rst (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13514\"\u003e#13514\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13516\"\u003e#13516\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/1a0581b0227fa07afd1f2c4c6215aec3862cf1ab\"\u003e\u003ccode\u003e1a0581b\u003c/code\u003e\u003c/a\u003e Remove outdated warning about faulthandler_timeout on Windows (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13493\"\u003e#13493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/4e631a71484c2fa49e3fd9f884546af411a4888d\"\u003e\u003ccode\u003e4e631a7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13486\"\u003e#13486\u003c/a\u003e from hosmir/fixtypo (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13487\"\u003e#13487\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b49745ec529f06edfbbe531b766839763b2be3c2\"\u003e\u003ccode\u003eb49745e\u003c/code\u003e\u003c/a\u003e fix: support TerminalReporter.isatty being called (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13462\"\u003e#13462\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13483\"\u003e#13483\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/cc5ceed916d0c63696da33c67e035917194a4e87\"\u003e\u003ccode\u003ecc5ceed\u003c/code\u003e\u003c/a\u003e RELEASING: remove pytest mailing list (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13472\"\u003e#13472\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13473\"\u003e#13473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/8.3.4...8.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-cov` from 6.0.0 to 6.2.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-cov/blob/master/CHANGELOG.rst\"\u003epytest-cov's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.2.1 (2025-06-12)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded a version requirement for pytest's pluggy dependency (1.2.0, released 2023-06-21) that has the required new-style hookwrapper API.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemoved deprecated license classifier (packaging).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDisabled coverage warnings in two more situations where they have no value:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u0026quot;module-not-measured\u0026quot; in workers\u003c/li\u003e\n\u003cli\u003e\u0026quot;already-imported\u0026quot; in subprocesses\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.2.0 (2025-06-11)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe plugin now adds 3 rules in the filter warnings configuration to prevent common coverage warnings being raised as obscure errors::\u003c/p\u003e\n\u003cp\u003edefault:unclosed database in \u0026lt;sqlite3.Connection object at:ResourceWarning\nonce::PytestCovWarning\nonce::CoverageWarning\u003c/p\u003e\n\u003cp\u003eThis fixes most of the bad interactions that are occurring on pytest 8.4 with \u003ccode\u003efilterwarnings=error\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThe plugin will check if there already matching rules for the 3 categories\n(\u003ccode\u003eResourceWarning\u003c/code\u003e, \u003ccode\u003ePytestCovWarning\u003c/code\u003e, \u003ccode\u003eCoverageWarning\u003c/code\u003e) and message (\u003ccode\u003eunclosed database in \u0026lt;sqlite3.Connection object at\u003c/code\u003e) before adding the filters.\u003c/p\u003e\n\u003cp\u003eThis means you can have this in your pytest configuration for complete oblivion (not recommended, if that is not clear)::\u003c/p\u003e\n\u003cp\u003efilterwarnings = [\n\u0026quot;error\u0026quot;,\n\u0026quot;ignore:unclosed database in \u0026lt;sqlite3.Connection object at:ResourceWarning\u0026quot;,\n\u0026quot;ignore::PytestCovWarning\u0026quot;,\n\u0026quot;ignore::CoverageWarning\u0026quot;,\n]\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.1.1 (2025-04-05)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed breakage that occurs when \u003ccode\u003e--cov-context\u003c/code\u003e and the \u003ccode\u003eno_cover\u003c/code\u003e marker are used together.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.1.0 (2025-04-01)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eChange terminal output to use full width lines for the coverage header.\nContributed by Tsvika Shapira in \u003ccode\u003e[#678](https://github.com/pytest-dev/pytest-cov/issues/678) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/678\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eRemoved unnecessary CovFailUnderWarning. Fixes \u003ccode\u003e[#675](https://github.com/pytest-dev/pytest-cov/issues/675) \u0026lt;https://github.com/pytest-dev/pytest-cov/issues/675\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eFixed the term report not using the precision specified via \u003ccode\u003e--cov-precision\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/55dbe43f04f839b760ea346e560276d641998c77\"\u003e\u003ccode\u003e55dbe43\u003c/code\u003e\u003c/a\u003e Bump version: 6.2.0 → 6.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d17e9b765e9832e70fe8101daa2f5f42ce447cc2\"\u003e\u003ccode\u003ed17e9b7\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/8964ab7595dd10748cad66376289476049340ea4\"\u003e\u003ccode\u003e8964ab7\u003c/code\u003e\u003c/a\u003e Add a note for this warning disable.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/e932e41e50f37d03a4d600084411661bc1f08ab8\"\u003e\u003ccode\u003ee932e41\u003c/code\u003e\u003c/a\u003e Prevent unimported warnings @ pytest-xdist workers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/573379ba34539db32cb3a43222f33b7c304af34a\"\u003e\u003ccode\u003e573379b\u003c/code\u003e\u003c/a\u003e Bring pytest-cov's suprocess management in line with coverage's process_start...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f1884e854f2687ccfe36747a11e7f3352f168f90\"\u003e\u003ccode\u003ef1884e8\u003c/code\u003e\u003c/a\u003e Fix xdist pin.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/512c6699010cc0d8145f1f926d876cafba840015\"\u003e\u003ccode\u003e512c669\u003c/code\u003e\u003c/a\u003e Added minium version requirements for pluggin (for new-style hookwrappers). P...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/629ba644a56148d09fe0f2c20602681bc20027a7\"\u003e\u003ccode\u003e629ba64\u003c/code\u003e\u003c/a\u003e Remove deprecated license classifier.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/dca5723086a00e8c145a84761b0ce810a8079892\"\u003e\u003ccode\u003edca5723\u003c/code\u003e\u003c/a\u003e Bump version: 6.1.1 → 6.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f69166a08444db4736c611cdc7746eeac9a2f158\"\u003e\u003ccode\u003ef69166a\u003c/code\u003e\u003c/a\u003e Also trigger the sqlite warning.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v6.0.0...v6.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-mock` from 3.14.0 to 3.14.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-mock/releases\"\u003epytest-mock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.14.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/503\"\u003e#503\u003c/a\u003e: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst\"\u003epytest-mock's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.14.1 (2025-05-26)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#503](https://github.com/pytest-dev/pytest-mock/issues/503) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/503\u0026gt;\u003c/code\u003e_: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/34dd61aa459520e096c70eb8a573700fc17c5de8\"\u003e\u003ccode\u003e34dd61a\u003c/code\u003e\u003c/a\u003e Release 3.14.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/299adb96640a51a48b5af9a69064b9edd7a9fe90\"\u003e\u003ccode\u003e299adb9\u003c/code\u003e\u003c/a\u003e Add support for Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/503\"\u003e#503\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/f5fcef726a8ba4a54cd138321ae9771648a0bc8a\"\u003e\u003ccode\u003ef5fcef7\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/504\"\u003e#504\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/bae64d8c8ef44a7075d63f1d7f6ac36b76b61ce4\"\u003e\u003ccode\u003ebae64d8\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/502\"\u003e#502\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/824f334cc4b39eb05c0093fc43411ada3fdc8300\"\u003e\u003ccode\u003e824f334\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/501\"\u003e#501\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/db1add63034430d66835c78992c0ed9b1e331cfd\"\u003e\u003ccode\u003edb1add6\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/500\"\u003e#500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/48ac8746b6587457becf31d1272947de6d65e0d0\"\u003e\u003ccode\u003e48ac874\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/499\"\u003e#499\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/fe7ad9aab6a8e15e5762d5bdc85402249f2ca7ef\"\u003e\u003ccode\u003efe7ad9a\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/498\"\u003e#498\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/7857e608242aeb3d4b771296ee41d258b1a13838\"\u003e\u003ccode\u003e7857e60\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/497\"\u003e#497\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/a8b97ea2ca86e9cfa553e395cf20352a881d8eaf\"\u003e\u003ccode\u003ea8b97ea\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/496\"\u003e#496\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-mock/compare/v3.14.0...v3.14.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/RecordedFuture-ProfessionalServices/psengine/pull/45","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/RecordedFuture-ProfessionalServices%2Fpsengine/issues/45","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/45/packages"},{"uuid":"3352198207","node_id":"PR_kwDOOQGkKM6lO5PA","number":35,"state":"open","title":"😨 Bump pytest-random-order from 1.1.1 to 1.2.0","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":12,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-08-25T15:00:13.000Z","updated_at":"2025-09-04T14:49:34.599Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"😨 Bump","packages":[{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"}],"path":null,"ecosystem":"pip"},"body":"Bumps [pytest-random-order](https://github.com/jbasko/pytest-random-order) from 1.1.1 to 1.2.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=pytest-random-order\u0026package-manager=pip\u0026previous-version=1.1.1\u0026new-version=1.2.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/RecordedFuture-ProfessionalServices/psengine/pull/35","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/RecordedFuture-ProfessionalServices%2Fpsengine/issues/35","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/35/packages"},{"uuid":"2737465239","node_id":"PR_kwDOO_gais6jKmeX","number":14,"state":"closed","title":"Upgrade: bump the pip-updates group across 1 directory with 15 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-08-18T20:54:44.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-08-12T02:41:28.000Z","updated_at":"2025-08-18T20:54:44.000Z","time_to_close":583996,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Upgrade: bump","group_name":"pip-updates","update_count":15,"packages":[{"name":"django","old_version":"5.2.3","new_version":"5.2.5","repository_url":"https://github.com/django/django"},{"name":"boto3","old_version":"1.38.39","new_version":"1.40.6","repository_url":"https://github.com/boto/boto3"},{"name":"datamodel-code-generator","old_version":"0.31.1","new_version":"0.32.0","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"django-types","old_version":"0.21.0","new_version":"0.22.0","repository_url":"https://github.com/sbdchd/django-types"},{"name":"sentry-sdk","old_version":"2.30.0","new_version":"2.34.1","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"},{"name":"django-rq","old_version":"3.0.1","new_version":"3.1","repository_url":"https://github.com/rq/django-rq"},{"name":"django-simple-history","old_version":"3.8.0","new_version":"3.10.1","repository_url":"https://github.com/django-commons/django-simple-history"},{"name":"pandas","old_version":"2.3.0","new_version":"2.3.1","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"moto","old_version":"5.1.6","new_version":"5.1.9","repository_url":"https://github.com/getmoto/moto"},{"name":"freezegun","old_version":"1.5.2","new_version":"1.5.5","repository_url":"https://github.com/spulec/freezegun"},{"name":"pytest-lazy-fixtures","old_version":"1.1.4","new_version":"1.3.2","repository_url":"https://github.com/dev-petrov/pytest-lazy-fixtures"},{"name":"ruff","old_version":"0.12.0","new_version":"0.12.8","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"mypy","old_version":"1.16.1","new_version":"1.17.1","repository_url":"https://github.com/python/mypy"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-updates group with 15 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [django](https://github.com/django/django) | `5.2.3` | `5.2.5` |\n| [boto3](https://github.com/boto/boto3) | `1.38.39` | `1.40.6` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.31.1` | `0.32.0` |\n| [django-types](https://github.com/sbdchd/django-types) | `0.21.0` | `0.22.0` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.30.0` | `2.34.1` |\n| [pytest-random-order](https://github.com/jbasko/pytest-random-order) | `1.1.1` | `1.2.0` |\n| [django-rq](https://github.com/rq/django-rq) | `3.0.1` | `3.1` |\n| [django-simple-history](https://github.com/django-commons/django-simple-history) | `3.8.0` | `3.10.1` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.3.0` | `2.3.1` |\n| [moto](https://github.com/getmoto/moto) | `5.1.6` | `5.1.9` |\n| [freezegun](https://github.com/spulec/freezegun) | `1.5.2` | `1.5.5` |\n| [pytest-lazy-fixtures](https://github.com/dev-petrov/pytest-lazy-fixtures) | `1.1.4` | `1.3.2` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.12.0` | `0.12.8` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.3.0` |\n| [mypy](https://github.com/python/mypy) | `1.16.1` | `1.17.1` |\n\n\nUpdates `django` from 5.2.3 to 5.2.5\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/a3b1107a4955bdd994908efb4c6e1d03c281e69f\"\u003e\u003ccode\u003ea3b1107\u003c/code\u003e\u003c/a\u003e [5.2.x] Bumped version for 5.2.5 release.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/0489f54e8b047374f0b83fe77695976edcf8c118\"\u003e\u003ccode\u003e0489f54\u003c/code\u003e\u003c/a\u003e [5.2.x] Added release date for 5.2.5.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/a9c7d4b703759e9903dd92899dd8ac662007baf3\"\u003e\u003ccode\u003ea9c7d4b\u003c/code\u003e\u003c/a\u003e [5.2.x] Refs \u003ca href=\"https://redirect.github.com/django/django/issues/36485\"\u003e#36485\u003c/a\u003e -- Grouped docs checks under a unified make check target.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/5ad6d43cd9ae05d3575f9e7bb1cb488bce5d905d\"\u003e\u003ccode\u003e5ad6d43\u003c/code\u003e\u003c/a\u003e [5.2.x] Refs \u003ca href=\"https://redirect.github.com/django/django/issues/34140\"\u003e#34140\u003c/a\u003e -- Added dedicated code block formatting section in docs/...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/bdc3f9e3508fc144c5e9710f5b672cc41f6e742d\"\u003e\u003ccode\u003ebdc3f9e\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/36530\"\u003e#36530\u003c/a\u003e -- Extended fields.E347 to check for ManyToManyField inv...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/f01ceae477a71a1c244c332e1b53a9499e484874\"\u003e\u003ccode\u003ef01ceae\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/36535\"\u003e#36535\u003c/a\u003e -- Ensured compatibility with docutils 0.19 through 0.22.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/5ca58ce3d0d254752caa19e96055f54feadd5582\"\u003e\u003ccode\u003e5ca58ce\u003c/code\u003e\u003c/a\u003e [5.2.x] Corrected assertNumQueries() example in docs/topics/testing/tools.txt.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/b3bb7230e1225861b5c1f08931f2d82c2b04133a\"\u003e\u003ccode\u003eb3bb723\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/34871\"\u003e#34871\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/django/django/issues/36518\"\u003e#36518\u003c/a\u003e -- Implemented unresolved lookups expression rep...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/e5ccb69bc3da407ab2b0477c0cc5db27c7207225\"\u003e\u003ccode\u003ee5ccb69\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/36198\"\u003e#36198\u003c/a\u003e -- Implemented unresolved transform expression replacement.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/5aefd005fc3dd35be6e9e4a24f9c2bc92b69df3b\"\u003e\u003ccode\u003e5aefd00\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed writer_name deprecation warning in docutils 0.22+.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/django/django/compare/5.2.3...5.2.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `boto3` from 1.38.39 to 1.40.6\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/ee92fbdbe80096a044380aac34d18cb938cd81ce\"\u003e\u003ccode\u003eee92fbd\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.6'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/f0a5be5eab86ed388453c8d50079bdbe4a833d32\"\u003e\u003ccode\u003ef0a5be5\u003c/code\u003e\u003c/a\u003e Bumping version to 1.40.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/3773cf3cf53699361eb5957e69f6b9ed55147afe\"\u003e\u003ccode\u003e3773cf3\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/a91e94d0eb70af4c3522803a1f884e581f65a361\"\u003e\u003ccode\u003ea91e94d\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.5'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/d8747bb9f002a6872c803b4b692a37e5ea1214b1\"\u003e\u003ccode\u003ed8747bb\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.5' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/4a3fa2dd03e7fc92697226e9df59e02c8b071980\"\u003e\u003ccode\u003e4a3fa2d\u003c/code\u003e\u003c/a\u003e Bumping version to 1.40.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/fcb006fac415e7ed3b78dbc85b421f5716b8c59d\"\u003e\u003ccode\u003efcb006f\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/b7bfc9012fc327f160183856bf98bf0a8c7e3b05\"\u003e\u003ccode\u003eb7bfc90\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.4'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/4d4ddba9b17a10c3aae952733de9a943eee59b90\"\u003e\u003ccode\u003e4d4ddba\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.4' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/a092acc541e8eddc358c400419bde06e4e4fcc33\"\u003e\u003ccode\u003ea092acc\u003c/code\u003e\u003c/a\u003e Bumping version to 1.40.4\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.38.39...1.40.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `datamodel-code-generator` from 0.31.1 to 0.32.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/releases\"\u003edatamodel-code-generator's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.32.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003emodify __typename field to honor \u003ccode\u003e--use-default-kwarg\u003c/code\u003e flag by \u003ca href=\"https://github.com/rpmcginty\"\u003e\u003ccode\u003e@​rpmcginty\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2420\"\u003ekoxudaxi/datamodel-code-generator#2420\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typo in variable name by \u003ca href=\"https://github.com/eltoder\"\u003e\u003ccode\u003e@​eltoder\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2439\"\u003ekoxudaxi/datamodel-code-generator#2439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSend use_non_positive_negative_number_constrained_types to the data type manager by \u003ca href=\"https://github.com/torarvid\"\u003e\u003ccode\u003e@​torarvid\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2425\"\u003ekoxudaxi/datamodel-code-generator#2425\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow parsing non-string lists for required fields by \u003ca href=\"https://github.com/HeroGamers\"\u003e\u003ccode\u003e@​HeroGamers\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2446\"\u003ekoxudaxi/datamodel-code-generator#2446\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow including path parameters in generated models by \u003ca href=\"https://github.com/MrLoh\"\u003e\u003ccode\u003e@​MrLoh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2445\"\u003ekoxudaxi/datamodel-code-generator#2445\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePassing in treat_dot_as_module bool to Enum init function by \u003ca href=\"https://github.com/LukeAtThat\"\u003e\u003ccode\u003e@​LukeAtThat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2456\"\u003ekoxudaxi/datamodel-code-generator#2456\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: correctly handle multiline comments in Unions by \u003ca href=\"https://github.com/anor4k\"\u003e\u003ccode\u003e@​anor4k\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2454\"\u003ekoxudaxi/datamodel-code-generator#2454\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReturn Parameter and RequestBody DataTypesare  by \u003ca href=\"https://github.com/MrLoh\"\u003e\u003ccode\u003e@​MrLoh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2444\"\u003ekoxudaxi/datamodel-code-generator#2444\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rpmcginty\"\u003e\u003ccode\u003e@​rpmcginty\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2420\"\u003ekoxudaxi/datamodel-code-generator#2420\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eltoder\"\u003e\u003ccode\u003e@​eltoder\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2439\"\u003ekoxudaxi/datamodel-code-generator#2439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/torarvid\"\u003e\u003ccode\u003e@​torarvid\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2425\"\u003ekoxudaxi/datamodel-code-generator#2425\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/HeroGamers\"\u003e\u003ccode\u003e@​HeroGamers\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2446\"\u003ekoxudaxi/datamodel-code-generator#2446\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MrLoh\"\u003e\u003ccode\u003e@​MrLoh\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2445\"\u003ekoxudaxi/datamodel-code-generator#2445\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LukeAtThat\"\u003e\u003ccode\u003e@​LukeAtThat\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2456\"\u003ekoxudaxi/datamodel-code-generator#2456\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anor4k\"\u003e\u003ccode\u003e@​anor4k\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2454\"\u003ekoxudaxi/datamodel-code-generator#2454\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.31.2...0.32.0\"\u003ehttps://github.com/koxudaxi/datamodel-code-generator/compare/0.31.2...0.32.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.31.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: prevent code injection through filename in generated headers by \u003ca href=\"https://github.com/koxudaxi\"\u003e\u003ccode\u003e@​koxudaxi\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2428\"\u003ekoxudaxi/datamodel-code-generator#2428\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.31.2\"\u003ehttps://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.31.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/0070c1c13e5c61c705c9679db7255db1b866b18c\"\u003e\u003ccode\u003e0070c1c\u003c/code\u003e\u003c/a\u003e Return Parameter and RequestBody DataTypesare  (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2444\"\u003e#2444\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/d32cef106b47f2452fe19af0063738b1b360d9af\"\u003e\u003ccode\u003ed32cef1\u003c/code\u003e\u003c/a\u003e fix: correctly handle multiline comments in Unions, and add a test case (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2454\"\u003e#2454\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/a833f6f8b824badfa1ee43131c74c49ece99de43\"\u003e\u003ccode\u003ea833f6f\u003c/code\u003e\u003c/a\u003e Passing in treat_dot_as_module bool to Enum init function (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2456\"\u003e#2456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/82b28d922d45d1e802001da646d0788e5ace9764\"\u003e\u003ccode\u003e82b28d9\u003c/code\u003e\u003c/a\u003e Allow including path parameters in generated models (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2445\"\u003e#2445\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/ec84e8e4e0a648f370d1571319ad2688f04e124a\"\u003e\u003ccode\u003eec84e8e\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2449\"\u003e#2449\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/2ccc4815958899b67e7ed61ed9d4dc67aa9e506c\"\u003e\u003ccode\u003e2ccc481\u003c/code\u003e\u003c/a\u003e Allow parsing non-string lists for required fields (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2446\"\u003e#2446\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/a34acbfad2043178e14de1a7068a8ec3784caf43\"\u003e\u003ccode\u003ea34acbf\u003c/code\u003e\u003c/a\u003e Send use_non_positive_negative_number_constrained_types to the datamodel (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2425\"\u003e#2425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/482ca6ac4315ea517e461296ffca443df72651ac\"\u003e\u003ccode\u003e482ca6a\u003c/code\u003e\u003c/a\u003e Fix typo in variable name (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2439\"\u003e#2439\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/5881f391140fbea444cdcaabaadd0b1b1b6b6550\"\u003e\u003ccode\u003e5881f39\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2430\"\u003e#2430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/75f4241a8daae73774ffa0b830535bf68bf0226e\"\u003e\u003ccode\u003e75f4241\u003c/code\u003e\u003c/a\u003e modify __typename field to honor \u003ccode\u003e--use-default-kwarg\u003c/code\u003e flag (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2420\"\u003e#2420\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.32.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `django-types` from 0.21.0 to 0.22.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sbdchd/django-types/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentry-sdk` from 2.30.0 to 2.34.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/releases\"\u003esentry-sdk's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.34.1\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Make sure Span data in AI instrumentations is always a primitive data type (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4643\"\u003e#4643\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Typo in CHANGELOG.md (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4640\"\u003e#4640\u003c/a\u003e) by \u003ca href=\"https://github.com/jgillard\"\u003e\u003ccode\u003e@​jgillard\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eConsiderably raise \u003ccode\u003eDEFAULT_MAX_VALUE_LENGTH\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4632\"\u003e#4632\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe have increased the string trimming limit considerably, allowing you to see more data\nwithout it being truncated. Note that this might, in rare cases, result in issue regrouping,\nfor example if you're capturing message events with very long messages (longer than the\ndefault 1024 characters/bytes).\u003c/p\u003e\n\u003cp\u003eIf you want to adjust the limit, you can set a\n\u003ca href=\"https://docs.sentry.io/platforms/python/configuration/options/#max_value_length\"\u003e\u003ccode\u003emax_value_length\u003c/code\u003e\u003c/a\u003e\nin your \u003ccode\u003esentry_sdk.init()\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eOpenAI\u003c/code\u003e integration update (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4612\"\u003e#4612\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003eOpenAIIntegration\u003c/code\u003e now supports \u003ca href=\"https://platform.openai.com/docs/api-reference/responses\"\u003eOpenAI Responses API\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe data captured will also show up in the new \u003ca href=\"https://docs.sentry.io/product/insights/agents/dashboard/\"\u003eAI Agents Dashboard\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis works out of the box, nothing to do on your side.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExpose \u003ccode\u003eset_transaction_name\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4634\"\u003e#4634\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix(Celery): Latency should be in milliseconds, not seconds (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4637\"\u003e#4637\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix(Django): Treat \u003ccode\u003edjango.template.context.BasicContext\u003c/code\u003e as sequence in serializer (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4621\"\u003e#4621\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix(Huggingface): Fix \u003ccode\u003ehuggingface_hub\u003c/code\u003e CI tests. (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4619\"\u003e#4619\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: Ignore deliberate thread exception warnings (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4611\"\u003e#4611\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: Socket tests to not use example.com (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4627\"\u003e#4627\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: Threading run patch (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4610\"\u003e#4610\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Simplify celery double patching test (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4626\"\u003e#4626\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Remove remote example.com calls (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4622\"\u003e#4622\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: tox.ini update (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4635\"\u003e#4635\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Update tox (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4609\"\u003e#4609\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.33.2\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eref(spotlight): Do not import \u003ccode\u003esentry_sdk.spotlight\u003c/code\u003e unless enabled (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4607\"\u003e#4607\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eref(gnu-integration): update clickhouse stacktrace parsing (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4598\"\u003e#4598\u003c/a\u003e) by \u003ca href=\"https://github.com/MeredithAnya\"\u003e\u003ccode\u003e@​MeredithAnya\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.33.1\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix(integrations): allow explicit op parameter in \u003ccode\u003eai_track\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4597\"\u003e#4597\u003c/a\u003e) by \u003ca href=\"https://github.com/mshavliuk\"\u003e\u003ccode\u003e@​mshavliuk\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md\"\u003esentry-sdk's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.34.1\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Make sure Span data in AI instrumentations is always a primitive data type (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4643\"\u003e#4643\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Typo in CHANGELOG.md (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4640\"\u003e#4640\u003c/a\u003e) by \u003ca href=\"https://github.com/jgillard\"\u003e\u003ccode\u003e@​jgillard\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eConsiderably raise \u003ccode\u003eDEFAULT_MAX_VALUE_LENGTH\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4632\"\u003e#4632\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe have increased the string trimming limit considerably, allowing you to see more data\nwithout it being truncated. Note that this might, in rare cases, result in issue regrouping,\nfor example if you're capturing message events with very long messages (longer than the\ndefault 1024 characters/bytes).\u003c/p\u003e\n\u003cp\u003eIf you want to adjust the limit, you can set a\n\u003ca href=\"https://docs.sentry.io/platforms/python/configuration/options/#max_value_length\"\u003e\u003ccode\u003emax_value_length\u003c/code\u003e\u003c/a\u003e\nin your \u003ccode\u003esentry_sdk.init()\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eOpenAI\u003c/code\u003e integration update (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4612\"\u003e#4612\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003eOpenAIIntegration\u003c/code\u003e now supports \u003ca href=\"https://platform.openai.com/docs/api-reference/responses\"\u003eOpenAI Responses API\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe data captured will also show up in the new \u003ca href=\"https://docs.sentry.io/product/insights/agents/dashboard/\"\u003eAI Agents Dashboard\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis works out of the box, nothing to do on your side.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExpose \u003ccode\u003eset_transaction_name\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4634\"\u003e#4634\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix(Celery): Latency should be in milliseconds, not seconds (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4637\"\u003e#4637\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix(Django): Treat \u003ccode\u003edjango.template.context.BasicContext\u003c/code\u003e as sequence in serializer (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4621\"\u003e#4621\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix(Huggingface): Fix \u003ccode\u003ehuggingface_hub\u003c/code\u003e CI tests. (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4619\"\u003e#4619\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: Ignore deliberate thread exception warnings (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4611\"\u003e#4611\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: Socket tests to not use example.com (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4627\"\u003e#4627\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: Threading run patch (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4610\"\u003e#4610\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Simplify celery double patching test (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4626\"\u003e#4626\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Remove remote example.com calls (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4622\"\u003e#4622\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: tox.ini update (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4635\"\u003e#4635\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Update tox (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4609\"\u003e#4609\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.33.2\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eref(spotlight): Do not import \u003ccode\u003esentry_sdk.spotlight\u003c/code\u003e unless enabled (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4607\"\u003e#4607\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eref(gnu-integration): update clickhouse stacktrace parsing (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4598\"\u003e#4598\u003c/a\u003e) by \u003ca href=\"https://github.com/MeredithAnya\"\u003e\u003ccode\u003e@​MeredithAnya\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.33.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/9276f2a150c1d0f831d54959b8dc7b138cd50bb6\"\u003e\u003ccode\u003e9276f2a\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/a71ef66d37aa77316713c9e312891009727d55fe\"\u003e\u003ccode\u003ea71ef66\u003c/code\u003e\u003c/a\u003e release: 2.34.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/38b570a467c9633c8c28c8486433038c1a19fdda\"\u003e\u003ccode\u003e38b570a\u003c/code\u003e\u003c/a\u003e Span data is always be a primitive data type (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4643\"\u003e#4643\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/bab6215b1f8b6992c0343992601896adc1963897\"\u003e\u003ccode\u003ebab6215\u003c/code\u003e\u003c/a\u003e Fix typo in CHANGELOG.md (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4640\"\u003e#4640\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/c273f677290efcdd5afda19c14ad9d97ea2bd11f\"\u003e\u003ccode\u003ec273f67\u003c/code\u003e\u003c/a\u003e Merge branch 'release/2.34.0'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/72766a79acf6df132f62584bd6ef4ac47904c155\"\u003e\u003ccode\u003e72766a7\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/e1848d4f33039f04b77caf43d3d2444a18ac2dac\"\u003e\u003ccode\u003ee1848d4\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/e84f6f30682e0b14e5a2ab575d96c686894c5aaa\"\u003e\u003ccode\u003ee84f6f3\u003c/code\u003e\u003c/a\u003e release: 2.34.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/4f9d326c86477052aa30230393497a20edb17da4\"\u003e\u003ccode\u003e4f9d326\u003c/code\u003e\u003c/a\u003e Considerably raise \u003ccode\u003eDEFAULT_MAX_VALUE_LENGTH\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4632\"\u003e#4632\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/fd7dca446da0815e1491a5ec2acdb67e630646fd\"\u003e\u003ccode\u003efd7dca4\u003c/code\u003e\u003c/a\u003e fix(celery): Latency should be in milliseconds, not seconds (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4637\"\u003e#4637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getsentry/sentry-python/compare/2.30.0...2.34.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `django-rq` from 3.0.1 to 3.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rq/django-rq/releases\"\u003edjango-rq's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e/metrics\u003c/code\u003e endpoint to expose RQ metrics in Prometheus format. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded token based authentication for the \u003ccode\u003e/metrics\u003c/code\u003e and \u003ccode\u003e/stats.json\u003c/code\u003e endpoints. Thanks \u003ca href=\"https://github.com/RasmusThing\"\u003e\u003ccode\u003e@​RasmusThing\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eMigrated Django-RQ to use Python's modern packaging standard. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eFixed an issue with setting \u003ccode\u003eresult_ttl\u003c/code\u003e via job decorators. Thanks \u003ca href=\"https://github.com/Sir-heed\"\u003e\u003ccode\u003e@​Sir-heed\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVarious admin page improvements. Thanks \u003ca href=\"https://github.com/selwin\"\u003e\u003ccode\u003e@​selwin\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/DhavalGojiya\"\u003e\u003ccode\u003e@​DhavalGojiya\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rq/django-rq/blob/master/CHANGELOG.md\"\u003edjango-rq's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003eVersion 3.1 (2025-08-02)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e/metrics\u003c/code\u003e endpoint to expose RQ metrics in Prometheus format. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded token based authentication for the \u003ccode\u003e/metrics\u003c/code\u003e and \u003ccode\u003e/stats.json\u003c/code\u003e endpoints. Thanks \u003ca href=\"https://github.com/RasmusThing\"\u003e\u003ccode\u003e@​RasmusThing\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eMigrated Django-RQ to use Python's modern packaging standard. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eFixed an issue with setting \u003ccode\u003eresult_ttl\u003c/code\u003e via job decorators. Thanks \u003ca href=\"https://github.com/Sir-heed\"\u003e\u003ccode\u003e@​Sir-heed\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVarious admin page improvements. Thanks \u003ca href=\"https://github.com/selwin\"\u003e\u003ccode\u003e@​selwin\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/DhavalGojiya\"\u003e\u003ccode\u003e@​DhavalGojiya\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/571082b7849942448ba7f34c4a0a3b88fbebaade\"\u003e\u003ccode\u003e571082b\u003c/code\u003e\u003c/a\u003e Bump version to 3.1 in pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/edd22bd2f5042feecaee8a4034784a930856137a\"\u003e\u003ccode\u003eedd22bd\u003c/code\u003e\u003c/a\u003e Bump version to 3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/f9fadb81699347bf3369053e3cd619226ca2c75d\"\u003e\u003ccode\u003ef9fadb8\u003c/code\u003e\u003c/a\u003e Change url token to header auth and add to /metrics/ aswell (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/718\"\u003e#718\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/fc9a6dee60c05cdd34530e9ce002cda982c65f71\"\u003e\u003ccode\u003efc9a6de\u003c/code\u003e\u003c/a\u003e Update packaging to use modern packaging with a pyproject.toml (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/715\"\u003e#715\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/b1e6e87d0f6da4dcc29ec5745fb4a3665bde10ad\"\u003e\u003ccode\u003eb1e6e87\u003c/code\u003e\u003c/a\u003e Update README.rst\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/429933202673712ba55d6ad49672b73bece04dfc\"\u003e\u003ccode\u003e4299332\u003c/code\u003e\u003c/a\u003e fix job decorator default ttl (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/714\"\u003e#714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/38143405218e0387ca2f4fc2cd48a0d0e7382370\"\u003e\u003ccode\u003e3814340\u003c/code\u003e\u003c/a\u003e Added sorting for deferred_jobs and scheduled_jobs views (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/713\"\u003e#713\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/399c18f3e96ea710deabe27ad64829c46f01583b\"\u003e\u003ccode\u003e399c18f\u003c/code\u003e\u003c/a\u003e fix pyright check (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/707\"\u003e#707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/ec02320dfa342a880278f6b39685047a9cccc9f4\"\u003e\u003ccode\u003eec02320\u003c/code\u003e\u003c/a\u003e [FIX] -- job status display in scheduler listing page template. (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/694\"\u003e#694\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/507b985dd65d67cbce73a1b70d0d1bcb92fc68ab\"\u003e\u003ccode\u003e507b985\u003c/code\u003e\u003c/a\u003e Bump requests from 2.32.0 to 2.32.4 in /integration_test (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/711\"\u003e#711\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rq/django-rq/compare/v3.0.1...v3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `django-simple-history` from 3.8.0 to 3.10.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/django-commons/django-simple-history/releases\"\u003edjango-simple-history's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 3.10.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/blob/3.10.1/CHANGES.rst#3101-2025-06-20\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed changed log syntax to support PyPI packaging. by \u003ca href=\"https://github.com/tim-schilling\"\u003e\u003ccode\u003e@​tim-schilling\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1499\"\u003edjango-commons/django-simple-history#1499\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.10.0...3.10.1\"\u003ehttps://github.com/django-commons/django-simple-history/compare/3.10.0...3.10.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease 3.10.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/jazzband/django-simple-history/blob/3.10.0/CHANGES.rst#3100-2025-06-20\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExclude tests from wheels by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1478\"\u003edjango-commons/django-simple-history#1478\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSwitch repo to Django Commons by \u003ca href=\"https://github.com/tim-schilling\"\u003e\u003ccode\u003e@​tim-schilling\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1429\"\u003edjango-commons/django-simple-history#1429\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for release 3.10.0 by \u003ca href=\"https://github.com/ddabble\"\u003e\u003ccode\u003e@​ddabble\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1498\"\u003edjango-commons/django-simple-history#1498\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1478\"\u003edjango-commons/django-simple-history#1478\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.9.0...3.10.0\"\u003ehttps://github.com/django-commons/django-simple-history/compare/3.9.0...3.10.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease 3.9.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/jazzband/django-simple-history/blob/3.9.0/CHANGES.rst#390-2025-01-26\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove the deprecated \u003ccode\u003esimple_history_admin_list.display_list()\u003c/code\u003e + \u003cstrong\u003eRelease 3.9.0\u003c/strong\u003e by \u003ca href=\"https://github.com/ddabble\"\u003e\u003ccode\u003e@​ddabble\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jazzband/django-simple-history/pull/1444\"\u003ejazzband/django-simple-history#1444\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jazzband/django-simple-history/compare/3.8.0...3.9.0\"\u003ehttps://github.com/jazzband/django-simple-history/compare/3.8.0...3.9.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/django-commons/django-simple-history/blob/master/CHANGES.rst\"\u003edjango-simple-history's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.10.1 (2025-06-20)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed changelog syntax to support PyPI packaging (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1499\"\u003egh-1499\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.0 (2025-06-20)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTests are no longer bundled in released wheels (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1478\"\u003egh-1478\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMove repository to the Django Commons organization (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1391\"\u003egh-1391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.9.0 (2025-01-26)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved the \u003ccode\u003esimple_history_admin_list.display_list()\u003c/code\u003e template tag that was\ndeprecated in version 3.6.0 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1444\"\u003egh-1444\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/dc569842772578558fe4a84e5937d6fc31dd735d\"\u003e\u003ccode\u003edc56984\u003c/code\u003e\u003c/a\u003e Fixed changed log syntax to support PyPI packaging. (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1499\"\u003e#1499\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/58dbb06e68f821c99128b83619a856444319fa04\"\u003e\u003ccode\u003e58dbb06\u003c/code\u003e\u003c/a\u003e Prepare for release 3.10.0 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1498\"\u003e#1498\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/bc9909f32e33f8f33dccd28934994dffb9c4f459\"\u003e\u003ccode\u003ebc9909f\u003c/code\u003e\u003c/a\u003e Switch repo to Django Commons (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1429\"\u003e#1429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/9fb7c5c30b43917eaf98ee5ef266705bd191a825\"\u003e\u003ccode\u003e9fb7c5c\u003c/code\u003e\u003c/a\u003e Bump codecov/codecov-action from 3 to 5 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1425\"\u003e#1425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/7d6b50bf6f4ccbddd75bc3685dc9cf04240176d2\"\u003e\u003ccode\u003e7d6b50b\u003c/code\u003e\u003c/a\u003e Bump coverage from 7.8.0 to 7.9.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1495\"\u003e#1495\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/8bb61757cb9563c2fd0c17e1fa22c53013c311e3\"\u003e\u003ccode\u003e8bb6175\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1482\"\u003e#1482\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/010928f2fc52acd68df41e61686ed233171530e8\"\u003e\u003ccode\u003e010928f\u003c/code\u003e\u003c/a\u003e Bump tox from 4.25.0 to 4.26.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1485\"\u003e#1485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/5721e31055b0c952daf3601b6c35bcde78cab31b\"\u003e\u003ccode\u003e5721e31\u003c/code\u003e\u003c/a\u003e Bump psycopg[binary] from 3.2.6 to 3.2.9 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1484\"\u003e#1484\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/810149708ad11a284cd581972db46142120f824a\"\u003e\u003ccode\u003e8101497\u003c/code\u003e\u003c/a\u003e Bump flake8 from 7.1.2 to 7.2.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1474\"\u003e#1474\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/626ece4082c4a7f87d14566e7a3c568043233ac5\"\u003e\u003ccode\u003e626ece4\u003c/code\u003e\u003c/a\u003e Bump coverage from 7.6.12 to 7.8.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.8.0...3.10.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` from 2.3.0 to 2.3.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pandas-dev/pandas/releases\"\u003epandas's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePandas 2.3.1\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.1.\nThis release includes some improvements and fixes to the future string data type (preview feature for the upcoming pandas 3.0). We recommend that all users upgrade to this version.\u003c/p\u003e\n\u003cp\u003eSee the \u003ca href=\"https://pandas.pydata.org/pandas-docs/version/2.3.1/whatsnew/v2.3.1.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.1 supports Python 3.9 and higher.\u003c/p\u003e\n\u003cp\u003eThe release will be available on the conda-forge channel:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install pandas --channel conda-forge\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr via PyPI:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython3 -m pip install --upgrade pandas\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003ePlease report any issues with the release on the \u003ca href=\"https://github.com/pandas-dev/pandas/issues\"\u003epandas issue tracker\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThanks to all the contributors who made this release possible.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/c888af6d0bb674932007623c0867e1fbd4bdc2c6\"\u003e\u003ccode\u003ec888af6\u003c/code\u003e\u003c/a\u003e RLS: 2.3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/6aea30263edd6817a3ce609c263bd33ce59e5f0a\"\u003e\u003ccode\u003e6aea302\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/61794\"\u003e#61794\u003c/a\u003e on branch 2.3.x (DOC: prepare 2.3.1 whatsnew notes for rel...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/a160ae615fc72e709f3244314f2432706c685355\"\u003e\u003ccode\u003ea160ae6\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG[string]: incorrect index downcast in DataFrame.join (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/61\"\u003e#61\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/cf5db68cd1496339802f9b7694ab67913e9fb62b\"\u003e\u003ccode\u003ecf5db68\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] TST: update expected dtype for sum of decimals with pyarrow ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/50ad136c5e91b4cf00216bc55028711635e66169\"\u003e\u003ccode\u003e50ad136\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/61795\"\u003e#61795\u003c/a\u003e on branch 2.3.x (DOC: add section about upcoming pandas 3....\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/6c762f32575ad3cafe35a4483f8a84ece9e38d5d\"\u003e\u003ccode\u003e6c762f3\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/61770\"\u003e#61770\u003c/a\u003e on branch 2.3.x (BUG: Fix unpickling of string dtypes of l...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/fd99ef70c981fbdd3a5adb8ab3587d369b494353\"\u003e\u003ccode\u003efd99ef7\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/61705\"\u003e#61705\u003c/a\u003e on branch 2.3.x (DOC: add pandas 3.0 migration guide for t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/4e5237db60942cb09f6252ef9f79086704128f41\"\u003e\u003ccode\u003e4e5237d\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] CI: clean up wheel build workarounds now that Cython 3.1.0 i...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/4d42cd8e7e90a21b61a0f55cd07a21b40b30a599\"\u003e\u003ccode\u003e4d42cd8\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;[2.3.x] DEPS: Drop Python 3.9 (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/60792\"\u003e#60792\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/61755\"\u003e#61755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/5d32ae99292f3d5c770b65912c8b113fafb2db57\"\u003e\u003ccode\u003e5d32ae9\u003c/code\u003e\u003c/a\u003e BLD: Build wheels for 3.9 and musllinux-aarch64 for pandas 2.3 (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/61569\"\u003e#61569\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pandas-dev/pandas/compare/v2.3.0...v2.3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `moto` from 5.1.6 to 5.1.9\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getmoto/moto/blob/master/CHANGELOG.md\"\u003emoto's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.1.9\u003c/h2\u003e\n\u003cp\u003eDocker Digest for 5.1.9: \u003cem\u003esha256:1fae2f297efbd05522835fec12c20ae88cb4734e1c4c2b9297ddc3063858dcc4\u003c/em\u003e\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGeneral:\n    * Docker Image is now based on Python 3.13.\n      Various improvements have been made to reduce the total image size from 792MB to 523MB.\n    * A large number of services have been refactored to streamline the generation of API responses, and to ensure that the format is equivalent to AWS'.\n      This should not have any impact - but please let us know if you run into problems.\n\u003cp\u003eMiscellaneous:\n* CloudFormation: ChangeSets now no longer throw an error if the change set is created without the UsePreviousTemplate argument\n* CloudFormation: ChangeSets now also look at default parameters, instead of always expecting a parameter to be provided\n* EC2: describe_images() now supports the 'source-instance-id'-filter\n* Logs: describe_destinations() no longer treats the DestinationNamePrefix-parameter as mandatory\n* ResourceGroupsTaggingAPI: get_resources() now supports ECS: TaskDefinition resources\n* S3: Object notifications (to Lambda/SNS/SQS/etc) now send an URL-encoded key name\u003c/p\u003e\n\u003cp\u003eNew Methods:\n* Athena:\n* create_capacity_reservation()\n* get_capacity_reservation()\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e* ElastiCache:\n    * create_replication_group()\n    * describe_replication_groups()\n\n* EMR:\n    * list_release_labels()\n    * list_supported_instance_types()\n\n* RDS:\n    * create_db_shard_group\n    * describe_db_cluster_parameters()\n    * describe_db_shard_groups()\n    * modify_db_cluster_parameter_group()\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e5.1.8\u003c/h2\u003e\n\u003cp\u003eDocker Digest for 5.1.8: sha256:b5d4a53fc2eefd264b3bfabfc40aa3a883c68c7751d738d490f4e6f2d0191f53\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew Methods:\n\u003cpre\u003e\u003ccode\u003e* Connect-Campaigns:\n    * get_campaign_state()\n    * list_campaigns()\n    * list_tags_for_resource()\n    * pause_campaign()\n    * resume_campaign()\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/6ab7c2e6cc92a6024721869ce95d6679d27d7337\"\u003e\u003ccode\u003e6ab7c2e\u003c/code\u003e\u003c/a\u003e Pre-Release: Up Version Number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/bf89b89af9a4f9181c5a5baa091df17b577e154e\"\u003e\u003ccode\u003ebf89b89\u003c/code\u003e\u003c/a\u003e Prep release 5.1.9 (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9109\"\u003e#9109\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/e6bf4d7b86d8b3866a1141466b015e3ab0e3c14d\"\u003e\u003ccode\u003ee6bf4d7\u003c/code\u003e\u003c/a\u003e Route53: fix create and delete same record multiple times (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9105\"\u003e#9105\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/3f657e502ec8e9a7d88541337e8a4f665bbb18e0\"\u003e\u003ccode\u003e3f657e5\u003c/code\u003e\u003c/a\u003e EC2: integrate AMI responses with core serializer (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9108\"\u003e#9108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/6023a9a697e4ab3cf90fc390d81ce830a8ea4f83\"\u003e\u003ccode\u003e6023a9a\u003c/code\u003e\u003c/a\u003e STS: integrate with core response serializer (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9107\"\u003e#9107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/d37a4364bc1371951b7288d5ca0c78514797262c\"\u003e\u003ccode\u003ed37a436\u003c/code\u003e\u003c/a\u003e chore: update SSM default parameters (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9106\"\u003e#9106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/c3e2fc54b24dbaedc470dc1a2efaa99ae168f35a\"\u003e\u003ccode\u003ec3e2fc5\u003c/code\u003e\u003c/a\u003e ElastiCache: integrate with core response serializer (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9101\"\u003e#9101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/327a1fadee6c84c7483b5e375528c01499d8662d\"\u003e\u003ccode\u003e327a1fa\u003c/code\u003e\u003c/a\u003e [Athena] Add athena capacity reservation endpoint support (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9071\"\u003e#9071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/45da615564087efe620d9a88ca3d03baaf1e8b68\"\u003e\u003ccode\u003e45da615\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Types (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9104\"\u003e#9104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/d7f0dc735d2e038c6461e6db0f914cba22cc5194\"\u003e\u003ccode\u003ed7f0dc7\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Offerings (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9103\"\u003e#9103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getmoto/moto/compare/5.1.6...5.1.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `freezegun` from 1.5.2 to 1.5.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spulec/freezegun/blob/master/CHANGELOG\"\u003efreezegun's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.5.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAllow parametrized arguments called 'func' (Broken in 1.5.4)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Ability to yield fixtures (broken in 1.5.3)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix compatibility with pytest 8.4.0 when using fixtures\u003c/li\u003e\n\u003cli\u003eAdd (back) class-decorator overload to guarantee Pytype understands it\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/c9bf52c5aa12ea1b5b8647a136a92504ea071f2f\"\u003e\u003ccode\u003ec9bf52c\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/0f2bd7ed8b420da73372f4cbb0207b777caa66e9\"\u003e\u003ccode\u003e0f2bd7e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/582\"\u003e#582\u003c/a\u003e from spulec/fixture-called-func\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/a6080557cbcbe4891843934c1334430bb1c5ead7\"\u003e\u003ccode\u003ea608055\u003c/code\u003e\u003c/a\u003e Allow parametrized arguments with name 'func'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/2bb47113a5f9f290d26630c92732e58f49557179\"\u003e\u003ccode\u003e2bb4711\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/7599eeea16b8f206e881892dc104128a5b36de82\"\u003e\u003ccode\u003e7599eee\u003c/code\u003e\u003c/a\u003e Add 1.5.4 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/0d00e7ddd9ad33fc63fbed29af17853b18bc3c61\"\u003e\u003ccode\u003e0d00e7d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/579\"\u003e#579\u003c/a\u003e from zsh8/decorate_generator\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/10c93f2d6c98f82e54470b05144cd0f17d3e1b46\"\u003e\u003ccode\u003e10c93f2\u003c/code\u003e\u003c/a\u003e fix: preserve functionality in pytest yield fixtures\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/d2e0a00addb0653b0cf3be65f8fa7137c7e3bda1\"\u003e\u003ccode\u003ed2e0a00\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/6229e27d27ec61c4c55d7006db7ede6f16d7280a\"\u003e\u003ccode\u003e6229e27\u003c/code\u003e\u003c/a\u003e Add 1.5.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/3111775d6e484f55a85030c626180b592adef569\"\u003e\u003ccode\u003e3111775\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/576\"\u003e#576\u003c/a\u003e from spulec/support-fixtures-pytest-840\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spulec/freezegun/compare/1.5.2...1.5.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-lazy-fixtures` from 1.1.4 to 1.3.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/releases\"\u003epytest-lazy-fixtures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.3.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix nested fixtures collection by \u003ca href=\"https://github.com/dev-petrov\"\u003e\u003ccode\u003e@​dev-petrov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/42\"\u003edev-petrov/pytest-lazy-fixtures#42\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.3.1...1.3.2\"\u003ehttps://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.3.1...1.3.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.3.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix collect_fixtures by \u003ca href=\"https://github.com/dev-petrov\"\u003e\u003ccode\u003e@​dev-petrov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/41\"\u003edev-petrov/pytest-lazy-fixtures#41\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.3.0...1.3.1\"\u003ehttps://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.3.0...1.3.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.3.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deadfixtures support by \u003ca href=\"https://github.com/dev-petrov\"\u003e\u003ccode\u003e@​dev-petrov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/40\"\u003edev-petrov/pytest-lazy-fixtures#40\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.2.0...1.3.0\"\u003ehttps://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.2.0...1.3.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMigrate to uv, add taskfile by \u003ca href=\"https://github.com/dev-petrov\"\u003e\u003ccode\u003e@​dev-petrov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/35\"\u003edev-petrov/pytest-lazy-fixtures#35\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump astral-sh/setup-uv from 5 to 6 in the github-actions group by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/36\"\u003edev-petrov/pytest-lazy-fixtures#36\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eremove .python-version, add matrix to ci-test.yml, change requires-py… by \u003ca href=\"https://github.com/johnmakarov\"\u003e\u003ccode\u003e@​johnmakarov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/38\"\u003edev-petrov/pytest-lazy-fixtures#38\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003estyle: improve comprehensions by \u003ca href=\"https://github.com/jakubbortlik\"\u003e\u003ccode\u003e@​jakubbortlik\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/39\"\u003edev-petrov/pytest-lazy-fixtures#39\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/johnmakarov\"\u003e\u003ccode\u003e@​johnmakarov\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/38\"\u003edev-petrov/pytest-lazy-fixtures#38\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jakubbortlik\"\u003e\u003ccode\u003e@​jakubbortlik\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/39\"\u003edev-petrov/pytest-lazy-fixtures#39\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.1.4...1.2.0\"\u003ehttps://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.1.4...1.2.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/commit/4955f0471b6dc41360c954587dff2d8658d33cbe\"\u003e\u003ccode\u003e4955f04\u003c/code\u003e\u003c/a\u003e Fix nested fixtures collection (\u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/issues/42\"\u003e#42\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/commit/9f65b4d0ba5f0fc3f343e9c506b86f47c3e0c333\"\u003e\u003ccode\u003e9f65b4d\u003c/code\u003e\u003c/a\u003e Fix collect_fixtures (\u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/issues/41\"\u003e#41\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/commit/a070dc479aa16ba80f41767163851fce7b4a755d\"\u003e\u003ccode\u003ea070dc4\u003c/code\u003e\u003c/a\u003e Update README.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/commit/8828fd46119065599a7be5330dab736cbe90ad27\"\u003e\u003ccode\u003e8828fd4\u003c/code\u003e\u003c/a\u003e Add pytest-deadfixtures support (\u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/issues/40\"\u003e#40\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/commit/d505b0e8ac9fe7b62b6430e60c3e9530389bb9d3\"\u003e\u003ccode\u003ed505b0e\u003c/code\u003e\u003c/a\u003e Fix hatchling build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/commit/20925caea92514e06040c5f27280f4e32bdf01be\"\u003e\u003ccode\u003e20925ca\u003c/code\u003e\u003c/a\u003e Fix publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/commit/dcc0dbfe12e5026dee0fae92529d27a28f5f6654\"\u003e\u003ccode\u003edcc0dbf\u003c/code\u003e\u003c/a\u003e style: improve comprehensions (\u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/issues/39\"\u003e#39\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/commit/0c45eaa83be698f86e0f1425d9c8e8b9b993f9ea\"\u003e\u003ccode\u003e0c45eaa\u003c/code\u003e\u003c/a\u003e remove .python-version, add matrix to ci-test.yml, change requires-python (\u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/issues/38\"\u003e#38\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/commit/64bbd989f15c3b251f77b76d18f58c5f3e09c476\"\u003e\u003ccode\u003e64bbd98\u003c/code\u003e\u003c/a\u003e Bump astral-sh/setup-uv from 5 to 6 in the github-actions group (\u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/issues/36\"\u003e#36\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/commit/269c89fbec03d910b099a412722a9526d59590ca\"\u003e\u003ccode\u003e269c89f\u003c/code\u003e\u003c/a\u003e Fix taskfile\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.1.4...1.3.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.12.0 to 0.12.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.8\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Expand \u003ccode\u003ePTH201\u003c/code\u003e to check all \u003ccode\u003ePurePath\u003c/code\u003e subclasses (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19440\"\u003e#19440\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-blind-except\u003c/code\u003e] Change \u003ccode\u003eBLE001\u003c/code\u003e to correctly parse exception tuples (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19747\"\u003e#19747\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Exclude \u003ccode\u003etyping.cast\u003c/code\u003e from \u003ccode\u003eEM101\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19656\"\u003e#19656\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix raw string handling in \u003ccode\u003eSIM905\u003c/code\u003e for embedded quotes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19591\"\u003e#19591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-import-conventions\u003c/code\u003e] Avoid false positives for NFKC-normalized \u003ccode\u003e__debug__\u003c/code\u003e import aliases in \u003ccode\u003eICN001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19411\"\u003e#19411\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eisort\u003c/code\u003e] Fix syntax error after docstring ending with backslash (\u003ccode\u003eI002\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19505\"\u003e#19505\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLC0207\u003c/code\u003e fixes as unsafe when \u003ccode\u003e*args\u003c/code\u003e unpacking is present (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19679\"\u003e#19679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Prevent infinite loop with \u003ccode\u003eI002\u003c/code\u003e (\u003ccode\u003eUP010\u003c/code\u003e, \u003ccode\u003eUP035\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19413\"\u003e#19413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Parenthesize generator expressions in f-strings (\u003ccode\u003eRUF010\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19434\"\u003e#19434\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eeradicate\u003c/code\u003e] Don't flag \u003ccode\u003epyrefly\u003c/code\u003e pragmas as unused code (\u003ccode\u003eERA001\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19731\"\u003e#19731\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReplace \u0026quot;associative\u0026quot; with \u0026quot;commutative\u0026quot; in docs for \u003ccode\u003eRUF036\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19706\"\u003e#19706\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix copy and line separator colors in dark mode (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19630\"\u003e#19630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix link to \u003ccode\u003etyping\u003c/code\u003e documentation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19648\"\u003e#19648\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Make more examples error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19695\"\u003e#19695\u003c/a\u003e,\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19673\"\u003e#19673\u003c/a\u003e,\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19672\"\u003e#19672\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eInclude column numbers in GitLab output format (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19708\"\u003e#19708\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlways expand tabs to four spaces in diagnostics (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19618\"\u003e#19618\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate pre-commit's \u003ccode\u003eruff\u003c/code\u003e id (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19654\"\u003e#19654\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexWaygood\"\u003e\u003ccode\u003e@​AlexWaygood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi\"\u003e\u003ccode\u003e@​BurntSushi\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MatthewMckee4\"\u003e\u003ccode\u003e@​MatthewMckee4\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MeGaGiGaGon\"\u003e\u003ccode\u003e@​MeGaGiGaGon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MichaReiser\"\u003e\u003ccode\u003e@​MichaReiser\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/UnboundVariable\"\u003e\u003ccode\u003e@​UnboundVariable\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cristian64\"\u003e\u003ccode\u003e@​cristian64\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/danparizher\"\u003e\u003ccode\u003e@​danparizher\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcreager\"\u003e\u003ccode\u003e@​dcreager\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/deliro\"\u003e\u003ccode\u003e@​deliro\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dhruvmanila\"\u003e\u003ccode\u003e@​dhruvmanila\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/harshil21\"\u003e\u003ccode\u003e@​harshil21\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hunterhogan\"\u003e\u003ccode\u003e@​hunterhogan\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.8\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Expand \u003ccode\u003ePTH201\u003c/code\u003e to check all \u003ccode\u003ePurePath\u003c/code\u003e subclasses (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19440\"\u003e#19440\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-blind-except\u003c/code\u003e] Change \u003ccode\u003eBLE001\u003c/code\u003e to correctly parse exception tuples (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19747\"\u003e#19747\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Exclude \u003ccode\u003etyping.cast\u003c/code\u003e from \u003ccode\u003eEM101\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19656\"\u003e#19656\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix raw string handling in \u003ccode\u003eSIM905\u003c/code\u003e for embedded quotes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19591\"\u003e#19591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-import-conventions\u003c/code\u003e] Avoid false positives for NFKC-normalized \u003ccode\u003e__debug__\u003c/code\u003e import aliases in \u003ccode\u003eICN001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19411\"\u003e#19411\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eisort\u003c/code\u003e] Fix syntax error after docstring ending with backslash (\u003ccode\u003eI002\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19505\"\u003e#19505\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLC0207\u003c/code\u003e fixes as unsafe when \u003ccode\u003e*args\u003c/code\u003e unpacking is present (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19679\"\u003e#19679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Prevent infinite loop with \u003ccode\u003eI002\u003c/code\u003e (\u003ccode\u003eUP010\u003c/code\u003e, \u003ccode\u003eUP035\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19413\"\u003e#19413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Parenthesize generator expressions in f-strings (\u003ccode\u003eRUF010\u003c/code\u003e) (\u003ca href=\"h...\n\n_Description has been truncated_","html_url":"https://github.com/Ed-BW/consult-demo/pull/14","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ed-BW%2Fconsult-demo/issues/14","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/14/packages"},{"uuid":"2719830901","node_id":"PR_kwDOCG8vVc6iHVN1","number":2582,"state":"closed","title":"Bump the dev-dependencies group across 1 directory with 9 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-08-25T22:40:35.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-08-05T04:32:00.000Z","updated_at":"2025-08-25T22:40:35.000Z","time_to_close":1793315,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"dev-dependencies","update_count":9,"packages":[{"name":"diffoscope","old_version":"296","new_version":"303"},{"name":"mypy","old_version":"1.16.0","new_version":"1.17.1","repository_url":"https://github.com/python/mypy"},{"name":"pytest","old_version":"8.3.5","new_version":"8.4.1","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"6.1.1","new_version":"6.2.1","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-qt","old_version":"4.4.0","new_version":"4.5.0","repository_url":"https://github.com/pytest-dev/pytest-qt"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"},{"name":"translate-toolkit","old_version":"3.15.2","new_version":"3.15.6","repository_url":"https://github.com/translate/translate"},{"name":"types-python-dateutil","old_version":"2.9.0.20250516","new_version":"2.9.0.20250708","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-setuptools","old_version":"80.9.0.20250529","new_version":"80.9.0.20250801","repository_url":"https://github.com/typeshed-internal/stub_uploader"}],"path":null,"ecosystem":"pip"},"body":"Bumps the dev-dependencies group with 9 updates in the /client directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [diffoscope](https://diffoscope.org/) | `296` | `303` |\n| [mypy](https://github.com/python/mypy) | `1.16.0` | `1.17.1` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `8.4.1` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `6.1.1` | `6.2.1` |\n| [pytest-qt](https://github.com/pytest-dev/pytest-qt) | `4.4.0` | `4.5.0` |\n| [pytest-random-order](https://github.com/jbasko/pytest-random-order) | `1.1.1` | `1.2.0` |\n| [translate-toolkit](https://github.com/translate/translate) | `3.15.2` | `3.15.6` |\n| [types-python-dateutil](https://github.com/typeshed-internal/stub_uploader) | `2.9.0.20250516` | `2.9.0.20250708` |\n| [types-setuptools](https://github.com/typeshed-internal/stub_uploader) | `80.9.0.20250529` | `80.9.0.20250801` |\n\n\nUpdates `diffoscope` from 296 to 303\n\nUpdates `mypy` from 1.16.0 to 1.17.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python/mypy/blob/master/CHANGELOG.md\"\u003emypy's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003eMypy 1.17.1\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRetain \u003ccode\u003eNone\u003c/code\u003e as constraints bottom if no bottoms were provided (Stanislav Terliakov, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/19485\"\u003e19485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u0026quot;ignored exception in \u003ccode\u003ehasattr\u003c/code\u003e\u0026quot; in dmypy (Stanislav Terliakov, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/19428\"\u003e19428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent a crash when InitVar is redefined with a method in a subclass (Stanislav Terliakov, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/19453\"\u003e19453\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAcknowledgements\u003c/h3\u003e\n\u003cp\u003eThanks to all mypy contributors who contributed to this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAlexey Makridenko\u003c/li\u003e\n\u003cli\u003eBrian Schubert\u003c/li\u003e\n\u003cli\u003eChad Dombrova\u003c/li\u003e\n\u003cli\u003eChainfire\u003c/li\u003e\n\u003cli\u003eCharlie Denton\u003c/li\u003e\n\u003cli\u003eCharulata\u003c/li\u003e\n\u003cli\u003eChristoph Tyralla\u003c/li\u003e\n\u003cli\u003eCoolCat467\u003c/li\u003e\n\u003cli\u003eDonal Burns\u003c/li\u003e\n\u003cli\u003eGuy Wilson\u003c/li\u003e\n\u003cli\u003eIvan Levkivskyi\u003c/li\u003e\n\u003cli\u003ejohnthagen\u003c/li\u003e\n\u003cli\u003eJukka Lehtosalo\u003c/li\u003e\n\u003cli\u003eŁukasz Kwieciński\u003c/li\u003e\n\u003cli\u003eMarc Mueller\u003c/li\u003e\n\u003cli\u003eMichael J. Sullivan\u003c/li\u003e\n\u003cli\u003eMikhail Golubev\u003c/li\u003e\n\u003cli\u003eSebastian Rittau\u003c/li\u003e\n\u003cli\u003eShantanu\u003c/li\u003e\n\u003cli\u003eStanislav Terliakov\u003c/li\u003e\n\u003cli\u003ewyattscarpenter\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eI’d also like to thank my employer, Dropbox, for supporting mypy development.\u003c/p\u003e\n\u003ch2\u003eMypy 1.16\u003c/h2\u003e\n\u003cp\u003eWe’ve just uploaded mypy 1.16 to the Python Package Index (\u003ca href=\"https://pypi.org/project/mypy/\"\u003ePyPI\u003c/a\u003e).\nMypy is a static type checker for Python. This release includes new features and bug fixes.\nYou can install it as follows:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython3 -m pip install -U mypy\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eYou can read the full documentation for this release on \u003ca href=\"http://mypy.readthedocs.io\"\u003eRead the Docs\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eDifferent Property Getter and Setter Types\u003c/h3\u003e\n\u003cp\u003eMypy now supports using different types for a property getter and setter:\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eclass A:\n    _value: int\n\u0026lt;/tr\u0026gt;\u0026lt;/table\u0026gt; \n\u003c/code\u003e\u003c/pre\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/acb29831e286bbccde37c03bc75381f40a5fdc9e\"\u003e\u003ccode\u003eacb2983\u003c/code\u003e\u003c/a\u003e Bump version to 1.17.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/933c913fbe6d2fbf277ff8d6b2f2298f0f84be64\"\u003e\u003ccode\u003e933c913\u003c/code\u003e\u003c/a\u003e Retain \u003ccode\u003eNone\u003c/code\u003e as constraints bottom if no bottoms were provided (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19485\"\u003e#19485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/5f4428f0286df58169d2f34f4f86561ad617538b\"\u003e\u003ccode\u003e5f4428f\u003c/code\u003e\u003c/a\u003e Fix \u0026quot;ignored exception in \u003ccode\u003ehasattr\u003c/code\u003e\u0026quot; in dmypy (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19428\"\u003e#19428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/88fdeaae0abc92d605fc475fd153b4ad5b239310\"\u003e\u003ccode\u003e88fdeaa\u003c/code\u003e\u003c/a\u003e Prevent a crash when InitVar is redefined with a method in a subclass (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19453\"\u003e#19453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/e44d14f8e52a8890d08726ee753c8754edefd649\"\u003e\u003ccode\u003ee44d14f\u003c/code\u003e\u003c/a\u003e Bump version to 1.17.1+dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/0260991f6b055110c3df36bd5539d4f4489bf153\"\u003e\u003ccode\u003e0260991\u003c/code\u003e\u003c/a\u003e Update version string\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/3901aa2f9523ce55e08d94c1716028d840398753\"\u003e\u003ccode\u003e3901aa2\u003c/code\u003e\u003c/a\u003e Updates to 1.17 changelog (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19436\"\u003e#19436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/7d133961a7e759aab84223bf8038b9489daaa93c\"\u003e\u003ccode\u003e7d13396\u003c/code\u003e\u003c/a\u003e Initial changelog for 1.17 release (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19427\"\u003e#19427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/a182dec997b418b925fe0c28575c50debba0bb3a\"\u003e\u003ccode\u003ea182dec\u003c/code\u003e\u003c/a\u003e Combine the revealed types of multiple iteration steps in a more robust manne...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/ab4fd57d45b7f81cf281b17b7d3697ac9f79bc15\"\u003e\u003ccode\u003eab4fd57\u003c/code\u003e\u003c/a\u003e Improve the handling of \u0026quot;iteration dependent\u0026quot; errors and notes in finally cla...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python/mypy/compare/v1.16.0...v1.17.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 8.3.5 to 8.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.4.1\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.1 (2025-06-17)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13461\"\u003e#13461\u003c/a\u003e: Corrected \u003ccode\u003e_pytest.terminal.TerminalReporter.isatty\u003c/code\u003e to support\nbeing called as a method. Before it was just a boolean which could\nbreak correct code when using \u003ccode\u003e-o log_cli=true\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13477\"\u003e#13477\u003c/a\u003e: Reintroduced \u003ccode\u003epytest.PytestReturnNotNoneWarning\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which was removed by accident in pytest [8.4]{.title-ref}.\u003c/p\u003e\n\u003cp\u003eThis warning is raised when a test functions returns a value other than \u003ccode\u003eNone\u003c/code\u003e, which is often a mistake made by beginners.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ereturn-not-none\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13497\"\u003e#13497\u003c/a\u003e: Fixed compatibility with \u003ccode\u003eTwisted 25+\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e: Fixed outdated warning about \u003ccode\u003efaulthandler\u003c/code\u003e not working on Windows.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.0\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.0 (2025-06-02)\u003c/h1\u003e\n\u003ch2\u003eRemovals and backward incompatible breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11372\"\u003e#11372\u003c/a\u003e: Async tests will now fail, instead of warning+skipping, if you don't have any suitable plugin installed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12346\"\u003e#12346\u003c/a\u003e: Tests will now fail, instead of raising a warning, if they return any value other than None.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12874\"\u003e#12874\u003c/a\u003e: We dropped support for Python 3.8 following its end of life (2024-10-07).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12960\"\u003e#12960\u003c/a\u003e: Test functions containing a yield now cause an explicit error. They have not been run since pytest 4.0, and were previously marked as an expected failure and deprecation warning.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ethe docs \u0026lt;yield tests deprecated\u0026gt;\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDeprecations (removal in next major release)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10839\"\u003e#10839\u003c/a\u003e: Requesting an asynchronous fixture without a [pytest_fixture_setup]{.title-ref} hook that resolves it will now give a DeprecationWarning. This most commonly happens if a sync test requests an async fixture. This should have no effect on a majority of users with async tests or fixtures using async pytest plugins, but may affect non-standard hook setups or \u003ccode\u003eautouse=True\u003c/code\u003e. For guidance on how to work around this warning see \u003ccode\u003esync-test-async-fixture\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11538\"\u003e#11538\u003c/a\u003e: Added \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} as an equivalent to \u003ccode\u003epytest.raises\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} for expecting \u003ccode\u003eExceptionGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;exc\u0026quot;}. Also adds \u003ccode\u003epytest.RaisesExc\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which is now the logic behind \u003ccode\u003epytest.raises\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and used as parameter to \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;}. \u003ccode\u003eRaisesGroup\u003c/code\u003e includes the ability to specify multiple different expected exceptions, the structure of nested exception groups, and flags for emulating \u003ccode\u003eexcept* \u0026lt;except_star\u0026gt;\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}. See \u003ccode\u003eassert-matching-exception-groups\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} and docstrings for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12081\"\u003e#12081\u003c/a\u003e: Added \u003ccode\u003ecapteesys\u003c/code\u003e{.interpreted-text role=\u0026quot;fixture\u0026quot;} to capture AND pass output to next handler set by \u003ccode\u003e--capture=\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12504\"\u003e#12504\u003c/a\u003e: \u003ccode\u003epytest.mark.xfail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now accepts \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} for the \u003ccode\u003eraises\u003c/code\u003e parameter when you expect an exception group. You can also pass a \u003ccode\u003epytest.RaisesExc\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} if you e.g. want to make use of the \u003ccode\u003echeck\u003c/code\u003e parameter.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12713\"\u003e#12713\u003c/a\u003e: New [--force-short-summary]{.title-ref} option to force condensed summary output regardless of verbosity level.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/8d99211f0ce3927eb7ee579f7b4f969da06dc787\"\u003e\u003ccode\u003e8d99211\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/5dc5880715633c97310c0593f0ae356de27fa933\"\u003e\u003ccode\u003e5dc5880\u003c/code\u003e\u003c/a\u003e docs: update pytest.ini addopts example to use separate -p entries (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13529\"\u003e#13529\u003c/a\u003e) (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/d0c7ed0bfae5a5f1f9153cd1e464a421d701e925\"\u003e\u003ccode\u003ed0c7ed0\u003c/code\u003e\u003c/a\u003e Reintroduce PytestReturnNotNoneWarning (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13495\"\u003e#13495\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13527\"\u003e#13527\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/a1b3a7879589eb437e4fd97c169b228c3ed58c63\"\u003e\u003ccode\u003ea1b3a78\u003c/code\u003e\u003c/a\u003e Fix compatibility with Twisted 25 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13502\"\u003e#13502\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13531\"\u003e#13531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/4c161aba8ecaab9940040702369025595d26564c\"\u003e\u003ccode\u003e4c161ab\u003c/code\u003e\u003c/a\u003e pytester: avoid unraisableexception gc collects in inline runs to speed up te...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/a86ee09291f913b36fdeec14c42356515b91c979\"\u003e\u003ccode\u003ea86ee09\u003c/code\u003e\u003c/a\u003e Fix typo in parametrize.rst (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13514\"\u003e#13514\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13516\"\u003e#13516\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/1a0581b0227fa07afd1f2c4c6215aec3862cf1ab\"\u003e\u003ccode\u003e1a0581b\u003c/code\u003e\u003c/a\u003e Remove outdated warning about faulthandler_timeout on Windows (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13493\"\u003e#13493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/4e631a71484c2fa49e3fd9f884546af411a4888d\"\u003e\u003ccode\u003e4e631a7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13486\"\u003e#13486\u003c/a\u003e from hosmir/fixtypo (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13487\"\u003e#13487\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b49745ec529f06edfbbe531b766839763b2be3c2\"\u003e\u003ccode\u003eb49745e\u003c/code\u003e\u003c/a\u003e fix: support TerminalReporter.isatty being called (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13462\"\u003e#13462\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13483\"\u003e#13483\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/cc5ceed916d0c63696da33c67e035917194a4e87\"\u003e\u003ccode\u003ecc5ceed\u003c/code\u003e\u003c/a\u003e RELEASING: remove pytest mailing list (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13472\"\u003e#13472\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13473\"\u003e#13473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/8.3.5...8.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-cov` from 6.1.1 to 6.2.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-cov/blob/master/CHANGELOG.rst\"\u003epytest-cov's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.2.1 (2025-06-12)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded a version requirement for pytest's pluggy dependency (1.2.0, released 2023-06-21) that has the required new-style hookwrapper API.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemoved deprecated license classifier (packaging).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDisabled coverage warnings in two more situations where they have no value:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u0026quot;module-not-measured\u0026quot; in workers\u003c/li\u003e\n\u003cli\u003e\u0026quot;already-imported\u0026quot; in subprocesses\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.2.0 (2025-06-11)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe plugin now adds 3 rules in the filter warnings configuration to prevent common coverage warnings being raised as obscure errors::\u003c/p\u003e\n\u003cp\u003edefault:unclosed database in \u0026lt;sqlite3.Connection object at:ResourceWarning\nonce::PytestCovWarning\nonce::CoverageWarning\u003c/p\u003e\n\u003cp\u003eThis fixes most of the bad interactions that are occurring on pytest 8.4 with \u003ccode\u003efilterwarnings=error\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThe plugin will check if there already matching rules for the 3 categories\n(\u003ccode\u003eResourceWarning\u003c/code\u003e, \u003ccode\u003ePytestCovWarning\u003c/code\u003e, \u003ccode\u003eCoverageWarning\u003c/code\u003e) and message (\u003ccode\u003eunclosed database in \u0026lt;sqlite3.Connection object at\u003c/code\u003e) before adding the filters.\u003c/p\u003e\n\u003cp\u003eThis means you can have this in your pytest configuration for complete oblivion (not recommended, if that is not clear)::\u003c/p\u003e\n\u003cp\u003efilterwarnings = [\n\u0026quot;error\u0026quot;,\n\u0026quot;ignore:unclosed database in \u0026lt;sqlite3.Connection object at:ResourceWarning\u0026quot;,\n\u0026quot;ignore::PytestCovWarning\u0026quot;,\n\u0026quot;ignore::CoverageWarning\u0026quot;,\n]\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/55dbe43f04f839b760ea346e560276d641998c77\"\u003e\u003ccode\u003e55dbe43\u003c/code\u003e\u003c/a\u003e Bump version: 6.2.0 → 6.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d17e9b765e9832e70fe8101daa2f5f42ce447cc2\"\u003e\u003ccode\u003ed17e9b7\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/8964ab7595dd10748cad66376289476049340ea4\"\u003e\u003ccode\u003e8964ab7\u003c/code\u003e\u003c/a\u003e Add a note for this warning disable.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/e932e41e50f37d03a4d600084411661bc1f08ab8\"\u003e\u003ccode\u003ee932e41\u003c/code\u003e\u003c/a\u003e Prevent unimported warnings @ pytest-xdist workers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/573379ba34539db32cb3a43222f33b7c304af34a\"\u003e\u003ccode\u003e573379b\u003c/code\u003e\u003c/a\u003e Bring pytest-cov's suprocess management in line with coverage's process_start...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f1884e854f2687ccfe36747a11e7f3352f168f90\"\u003e\u003ccode\u003ef1884e8\u003c/code\u003e\u003c/a\u003e Fix xdist pin.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/512c6699010cc0d8145f1f926d876cafba840015\"\u003e\u003ccode\u003e512c669\u003c/code\u003e\u003c/a\u003e Added minium version requirements for pluggin (for new-style hookwrappers). P...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/629ba644a56148d09fe0f2c20602681bc20027a7\"\u003e\u003ccode\u003e629ba64\u003c/code\u003e\u003c/a\u003e Remove deprecated license classifier.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/dca5723086a00e8c145a84761b0ce810a8079892\"\u003e\u003ccode\u003edca5723\u003c/code\u003e\u003c/a\u003e Bump version: 6.1.1 → 6.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f69166a08444db4736c611cdc7746eeac9a2f158\"\u003e\u003ccode\u003ef69166a\u003c/code\u003e\u003c/a\u003e Also trigger the sqlite warning.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v6.1.1...v6.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-qt` from 4.4.0 to 4.5.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-qt/blob/master/CHANGELOG.rst\"\u003epytest-qt's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.5.0 (2025-07-01)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded official support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eDropped support for EOL Python 3.8.\u003c/li\u003e\n\u003cli\u003eDropped support for EOL PySide 2.\u003c/li\u003e\n\u003cli\u003eType annotations are now provided. Note that because the Qt library used is defined at runtime, Qt classes are currently annotated as \u003ccode\u003eAny\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eFixed PySide6 exceptions / warnings about being unable to disconnect signals\nwith \u003ccode\u003eqtbot.waitSignal\u003c/code\u003e (\u003ccode\u003e[#552](https://github.com/pytest-dev/pytest-qt/issues/552)\u003c/code\u003e\u003cem\u003e, \u003ccode\u003e[#558](https://github.com/pytest-dev/pytest-qt/issues/558)\u003c/code\u003e\u003c/em\u003e).\u003c/li\u003e\n\u003cli\u003eReduced the likelyhood of trouble when using \u003ccode\u003eqtbot.waitSignal(s)\u003c/code\u003e and\n\u003ccode\u003eqtbot.waitCallback\u003c/code\u003e where the signal/callback is emitted from a non-main\nthread. In theory, more problems remain and this isn't a proper fix yet. In\npractice, it seems impossible to provoke any problems in pytest-qt's testsuite.\n(\u003ccode\u003e[#586](https://github.com/pytest-dev/pytest-qt/issues/586)\u003c/code\u003e_)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e..  _\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/552\"\u003e#552\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/552\"\u003epytest-dev/pytest-qt#552\u003c/a\u003e\n..  _\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/558\"\u003e#558\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/558\"\u003epytest-dev/pytest-qt#558\u003c/a\u003e\n..  _\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/586\"\u003e#586\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/586\"\u003epytest-dev/pytest-qt#586\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/372ab6853bdbecea0883d5486409dcaa16062eba\"\u003e\u003ccode\u003e372ab68\u003c/code\u003e\u003c/a\u003e Release 4.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/71939a789c4ba87d2436d2a9fc9c8374b589561d\"\u003e\u003ccode\u003e71939a7\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/609\"\u003e#609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/8b2c0cbf02a64a0e63ef84668a01e6a166150455\"\u003e\u003ccode\u003e8b2c0cb\u003c/code\u003e\u003c/a\u003e fix wrong type ignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/1fd7324429b9f886d0eb06c11812f83b28b0b951\"\u003e\u003ccode\u003e1fd7324\u003c/code\u003e\u003c/a\u003e pytest dependency for mypy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/645dc83cb25caa837b2441073709ced5b0fc2f3b\"\u003e\u003ccode\u003e645dc83\u003c/code\u003e\u003c/a\u003e remove deprecated annotations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/84c653d3e2b292c7236dbe892a5ce83fc899b6b7\"\u003e\u003ccode\u003e84c653d\u003c/code\u003e\u003c/a\u003e remove already default config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/43b4147b258d7e9fe9dbea9e451cc2e610e58e9a\"\u003e\u003ccode\u003e43b4147\u003c/code\u003e\u003c/a\u003e Update qtbot.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/1626a636038fb41038de0e864392fdaec79f5105\"\u003e\u003ccode\u003e1626a63\u003c/code\u003e\u003c/a\u003e Update qtbot.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/a365e0ee9fd2e72d6dee02e7809f4121d0c8ce67\"\u003e\u003ccode\u003ea365e0e\u003c/code\u003e\u003c/a\u003e Update setup.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/7993efe352198451b4bdcbd44dacd6a1354c21d0\"\u003e\u003ccode\u003e7993efe\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.rst\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-qt/compare/4.4.0...4.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `translate-toolkit` from 3.15.2 to 3.15.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/translate/translate/releases\"\u003etranslate-toolkit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.15.6\u003c/h2\u003e\n\u003cp\u003eThe major changes in this release are:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for upcoming changes in the PO format (see \u003ca href=\"https://lists.gnu.org/archive/html/bug-gettext/2025-06/msg00018.html\"\u003ehttps://lists.gnu.org/archive/html/bug-gettext/2025-06/msg00018.html\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompatibility with lxml 6\u003c/li\u003e\n\u003cli\u003eConverters support multiple \u003ccode\u003e--input\u003c/code\u003e parameters\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eRead the full \u003ca href=\"https://docs.translatehouse.org/projects/translate-toolkit/en/latest/releases/3.15.6.html\"\u003eRelease notes\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003e3.15.5\u003c/h2\u003e\n\u003cp\u003eThe major changes in this release are:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Compose Multiplatform Resources\u003c/li\u003e\n\u003cli\u003eAdded language definition for Toki Pona\u003c/li\u003e\n\u003cli\u003eFixed publishing issues in the 3.15.4 release\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eRead the full \u003ca href=\"https://docs.translatehouse.org/projects/translate-toolkit/en/latest/releases/3.15.5.html\"\u003eRelease notes\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003e3.15.4\u003c/h2\u003e\n\u003cp\u003eThis release was yanked because it was built wrongly.\u003c/p\u003e\n\u003ch2\u003e3.15.3\u003c/h2\u003e\n\u003cp\u003eThe major changes in this release are:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImprovements to TBX, Android, and MO formats.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eRead the full \u003ca href=\"https://docs.translatehouse.org/projects/translate-toolkit/en/latest/releases/3.15.3.html\"\u003eRelease notes\u003c/a\u003e for more details.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/458a385f0fe1248b02e8afe2e1991dd2d331ba87\"\u003e\u003ccode\u003e458a385\u003c/code\u003e\u003c/a\u003e chore: release 3.15.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/cb210d0525321e75b98db8bc4c80096add18607e\"\u003e\u003ccode\u003ecb210d0\u003c/code\u003e\u003c/a\u003e feat(po): support for #= as new flags in PO file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/b152396f5430d7539e6d1871a532a78347f06970\"\u003e\u003ccode\u003eb152396\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency pytest-xdist to v3.8.0 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5630\"\u003e#5630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/f0482dc9eefc617fc9cd9c054b19c2dc3cd3bdb3\"\u003e\u003ccode\u003ef0482dc\u003c/code\u003e\u003c/a\u003e fix(deps): update dependency lxml to v6 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5624\"\u003e#5624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/3f9b17473b05daa21d429d6de9831bcc0e741651\"\u003e\u003ccode\u003e3f9b174\u003c/code\u003e\u003c/a\u003e feat: include xml.xsd for linting xliff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/50ef6304455fccd985453250140b4b88913a29f3\"\u003e\u003ccode\u003e50ef630\u003c/code\u003e\u003c/a\u003e chore(deps): update ncipollo/release-action action to v1.18.0 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5627\"\u003e#5627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/4a781fd97e70a24f3fc7c075ff3206af6ad96937\"\u003e\u003ccode\u003e4a781fd\u003c/code\u003e\u003c/a\u003e chore(deps): update ncipollo/release-action action to v1.17.0 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5626\"\u003e#5626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/a4e67d528eb4ea2ac2e6fa3f5ab4416bb45d3f22\"\u003e\u003ccode\u003ea4e67d5\u003c/code\u003e\u003c/a\u003e chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.12.1 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5625\"\u003e#5625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/16726cf2bbd0e1cc29cb0e2fe728d8045cbfe168\"\u003e\u003ccode\u003e16726cf\u003c/code\u003e\u003c/a\u003e chore(deps): update pre-commit hook macisamuele/language-formatters-pre-commi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/2235850f37a089857799e11d65a6aeb8f597ba9e\"\u003e\u003ccode\u003e2235850\u003c/code\u003e\u003c/a\u003e chore(deps): update astral-sh/setup-uv action to v6.3.1 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5622\"\u003e#5622\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/translate/translate/compare/3.15.2...3.15.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `types-python-dateutil` from 2.9.0.20250516 to 2.9.0.20250708\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/typeshed-internal/stub_uploader/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `types-setuptools` from 80.9.0.20250529 to 80.9.0.20250801\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/typeshed-internal/stub_uploader/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/freedomofpress/securedrop-client/pull/2582","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/freedomofpress%2Fsecuredrop-client/issues/2582","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2582/packages"},{"uuid":"2711714387","node_id":"PR_kwDOCnUW4M6hoXpT","number":1342,"state":"closed","title":"Bump pytest-random-order from 1.1.1 to 1.2.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-08-01T13:52:09.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-08-01T02:00:14.000Z","updated_at":"2025-08-01T13:52:09.000Z","time_to_close":42715,"merged_at":"2025-08-01T13:52:09.000Z","merged_by":"VGPReys","closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"}],"path":null,"ecosystem":"pip"},"body":"Bumps [pytest-random-order](https://github.com/jbasko/pytest-random-order) from 1.1.1 to 1.2.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=pytest-random-order\u0026package-manager=pip\u0026previous-version=1.1.1\u0026new-version=1.2.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/haddocking/haddock3/pull/1342","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/haddocking%2Fhaddock3/issues/1342","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1342/packages"},{"uuid":"2648125664","node_id":"PR_kwDOCG8vVc6d1zDg","number":2522,"state":"closed","title":"chore(deps-dev): bump the dev-dependencies group across 1 directory with 7 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-07-10T16:44:21.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-07-07T23:38:45.000Z","updated_at":"2025-07-10T16:44:21.000Z","time_to_close":234336,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev): bump","group_name":"dev-dependencies","update_count":7,"packages":[{"name":"diffoscope","old_version":"296","new_version":"300"},{"name":"mypy","old_version":"1.16.0","new_version":"1.16.1","repository_url":"https://github.com/python/mypy"},{"name":"pytest","old_version":"8.3.5","new_version":"8.4.1","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"6.1.1","new_version":"6.2.1","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-qt","old_version":"4.4.0","new_version":"4.5.0","repository_url":"https://github.com/pytest-dev/pytest-qt"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"},{"name":"translate-toolkit","old_version":"3.15.2","new_version":"3.15.6","repository_url":"https://github.com/translate/translate"}],"path":null,"ecosystem":"pip"},"body":"Bumps the dev-dependencies group with 7 updates in the /client directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [diffoscope](https://diffoscope.org/) | `296` | `300` |\n| [mypy](https://github.com/python/mypy) | `1.16.0` | `1.16.1` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `8.4.1` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `6.1.1` | `6.2.1` |\n| [pytest-qt](https://github.com/pytest-dev/pytest-qt) | `4.4.0` | `4.5.0` |\n| [pytest-random-order](https://github.com/jbasko/pytest-random-order) | `1.1.1` | `1.2.0` |\n| [translate-toolkit](https://github.com/translate/translate) | `3.15.2` | `3.15.6` |\n\n\nUpdates `diffoscope` from 296 to 300\n\nUpdates `mypy` from 1.16.0 to 1.16.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/68b8fa097d080c92d30a429bc74de8acd56caf85\"\u003e\u003ccode\u003e68b8fa0\u003c/code\u003e\u003c/a\u003e Bump version to 1.16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/e253eded9c887630f3f5404c4b9f73f13570476a\"\u003e\u003ccode\u003ee253ede\u003c/code\u003e\u003c/a\u003e Single underscore is not a sunder (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19273\"\u003e#19273\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/9fb5ff66c51bd971d7a6b1260cc0ec9f1b82cc06\"\u003e\u003ccode\u003e9fb5ff6\u003c/code\u003e\u003c/a\u003e Fix properties with setters after deleters (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19248\"\u003e#19248\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/c20fd7838338cd65d6c7c6e252eda85996cfc98e\"\u003e\u003ccode\u003ec20fd78\u003c/code\u003e\u003c/a\u003e Handle assignment of bound methods in class bodies (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19233\"\u003e#19233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/c86480ce51e4bb6db21f4b3f0b3ec8833aafc8ce\"\u003e\u003ccode\u003ec86480c\u003c/code\u003e\u003c/a\u003e Tighten metaclass \u003cstrong\u003ecall\u003c/strong\u003e handling in protocols (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19191\"\u003e#19191\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/cb3c6ec6a7aaa96a0e26768a946ac63ea14115f2\"\u003e\u003ccode\u003ecb3c6ec\u003c/code\u003e\u003c/a\u003e Fix crash on partial type used as context (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19216\"\u003e#19216\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/c39f5e73c47182e51c5d8d488f7cc7301257c974\"\u003e\u003ccode\u003ec39f5e7\u003c/code\u003e\u003c/a\u003e [mypyc] Fixing condition for handling user-defined \u003cstrong\u003edel\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19188\"\u003e#19188\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/0a4f28431faa18e59d35bc269cb0ea6c00810653\"\u003e\u003ccode\u003e0a4f284\u003c/code\u003e\u003c/a\u003e Fix crash on invalid property inside its own body (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19208\"\u003e#19208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/9b079f6592740a51c0e629728eeb0324ad85126f\"\u003e\u003ccode\u003e9b079f6\u003c/code\u003e\u003c/a\u003e Bump version to 1.16.1+dev\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/python/mypy/compare/v1.16.0...v1.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 8.3.5 to 8.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.4.1\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.1 (2025-06-17)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13461\"\u003e#13461\u003c/a\u003e: Corrected \u003ccode\u003e_pytest.terminal.TerminalReporter.isatty\u003c/code\u003e to support\nbeing called as a method. Before it was just a boolean which could\nbreak correct code when using \u003ccode\u003e-o log_cli=true\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13477\"\u003e#13477\u003c/a\u003e: Reintroduced \u003ccode\u003epytest.PytestReturnNotNoneWarning\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which was removed by accident in pytest [8.4]{.title-ref}.\u003c/p\u003e\n\u003cp\u003eThis warning is raised when a test functions returns a value other than \u003ccode\u003eNone\u003c/code\u003e, which is often a mistake made by beginners.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ereturn-not-none\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13497\"\u003e#13497\u003c/a\u003e: Fixed compatibility with \u003ccode\u003eTwisted 25+\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e: Fixed outdated warning about \u003ccode\u003efaulthandler\u003c/code\u003e not working on Windows.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.0\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.0 (2025-06-02)\u003c/h1\u003e\n\u003ch2\u003eRemovals and backward incompatible breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11372\"\u003e#11372\u003c/a\u003e: Async tests will now fail, instead of warning+skipping, if you don't have any suitable plugin installed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12346\"\u003e#12346\u003c/a\u003e: Tests will now fail, instead of raising a warning, if they return any value other than None.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12874\"\u003e#12874\u003c/a\u003e: We dropped support for Python 3.8 following its end of life (2024-10-07).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12960\"\u003e#12960\u003c/a\u003e: Test functions containing a yield now cause an explicit error. They have not been run since pytest 4.0, and were previously marked as an expected failure and deprecation warning.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ethe docs \u0026lt;yield tests deprecated\u0026gt;\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDeprecations (removal in next major release)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10839\"\u003e#10839\u003c/a\u003e: Requesting an asynchronous fixture without a [pytest_fixture_setup]{.title-ref} hook that resolves it will now give a DeprecationWarning. This most commonly happens if a sync test requests an async fixture. This should have no effect on a majority of users with async tests or fixtures using async pytest plugins, but may affect non-standard hook setups or \u003ccode\u003eautouse=True\u003c/code\u003e. For guidance on how to work around this warning see \u003ccode\u003esync-test-async-fixture\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11538\"\u003e#11538\u003c/a\u003e: Added \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} as an equivalent to \u003ccode\u003epytest.raises\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} for expecting \u003ccode\u003eExceptionGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;exc\u0026quot;}. Also adds \u003ccode\u003epytest.RaisesExc\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which is now the logic behind \u003ccode\u003epytest.raises\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and used as parameter to \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;}. \u003ccode\u003eRaisesGroup\u003c/code\u003e includes the ability to specify multiple different expected exceptions, the structure of nested exception groups, and flags for emulating \u003ccode\u003eexcept* \u0026lt;except_star\u0026gt;\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}. See \u003ccode\u003eassert-matching-exception-groups\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} and docstrings for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12081\"\u003e#12081\u003c/a\u003e: Added \u003ccode\u003ecapteesys\u003c/code\u003e{.interpreted-text role=\u0026quot;fixture\u0026quot;} to capture AND pass output to next handler set by \u003ccode\u003e--capture=\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12504\"\u003e#12504\u003c/a\u003e: \u003ccode\u003epytest.mark.xfail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now accepts \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} for the \u003ccode\u003eraises\u003c/code\u003e parameter when you expect an exception group. You can also pass a \u003ccode\u003epytest.RaisesExc\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} if you e.g. want to make use of the \u003ccode\u003echeck\u003c/code\u003e parameter.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12713\"\u003e#12713\u003c/a\u003e: New [--force-short-summary]{.title-ref} option to force condensed summary output regardless of verbosity level.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/8d99211f0ce3927eb7ee579f7b4f969da06dc787\"\u003e\u003ccode\u003e8d99211\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/5dc5880715633c97310c0593f0ae356de27fa933\"\u003e\u003ccode\u003e5dc5880\u003c/code\u003e\u003c/a\u003e docs: update pytest.ini addopts example to use separate -p entries (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13529\"\u003e#13529\u003c/a\u003e) (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/d0c7ed0bfae5a5f1f9153cd1e464a421d701e925\"\u003e\u003ccode\u003ed0c7ed0\u003c/code\u003e\u003c/a\u003e Reintroduce PytestReturnNotNoneWarning (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13495\"\u003e#13495\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13527\"\u003e#13527\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/a1b3a7879589eb437e4fd97c169b228c3ed58c63\"\u003e\u003ccode\u003ea1b3a78\u003c/code\u003e\u003c/a\u003e Fix compatibility with Twisted 25 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13502\"\u003e#13502\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13531\"\u003e#13531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/4c161aba8ecaab9940040702369025595d26564c\"\u003e\u003ccode\u003e4c161ab\u003c/code\u003e\u003c/a\u003e pytester: avoid unraisableexception gc collects in inline runs to speed up te...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/a86ee09291f913b36fdeec14c42356515b91c979\"\u003e\u003ccode\u003ea86ee09\u003c/code\u003e\u003c/a\u003e Fix typo in parametrize.rst (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13514\"\u003e#13514\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13516\"\u003e#13516\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/1a0581b0227fa07afd1f2c4c6215aec3862cf1ab\"\u003e\u003ccode\u003e1a0581b\u003c/code\u003e\u003c/a\u003e Remove outdated warning about faulthandler_timeout on Windows (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13493\"\u003e#13493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/4e631a71484c2fa49e3fd9f884546af411a4888d\"\u003e\u003ccode\u003e4e631a7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13486\"\u003e#13486\u003c/a\u003e from hosmir/fixtypo (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13487\"\u003e#13487\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b49745ec529f06edfbbe531b766839763b2be3c2\"\u003e\u003ccode\u003eb49745e\u003c/code\u003e\u003c/a\u003e fix: support TerminalReporter.isatty being called (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13462\"\u003e#13462\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13483\"\u003e#13483\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/cc5ceed916d0c63696da33c67e035917194a4e87\"\u003e\u003ccode\u003ecc5ceed\u003c/code\u003e\u003c/a\u003e RELEASING: remove pytest mailing list (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13472\"\u003e#13472\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13473\"\u003e#13473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/8.3.5...8.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-cov` from 6.1.1 to 6.2.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-cov/blob/master/CHANGELOG.rst\"\u003epytest-cov's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.2.1 (2025-06-12)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded a version requirement for pytest's pluggy dependency (1.2.0, released 2023-06-21) that has the required new-style hookwrapper API.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemoved deprecated license classifier (packaging).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDisabled coverage warnings in two more situations where they have no value:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u0026quot;module-not-measured\u0026quot; in workers\u003c/li\u003e\n\u003cli\u003e\u0026quot;already-imported\u0026quot; in subprocesses\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.2.0 (2025-06-11)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe plugin now adds 3 rules in the filter warnings configuration to prevent common coverage warnings being raised as obscure errors::\u003c/p\u003e\n\u003cp\u003edefault:unclosed database in \u0026lt;sqlite3.Connection object at:ResourceWarning\nonce::PytestCovWarning\nonce::CoverageWarning\u003c/p\u003e\n\u003cp\u003eThis fixes most of the bad interactions that are occurring on pytest 8.4 with \u003ccode\u003efilterwarnings=error\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThe plugin will check if there already matching rules for the 3 categories\n(\u003ccode\u003eResourceWarning\u003c/code\u003e, \u003ccode\u003ePytestCovWarning\u003c/code\u003e, \u003ccode\u003eCoverageWarning\u003c/code\u003e) and message (\u003ccode\u003eunclosed database in \u0026lt;sqlite3.Connection object at\u003c/code\u003e) before adding the filters.\u003c/p\u003e\n\u003cp\u003eThis means you can have this in your pytest configuration for complete oblivion (not recommended, if that is not clear)::\u003c/p\u003e\n\u003cp\u003efilterwarnings = [\n\u0026quot;error\u0026quot;,\n\u0026quot;ignore:unclosed database in \u0026lt;sqlite3.Connection object at:ResourceWarning\u0026quot;,\n\u0026quot;ignore::PytestCovWarning\u0026quot;,\n\u0026quot;ignore::CoverageWarning\u0026quot;,\n]\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/55dbe43f04f839b760ea346e560276d641998c77\"\u003e\u003ccode\u003e55dbe43\u003c/code\u003e\u003c/a\u003e Bump version: 6.2.0 → 6.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d17e9b765e9832e70fe8101daa2f5f42ce447cc2\"\u003e\u003ccode\u003ed17e9b7\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/8964ab7595dd10748cad66376289476049340ea4\"\u003e\u003ccode\u003e8964ab7\u003c/code\u003e\u003c/a\u003e Add a note for this warning disable.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/e932e41e50f37d03a4d600084411661bc1f08ab8\"\u003e\u003ccode\u003ee932e41\u003c/code\u003e\u003c/a\u003e Prevent unimported warnings @ pytest-xdist workers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/573379ba34539db32cb3a43222f33b7c304af34a\"\u003e\u003ccode\u003e573379b\u003c/code\u003e\u003c/a\u003e Bring pytest-cov's suprocess management in line with coverage's process_start...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f1884e854f2687ccfe36747a11e7f3352f168f90\"\u003e\u003ccode\u003ef1884e8\u003c/code\u003e\u003c/a\u003e Fix xdist pin.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/512c6699010cc0d8145f1f926d876cafba840015\"\u003e\u003ccode\u003e512c669\u003c/code\u003e\u003c/a\u003e Added minium version requirements for pluggin (for new-style hookwrappers). P...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/629ba644a56148d09fe0f2c20602681bc20027a7\"\u003e\u003ccode\u003e629ba64\u003c/code\u003e\u003c/a\u003e Remove deprecated license classifier.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/dca5723086a00e8c145a84761b0ce810a8079892\"\u003e\u003ccode\u003edca5723\u003c/code\u003e\u003c/a\u003e Bump version: 6.1.1 → 6.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f69166a08444db4736c611cdc7746eeac9a2f158\"\u003e\u003ccode\u003ef69166a\u003c/code\u003e\u003c/a\u003e Also trigger the sqlite warning.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v6.1.1...v6.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-qt` from 4.4.0 to 4.5.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-qt/blob/master/CHANGELOG.rst\"\u003epytest-qt's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.5.0 (2025-07-01)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded official support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eDropped support for EOL Python 3.8.\u003c/li\u003e\n\u003cli\u003eDropped support for EOL PySide 2.\u003c/li\u003e\n\u003cli\u003eType annotations are now provided. Note that because the Qt library used is defined at runtime, Qt classes are currently annotated as \u003ccode\u003eAny\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eFixed PySide6 exceptions / warnings about being unable to disconnect signals\nwith \u003ccode\u003eqtbot.waitSignal\u003c/code\u003e (\u003ccode\u003e[#552](https://github.com/pytest-dev/pytest-qt/issues/552)\u003c/code\u003e\u003cem\u003e, \u003ccode\u003e[#558](https://github.com/pytest-dev/pytest-qt/issues/558)\u003c/code\u003e\u003c/em\u003e).\u003c/li\u003e\n\u003cli\u003eReduced the likelyhood of trouble when using \u003ccode\u003eqtbot.waitSignal(s)\u003c/code\u003e and\n\u003ccode\u003eqtbot.waitCallback\u003c/code\u003e where the signal/callback is emitted from a non-main\nthread. In theory, more problems remain and this isn't a proper fix yet. In\npractice, it seems impossible to provoke any problems in pytest-qt's testsuite.\n(\u003ccode\u003e[#586](https://github.com/pytest-dev/pytest-qt/issues/586)\u003c/code\u003e_)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e..  _\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/552\"\u003e#552\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/552\"\u003epytest-dev/pytest-qt#552\u003c/a\u003e\n..  _\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/558\"\u003e#558\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/558\"\u003epytest-dev/pytest-qt#558\u003c/a\u003e\n..  _\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/586\"\u003e#586\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/586\"\u003epytest-dev/pytest-qt#586\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/372ab6853bdbecea0883d5486409dcaa16062eba\"\u003e\u003ccode\u003e372ab68\u003c/code\u003e\u003c/a\u003e Release 4.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/71939a789c4ba87d2436d2a9fc9c8374b589561d\"\u003e\u003ccode\u003e71939a7\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/609\"\u003e#609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/8b2c0cbf02a64a0e63ef84668a01e6a166150455\"\u003e\u003ccode\u003e8b2c0cb\u003c/code\u003e\u003c/a\u003e fix wrong type ignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/1fd7324429b9f886d0eb06c11812f83b28b0b951\"\u003e\u003ccode\u003e1fd7324\u003c/code\u003e\u003c/a\u003e pytest dependency for mypy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/645dc83cb25caa837b2441073709ced5b0fc2f3b\"\u003e\u003ccode\u003e645dc83\u003c/code\u003e\u003c/a\u003e remove deprecated annotations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/84c653d3e2b292c7236dbe892a5ce83fc899b6b7\"\u003e\u003ccode\u003e84c653d\u003c/code\u003e\u003c/a\u003e remove already default config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/43b4147b258d7e9fe9dbea9e451cc2e610e58e9a\"\u003e\u003ccode\u003e43b4147\u003c/code\u003e\u003c/a\u003e Update qtbot.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/1626a636038fb41038de0e864392fdaec79f5105\"\u003e\u003ccode\u003e1626a63\u003c/code\u003e\u003c/a\u003e Update qtbot.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/a365e0ee9fd2e72d6dee02e7809f4121d0c8ce67\"\u003e\u003ccode\u003ea365e0e\u003c/code\u003e\u003c/a\u003e Update setup.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/7993efe352198451b4bdcbd44dacd6a1354c21d0\"\u003e\u003ccode\u003e7993efe\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.rst\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-qt/compare/4.4.0...4.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `translate-toolkit` from 3.15.2 to 3.15.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/translate/translate/releases\"\u003etranslate-toolkit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.15.6\u003c/h2\u003e\n\u003cp\u003eThe major changes in this release are:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for upcoming changes in the PO format (see \u003ca href=\"https://lists.gnu.org/archive/html/bug-gettext/2025-06/msg00018.html\"\u003ehttps://lists.gnu.org/archive/html/bug-gettext/2025-06/msg00018.html\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompatibility with lxml 6\u003c/li\u003e\n\u003cli\u003eConverters support multiple \u003ccode\u003e--input\u003c/code\u003e parameters\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eRead the full \u003ca href=\"https://docs.translatehouse.org/projects/translate-toolkit/en/latest/releases/3.15.6.html\"\u003eRelease notes\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003e3.15.5\u003c/h2\u003e\n\u003cp\u003eThe major changes in this release are:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Compose Multiplatform Resources\u003c/li\u003e\n\u003cli\u003eAdded language definition for Toki Pona\u003c/li\u003e\n\u003cli\u003eFixed publishing issues in the 3.15.4 release\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eRead the full \u003ca href=\"https://docs.translatehouse.org/projects/translate-toolkit/en/latest/releases/3.15.5.html\"\u003eRelease notes\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003e3.15.4\u003c/h2\u003e\n\u003cp\u003eThis release was yanked because it was built wrongly.\u003c/p\u003e\n\u003ch2\u003e3.15.3\u003c/h2\u003e\n\u003cp\u003eThe major changes in this release are:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImprovements to TBX, Android, and MO formats.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eRead the full \u003ca href=\"https://docs.translatehouse.org/projects/translate-toolkit/en/latest/releases/3.15.3.html\"\u003eRelease notes\u003c/a\u003e for more details.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/458a385f0fe1248b02e8afe2e1991dd2d331ba87\"\u003e\u003ccode\u003e458a385\u003c/code\u003e\u003c/a\u003e chore: release 3.15.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/cb210d0525321e75b98db8bc4c80096add18607e\"\u003e\u003ccode\u003ecb210d0\u003c/code\u003e\u003c/a\u003e feat(po): support for #= as new flags in PO file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/b152396f5430d7539e6d1871a532a78347f06970\"\u003e\u003ccode\u003eb152396\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency pytest-xdist to v3.8.0 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5630\"\u003e#5630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/f0482dc9eefc617fc9cd9c054b19c2dc3cd3bdb3\"\u003e\u003ccode\u003ef0482dc\u003c/code\u003e\u003c/a\u003e fix(deps): update dependency lxml to v6 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5624\"\u003e#5624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/3f9b17473b05daa21d429d6de9831bcc0e741651\"\u003e\u003ccode\u003e3f9b174\u003c/code\u003e\u003c/a\u003e feat: include xml.xsd for linting xliff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/50ef6304455fccd985453250140b4b88913a29f3\"\u003e\u003ccode\u003e50ef630\u003c/code\u003e\u003c/a\u003e chore(deps): update ncipollo/release-action action to v1.18.0 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5627\"\u003e#5627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/4a781fd97e70a24f3fc7c075ff3206af6ad96937\"\u003e\u003ccode\u003e4a781fd\u003c/code\u003e\u003c/a\u003e chore(deps): update ncipollo/release-action action to v1.17.0 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5626\"\u003e#5626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/a4e67d528eb4ea2ac2e6fa3f5ab4416bb45d3f22\"\u003e\u003ccode\u003ea4e67d5\u003c/code\u003e\u003c/a\u003e chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.12.1 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5625\"\u003e#5625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/16726cf2bbd0e1cc29cb0e2fe728d8045cbfe168\"\u003e\u003ccode\u003e16726cf\u003c/code\u003e\u003c/a\u003e chore(deps): update pre-commit hook macisamuele/language-formatters-pre-commi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/2235850f37a089857799e11d65a6aeb8f597ba9e\"\u003e\u003ccode\u003e2235850\u003c/code\u003e\u003c/a\u003e chore(deps): update astral-sh/setup-uv action to v6.3.1 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5622\"\u003e#5622\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/translate/translate/compare/3.15.2...3.15.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/freedomofpress/securedrop-client/pull/2522","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/freedomofpress%2Fsecuredrop-client/issues/2522","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2522/packages"},{"uuid":"2647978577","node_id":"PR_kwDOO_gais6d1PJR","number":8,"state":"open","title":"Upgrade: bump the pip-updates group across 1 directory with 8 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-07-07T22:08:39.000Z","updated_at":"2025-07-07T22:08:40.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Upgrade: bump","group_name":"pip-updates","update_count":8,"packages":[{"name":"django","old_version":"5.2.3","new_version":"5.2.4","repository_url":"https://github.com/django/django"},{"name":"boto3","old_version":"1.38.39","new_version":"1.39.3","repository_url":"https://github.com/boto/boto3"},{"name":"datamodel-code-generator","old_version":"0.31.1","new_version":"0.31.2","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"sentry-sdk","old_version":"2.30.0","new_version":"2.32.0","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"},{"name":"django-simple-history","old_version":"3.8.0","new_version":"3.10.1","repository_url":"https://github.com/django-commons/django-simple-history"},{"name":"moto","old_version":"5.1.6","new_version":"5.1.8","repository_url":"https://github.com/getmoto/moto"},{"name":"ruff","old_version":"0.12.0","new_version":"0.12.2","repository_url":"https://github.com/astral-sh/ruff"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-updates group with 8 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [django](https://github.com/django/django) | `5.2.3` | `5.2.4` |\n| [boto3](https://github.com/boto/boto3) | `1.38.39` | `1.39.3` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.31.1` | `0.31.2` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.30.0` | `2.32.0` |\n| [pytest-random-order](https://github.com/jbasko/pytest-random-order) | `1.1.1` | `1.2.0` |\n| [django-simple-history](https://github.com/django-commons/django-simple-history) | `3.8.0` | `3.10.1` |\n| [moto](https://github.com/getmoto/moto) | `5.1.6` | `5.1.8` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.12.0` | `0.12.2` |\n\n\nUpdates `django` from 5.2.3 to 5.2.4\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/c941d0deec0ea08a30670be0fac879f2372f071b\"\u003e\u003ccode\u003ec941d0d\u003c/code\u003e\u003c/a\u003e [5.2.x] Bumped version for 5.2.4 release.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/47a618d45c6e40dd59f4cdd46fd5fc7d11626f6d\"\u003e\u003ccode\u003e47a618d\u003c/code\u003e\u003c/a\u003e Fixed AttributeError for enterContext() on Python \u0026lt; 3.11.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/a150160c9fc6ba6220f1e63863b03e7f7978b747\"\u003e\u003ccode\u003ea150160\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/36464\"\u003e#36464\u003c/a\u003e -- Fixed \u0026quot;__in\u0026quot; tuple lookup on backends lacking native ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/db5da3c91c3122300680c4e7200a463273a5351e\"\u003e\u003ccode\u003edb5da3c\u003c/code\u003e\u003c/a\u003e [5.2.x] Clarified that only latest dependency versions are valid for security...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/359af3779a66281361aff50629c25e81fcfec048\"\u003e\u003ccode\u003e359af37\u003c/code\u003e\u003c/a\u003e [5.2.x] Added guidance on AI-assisted security reports to docs/internals/secu...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/1d89691c7481fbcef6a7bc396e41a651372c1cf3\"\u003e\u003ccode\u003e1d89691\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/36453\"\u003e#36453\u003c/a\u003e -- Made When.condition resolve with for_save=False.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/4de4edf2c05cc80c514c989db480f2fe23ad5ee2\"\u003e\u003ccode\u003e4de4edf\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/36447\"\u003e#36447\u003c/a\u003e -- Selected preferred media type based on quality.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/f5cc6a888b60e0f79415cdd206cedbcc441eed82\"\u003e\u003ccode\u003ef5cc6a8\u003c/code\u003e\u003c/a\u003e [5.2.x] Corrected jsonfield fieldlookup references.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/538616136be0f9c29f9122984a29e2c0a316958d\"\u003e\u003ccode\u003e5386161\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/36463\"\u003e#36463\u003c/a\u003e -- Fixed grammar in docs/intro/contributing.txt.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/e3b2370795d8373c62b799b7c9fa3fef1c0a2bb1\"\u003e\u003ccode\u003ee3b2370\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/36454\"\u003e#36454\u003c/a\u003e -- Fixed typo in docs/intro/tutorial08.txt.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/django/django/compare/5.2.3...5.2.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `boto3` from 1.38.39 to 1.39.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/0e651f9c495df0b19c2de4d3fa572f6f88c38bbd\"\u003e\u003ccode\u003e0e651f9\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.39.3'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/910c8bca827ef2889b86bd2f1e037ac448653b3b\"\u003e\u003ccode\u003e910c8bc\u003c/code\u003e\u003c/a\u003e Bumping version to 1.39.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/579757ae9f9128a3bcb12d536981c09f92bfe36b\"\u003e\u003ccode\u003e579757a\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/0eec555e89ffbe3b34b8246c47c7d275c2220a51\"\u003e\u003ccode\u003e0eec555\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.39.2'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/0dca55060bc4c1ab1c76b85b9fcad6c981ca3484\"\u003e\u003ccode\u003e0dca550\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.39.2' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/7605794add34bd7dee5cf968a3014c873d865937\"\u003e\u003ccode\u003e7605794\u003c/code\u003e\u003c/a\u003e Bumping version to 1.39.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/f37d23b5aff77158a3a65f066d4c905cafa77e5b\"\u003e\u003ccode\u003ef37d23b\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/25a2ebae8632df7ad4e265a6c08c2a9b38f4418c\"\u003e\u003ccode\u003e25a2eba\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.39.1'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/663f92d964923b1576905b7a7800b88fe71d98d7\"\u003e\u003ccode\u003e663f92d\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.39.1' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/ed51302c69bb324d8a8244997895248972a46f7f\"\u003e\u003ccode\u003eed51302\u003c/code\u003e\u003c/a\u003e Bumping version to 1.39.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.38.39...1.39.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `datamodel-code-generator` from 0.31.1 to 0.31.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/releases\"\u003edatamodel-code-generator's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.31.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: prevent code injection through filename in generated headers by \u003ca href=\"https://github.com/koxudaxi\"\u003e\u003ccode\u003e@​koxudaxi\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2428\"\u003ekoxudaxi/datamodel-code-generator#2428\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.31.2\"\u003ehttps://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.31.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/5553dd2c8ef503a3010433f7f24f2179efe76fea\"\u003e\u003ccode\u003e5553dd2\u003c/code\u003e\u003c/a\u003e fix: prevent code injection through filename in generated headers (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2428\"\u003e#2428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.31.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentry-sdk` from 2.30.0 to 2.32.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/releases\"\u003esentry-sdk's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(sessions): Add top-level start- and end session methods (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4474\"\u003e#4474\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(openai-agents): Set tool span to failed if an error is raised in the tool (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4527\"\u003e#4527\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(integrations/ray): Correctly pass keyword arguments to ray.remote function (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4430\"\u003e#4430\u003c/a\u003e) by \u003ca href=\"https://github.com/svartalf\"\u003e\u003ccode\u003e@​svartalf\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Make \u003ccode\u003espan_map\u003c/code\u003e an instance variable (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4476\"\u003e#4476\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Ensure no duplicate \u003ccode\u003eSentryLangchainCallback\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4485\"\u003e#4485\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(Litestar): Apply \u003ccode\u003efailed_request_status_codes\u003c/code\u003e to exceptions raised in middleware (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4074\"\u003e#4074\u003c/a\u003e) by \u003ca href=\"https://github.com/vrslev\"\u003e\u003ccode\u003e@​vrslev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.31.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eNew Integration (BETA):\u003c/strong\u003e Add support for \u003ccode\u003eopenai-agents\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4437\"\u003e#4437\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe can now instrument AI agents that are created with the \u003ca href=\"https://openai.github.io/openai-agents-python/\"\u003eOpenAI Agents SDK\u003c/a\u003e out of the box.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.openai_agents import OpenAIAgentsIntegration\n\u003ch1\u003eAdd the OpenAIAgentsIntegration to your sentry_sdk.init call:\u003c/h1\u003e\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\ndsn=\u0026quot;...\u0026quot;,\u003cbr /\u003e\nintegrations=[\u003cbr /\u003e\nOpenAIAgentsIntegration(),\u003cbr /\u003e\n]\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eFor more information see the \u003ca href=\"https://docs.sentry.io/platforms/python/integrations/openai-agents/\"\u003eOpenAI Agents integrations documentation\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eLogs: Add support for \u003ccode\u003edict\u003c/code\u003e arguments (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4478\"\u003e#4478\u003c/a\u003e) by \u003ca href=\"https://github.com/AbhiPrasad\"\u003e\u003ccode\u003e@​AbhiPrasad\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Cursor generated rules (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4493\"\u003e#4493\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGreatly simplify Langchain integrations \u003ccode\u003e_wrap_configure\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4479\"\u003e#4479\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Remove tracerite pin (almost) (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4504\"\u003e#4504\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(profiling): Ensure profiler thread exits when needed (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4497\"\u003e#4497\u003c/a\u003e) by \u003ca href=\"https://github.com/Zylphrex\"\u003e\u003ccode\u003e@​Zylphrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Do not install newest \u003ccode\u003etracerite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4494\"\u003e#4494\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(scope): Handle token reset \u003ccode\u003eLookupError\u003c/code\u003es gracefully (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4481\"\u003e#4481\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Tox update (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4509\"\u003e#4509\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Upper bound on fakeredis on old Python versions (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4482\"\u003e#4482\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Regenerate tox (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4457\"\u003e#4457\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md\"\u003esentry-sdk's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(sessions): Add top-level start- and end session methods (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4474\"\u003e#4474\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(openai-agents): Set tool span to failed if an error is raised in the tool (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4527\"\u003e#4527\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(integrations/ray): Correctly pass keyword arguments to ray.remote function (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4430\"\u003e#4430\u003c/a\u003e) by \u003ca href=\"https://github.com/svartalf\"\u003e\u003ccode\u003e@​svartalf\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Make \u003ccode\u003espan_map\u003c/code\u003e an instance variable (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4476\"\u003e#4476\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Ensure no duplicate \u003ccode\u003eSentryLangchainCallback\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4485\"\u003e#4485\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(Litestar): Apply \u003ccode\u003efailed_request_status_codes\u003c/code\u003e to exceptions raised in middleware (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4074\"\u003e#4074\u003c/a\u003e) by \u003ca href=\"https://github.com/vrslev\"\u003e\u003ccode\u003e@​vrslev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.31.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eNew Integration (BETA):\u003c/strong\u003e Add support for \u003ccode\u003eopenai-agents\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4437\"\u003e#4437\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe can now instrument AI agents that are created with the \u003ca href=\"https://openai.github.io/openai-agents-python/\"\u003eOpenAI Agents SDK\u003c/a\u003e out of the box.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.openai_agents import OpenAIAgentsIntegration\n\u003ch1\u003eAdd the OpenAIAgentsIntegration to your sentry_sdk.init call:\u003c/h1\u003e\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\ndsn=\u0026quot;...\u0026quot;,\u003cbr /\u003e\nintegrations=[\u003cbr /\u003e\nOpenAIAgentsIntegration(),\u003cbr /\u003e\n]\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eFor more information see the \u003ca href=\"https://docs.sentry.io/platforms/python/integrations/openai-agents/\"\u003eOpenAI Agents integrations documentation\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eLogs: Add support for \u003ccode\u003edict\u003c/code\u003e arguments (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4478\"\u003e#4478\u003c/a\u003e) by \u003ca href=\"https://github.com/AbhiPrasad\"\u003e\u003ccode\u003e@​AbhiPrasad\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Cursor generated rules (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4493\"\u003e#4493\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGreatly simplify Langchain integrations \u003ccode\u003e_wrap_configure\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4479\"\u003e#4479\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Remove tracerite pin (almost) (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4504\"\u003e#4504\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(profiling): Ensure profiler thread exits when needed (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4497\"\u003e#4497\u003c/a\u003e) by \u003ca href=\"https://github.com/Zylphrex\"\u003e\u003ccode\u003e@​Zylphrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Do not install newest \u003ccode\u003etracerite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4494\"\u003e#4494\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(scope): Handle token reset \u003ccode\u003eLookupError\u003c/code\u003es gracefully (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4481\"\u003e#4481\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Tox update (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4509\"\u003e#4509\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Upper bound on fakeredis on old Python versions (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4482\"\u003e#4482\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Regenerate tox (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4457\"\u003e#4457\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/4b022dc731aa10e8cdb1cc8342c06374b226b6f4\"\u003e\u003ccode\u003e4b022dc\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into release/2.32.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/2634a523b3416748cf952bc517641594b9b40bac\"\u003e\u003ccode\u003e2634a52\u003c/code\u003e\u003c/a\u003e Pin zope.event (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4531\"\u003e#4531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/c815a3245d10e45bebee5b47292deec438a4d4d2\"\u003e\u003ccode\u003ec815a32\u003c/code\u003e\u003c/a\u003e updated changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/bca8816ac1f84fe4304682bd6de173fbf0c005a3\"\u003e\u003ccode\u003ebca8816\u003c/code\u003e\u003c/a\u003e release: 2.32.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/546ce1f71023b651860d6b576024b9d93b4c9ab8\"\u003e\u003ccode\u003e546ce1f\u003c/code\u003e\u003c/a\u003e Set tool span to failed if an error is raised in the tool (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4527\"\u003e#4527\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/ab2e3f08b600b22a95c3313eddd66f733e2d133c\"\u003e\u003ccode\u003eab2e3f0\u003c/code\u003e\u003c/a\u003e fix(integrations/ray): Correctly pass keyword arguments to ray.remote functio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/7804260fbf3ed8f797af95d2c0bdfcfeb85b0605\"\u003e\u003ccode\u003e7804260\u003c/code\u003e\u003c/a\u003e fix(langchain): Make \u003ccode\u003espan_map\u003c/code\u003e an instance variable (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4476\"\u003e#4476\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/0a2d8585f18f1d135d1f04624b702ef46fd119bb\"\u003e\u003ccode\u003e0a2d858\u003c/code\u003e\u003c/a\u003e fix(langchain): Ensure no duplicate \u003ccode\u003eSentryLangchainCallback\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4485\"\u003e#4485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/dae02180dfb095cdbd8ed7e81544ef048482d70b\"\u003e\u003ccode\u003edae0218\u003c/code\u003e\u003c/a\u003e fix(Litestar): Apply \u003ccode\u003efailed_request_status_codes\u003c/code\u003e to exceptions raised in mi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/65d31af4ff9b93cddf12d043fe9d631e3c6c85a4\"\u003e\u003ccode\u003e65d31af\u003c/code\u003e\u003c/a\u003e Merge branch 'release/2.31.0'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getsentry/sentry-python/compare/2.30.0...2.32.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `django-simple-history` from 3.8.0 to 3.10.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/django-commons/django-simple-history/releases\"\u003edjango-simple-history's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 3.10.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/blob/3.10.1/CHANGES.rst#3101-2025-06-20\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed changed log syntax to support PyPI packaging. by \u003ca href=\"https://github.com/tim-schilling\"\u003e\u003ccode\u003e@​tim-schilling\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1499\"\u003edjango-commons/django-simple-history#1499\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.10.0...3.10.1\"\u003ehttps://github.com/django-commons/django-simple-history/compare/3.10.0...3.10.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease 3.10.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/jazzband/django-simple-history/blob/3.10.0/CHANGES.rst#3100-2025-06-20\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExclude tests from wheels by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1478\"\u003edjango-commons/django-simple-history#1478\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSwitch repo to Django Commons by \u003ca href=\"https://github.com/tim-schilling\"\u003e\u003ccode\u003e@​tim-schilling\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1429\"\u003edjango-commons/django-simple-history#1429\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for release 3.10.0 by \u003ca href=\"https://github.com/ddabble\"\u003e\u003ccode\u003e@​ddabble\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1498\"\u003edjango-commons/django-simple-history#1498\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1478\"\u003edjango-commons/django-simple-history#1478\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.9.0...3.10.0\"\u003ehttps://github.com/django-commons/django-simple-history/compare/3.9.0...3.10.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease 3.9.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/jazzband/django-simple-history/blob/3.9.0/CHANGES.rst#390-2025-01-26\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove the deprecated \u003ccode\u003esimple_history_admin_list.display_list()\u003c/code\u003e + \u003cstrong\u003eRelease 3.9.0\u003c/strong\u003e by \u003ca href=\"https://github.com/ddabble\"\u003e\u003ccode\u003e@​ddabble\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jazzband/django-simple-history/pull/1444\"\u003ejazzband/django-simple-history#1444\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jazzband/django-simple-history/compare/3.8.0...3.9.0\"\u003ehttps://github.com/jazzband/django-simple-history/compare/3.8.0...3.9.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/django-commons/django-simple-history/blob/master/CHANGES.rst\"\u003edjango-simple-history's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.10.1 (2025-06-20)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed changelog syntax to support PyPI packaging (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1499\"\u003egh-1499\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.0 (2025-06-20)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTests are no longer bundled in released wheels (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1478\"\u003egh-1478\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMove repository to the Django Commons organization (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1391\"\u003egh-1391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.9.0 (2025-01-26)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved the \u003ccode\u003esimple_history_admin_list.display_list()\u003c/code\u003e template tag that was\ndeprecated in version 3.6.0 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1444\"\u003egh-1444\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/dc569842772578558fe4a84e5937d6fc31dd735d\"\u003e\u003ccode\u003edc56984\u003c/code\u003e\u003c/a\u003e Fixed changed log syntax to support PyPI packaging. (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1499\"\u003e#1499\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/58dbb06e68f821c99128b83619a856444319fa04\"\u003e\u003ccode\u003e58dbb06\u003c/code\u003e\u003c/a\u003e Prepare for release 3.10.0 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1498\"\u003e#1498\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/bc9909f32e33f8f33dccd28934994dffb9c4f459\"\u003e\u003ccode\u003ebc9909f\u003c/code\u003e\u003c/a\u003e Switch repo to Django Commons (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1429\"\u003e#1429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/9fb7c5c30b43917eaf98ee5ef266705bd191a825\"\u003e\u003ccode\u003e9fb7c5c\u003c/code\u003e\u003c/a\u003e Bump codecov/codecov-action from 3 to 5 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1425\"\u003e#1425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/7d6b50bf6f4ccbddd75bc3685dc9cf04240176d2\"\u003e\u003ccode\u003e7d6b50b\u003c/code\u003e\u003c/a\u003e Bump coverage from 7.8.0 to 7.9.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1495\"\u003e#1495\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/8bb61757cb9563c2fd0c17e1fa22c53013c311e3\"\u003e\u003ccode\u003e8bb6175\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1482\"\u003e#1482\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/010928f2fc52acd68df41e61686ed233171530e8\"\u003e\u003ccode\u003e010928f\u003c/code\u003e\u003c/a\u003e Bump tox from 4.25.0 to 4.26.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1485\"\u003e#1485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/5721e31055b0c952daf3601b6c35bcde78cab31b\"\u003e\u003ccode\u003e5721e31\u003c/code\u003e\u003c/a\u003e Bump psycopg[binary] from 3.2.6 to 3.2.9 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1484\"\u003e#1484\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/810149708ad11a284cd581972db46142120f824a\"\u003e\u003ccode\u003e8101497\u003c/code\u003e\u003c/a\u003e Bump flake8 from 7.1.2 to 7.2.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1474\"\u003e#1474\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/626ece4082c4a7f87d14566e7a3c568043233ac5\"\u003e\u003ccode\u003e626ece4\u003c/code\u003e\u003c/a\u003e Bump coverage from 7.6.12 to 7.8.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.8.0...3.10.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `moto` from 5.1.6 to 5.1.8\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getmoto/moto/blob/master/CHANGELOG.md\"\u003emoto's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eMoto Changelog\u003c/h1\u003e\n\u003ch2\u003e5.1.7\u003c/h2\u003e\n\u003cp\u003eDocker Digest for 5.1.7: \u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew Methods:\n\u003cpre\u003e\u003ccode\u003e* Connect-Campaigns:\n    * get_campaign_state()\n    * list_campaigns()\n    * list_tags_for_resource()\n    * pause_campaign()\n    * resume_campaign()\n    * start_campaign()\n    * stop_campaign()\n    * tag_resource()\n    * untag_resource()\n\n* ECS:\n    * delete_task_definitions()\n\n* ElastiCache:\n    * create_cache_subnet_group()\n    * describe_cache_subnet_groups()\n\n* RAM:\n    * list_permissions()\n    * list_resource_types()\n\n* RDS:\n    * create_blue_green_deployment()\n    * delete_blue_green_deployment()\n    * describe_blue_green_deployments()\n    * switchover_blue_green_deployment()\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eMiscellaneous:\n* Athena: get_query_execution() now returns some additional attributes: 'ResultReuseConfiguration', 'Status.CompletionDateTime', 'Status.ServicePreProcessingTimeInMillis', 'Status.ResultReuseInformation'\n* DynamoDB: query() now validates that all attributes in the KeyConditionExpression are actually keys\n* DynamoDB: update_item() now validates unused ExpressionAttributeNames/ExpressionAttributeValues\n* EC2: modify_vpc_attribute() now correctly handles the EnableDnsHostnames-attribute\n* ECS: list_task_definitions() now supports the status-parameter\n* ELB: describe_load_balancer_attributes() now returns the AdditionalAttributes-attribute\n* ElastiCache: list_tags_for_resource() now supports SubnetGroups\n* EventBridge: put_events() no longer throws a KeyError: 'time' for targets with a custom InputTemplate that do not specify the time\n* Logs: get_query_results() now returns values as strings, in-line with how AWS behaves\n* NetworkFirewall: describe_logging_configuration() no longer throws an error for LoggingConfigurations without tags\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/60378f74fdcd90f08795262a8c45fe67efa9d169\"\u003e\u003ccode\u003e60378f7\u003c/code\u003e\u003c/a\u003e Pre-Release: Up Version Number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/7149837c704859d5283bbaddc53d1c701eaa3f21\"\u003e\u003ccode\u003e7149837\u003c/code\u003e\u003c/a\u003e Prep release 5.1.7 (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9045\"\u003e#9045\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/2e1d35db378de046eba6a3e579997eb7972ef302\"\u003e\u003ccode\u003e2e1d35d\u003c/code\u003e\u003c/a\u003e chore: update SSM default parameters (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9046\"\u003e#9046\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/c7ba45ac50bed582ad14ce48e756d25a86014d17\"\u003e\u003ccode\u003ec7ba45a\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Types (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9044\"\u003e#9044\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/db2e27627a825f8580faa706faa46485c021e57f\"\u003e\u003ccode\u003edb2e276\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Offerings (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9043\"\u003e#9043\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/c5616b63b0aca7bf5fd55cd881104fa3fc8378a6\"\u003e\u003ccode\u003ec5616b6\u003c/code\u003e\u003c/a\u003e Admin: Skip Sagemaker-Core==1.0.42 to avoid test breakage (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9042\"\u003e#9042\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/d348cecc5ae5e49523ba54c5847f84ca42a398e8\"\u003e\u003ccode\u003ed348cec\u003c/code\u003e\u003c/a\u003e [Comprehend] Enhanced support for comprehend ResourceGroupTagging api (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9039\"\u003e#9039\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/9c7d93941005657011e71b0e3bc3007ee7ea735e\"\u003e\u003ccode\u003e9c7d939\u003c/code\u003e\u003c/a\u003e Docs: Change MOTO_ALLOW_NONEXISTENT_REGION example to use a string value (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9037\"\u003e#9037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/96c1231b809f58f5e9aa2f605017b4d36962bd75\"\u003e\u003ccode\u003e96c1231\u003c/code\u003e\u003c/a\u003e [ELB] Added additional attribute to ELB response.  (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9026\"\u003e#9026\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/7ae26ff55a5ba6b204bee856ccb4e0f86e5eff62\"\u003e\u003ccode\u003e7ae26ff\u003c/code\u003e\u003c/a\u003e S3: Add ID field to CORS rule (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9013\"\u003e#9013\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getmoto/moto/compare/5.1.6...5.1.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.12.0 to 0.12.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.2\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Expand \u003ccode\u003eOptional[A]\u003c/code\u003e to \u003ccode\u003eA | None\u003c/code\u003e (\u003ccode\u003ePYI016\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18572\"\u003e#18572\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Mark \u003ccode\u003eUP008\u003c/code\u003e fix safe if no comments are in range (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18683\"\u003e#18683\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Fix \u003ccode\u003eC420\u003c/code\u003e to prepend whitespace when needed (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18616\"\u003e#18616\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF403\u003c/code\u003e panic on attribute or subscription loop variable (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19042\"\u003e#19042\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epydocstyle\u003c/code\u003e] Fix \u003ccode\u003eD413\u003c/code\u003e infinite loop for parenthesized docstring (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18930\"\u003e#18930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLW0108\u003c/code\u003e autofix introducing a syntax error when the lambda's body contains an assignment expression (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18678\"\u003e#18678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix false positive on empty tuples (\u003ccode\u003eFURB168\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19058\"\u003e#19058\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Allow more \u003ccode\u003efield\u003c/code\u003e calls from \u003ccode\u003eattrs\u003c/code\u003e (\u003ccode\u003eRUF009\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19021\"\u003e#19021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix syntax error introduced for an empty string followed by a u-prefixed string (\u003ccode\u003eUP025\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18899\"\u003e#18899\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-executable\u003c/code\u003e] Allow \u003ccode\u003euvx\u003c/code\u003e in shebang line (\u003ccode\u003eEXE003\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18967\"\u003e#18967\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epandas\u003c/code\u003e] Avoid flagging \u003ccode\u003ePD002\u003c/code\u003e if \u003ccode\u003epandas\u003c/code\u003e is not imported (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18963\"\u003e#18963\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Avoid PEP-604 unions with \u003ccode\u003etyping.NamedTuple\u003c/code\u003e (\u003ccode\u003eUP007\u003c/code\u003e, \u003ccode\u003eUP045\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18682\"\u003e#18682\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument link between \u003ccode\u003eimport-outside-top-level (PLC0415)\u003c/code\u003e and \u003ccode\u003elint.flake8-tidy-imports.banned-module-level-imports\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18733\"\u003e#18733\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix description of the \u003ccode\u003eformat.skip-magic-trailing-comma\u003c/code\u003e example (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19095\"\u003e#19095\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Make \u003ccode\u003eAIR302\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18988\"\u003e#18988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Make \u003ccode\u003eAIR312\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18989\"\u003e#18989\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-annotations\u003c/code\u003e] Make \u003ccode\u003eANN401\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18974\"\u003e#18974\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC100\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18993\"\u003e#18993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC105\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19002\"\u003e#19002\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC110\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18975\"\u003e#18975\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC210\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18977\"\u003e#18977\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC220\u003c/code\u003e, \u003ccode\u003eASYNC221\u003c/code\u003e, and \u003ccode\u003eASYNC222\u003c/code\u003e examples error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18978\"\u003e#18978\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC251\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18990\"\u003e#18990\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Make \u003ccode\u003eS201\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19017\"\u003e#19017\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Make \u003ccode\u003eS604\u003c/code\u003e and \u003ccode\u003eS609\u003c/code\u003e examples error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19049\"\u003e#19049\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Make \u003ccode\u003eB028\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19054\"\u003e#19054\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Make \u003ccode\u003eB911\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19051\"\u003e#19051\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-datetimez\u003c/code\u003e] Make \u003ccode\u003eDTZ011\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19055\"\u003e#19055\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-datetimez\u003c/code\u003e] Make \u003ccode\u003eDTZ901\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19056\"\u003e#19056\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Make \u003ccode\u003ePYI032\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19061\"\u003e#19061\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePYI014\u003c/code\u003e, \u003ccode\u003ePYI015\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19097\"\u003e#19097\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePYI042\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19101\"\u003e#19101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePYI059\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19080\"\u003e#19080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePYI062\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19079\"\u003e#19079\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePT023\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19104\"\u003e#19104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePT030\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19105\"\u003e#19105\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.2\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Expand \u003ccode\u003eOptional[A]\u003c/code\u003e to \u003ccode\u003eA | None\u003c/code\u003e (\u003ccode\u003ePYI016\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18572\"\u003e#18572\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Mark \u003ccode\u003eUP008\u003c/code\u003e fix safe if no comments are in range (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18683\"\u003e#18683\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Fix \u003ccode\u003eC420\u003c/code\u003e to prepend whitespace when needed (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18616\"\u003e#18616\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF403\u003c/code\u003e panic on attribute or subscription loop variable (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19042\"\u003e#19042\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epydocstyle\u003c/code\u003e] Fix \u003ccode\u003eD413\u003c/code\u003e infinite loop for parenthesized docstring (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18930\"\u003e#18930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLW0108\u003c/code\u003e autofix introducing a syntax error when the lambda's body contains an assignment expression (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18678\"\u003e#18678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix false positive on empty tuples (\u003ccode\u003eFURB168\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19058\"\u003e#19058\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Allow more \u003ccode\u003efield\u003c/code\u003e calls from \u003ccode\u003eattrs\u003c/code\u003e (\u003ccode\u003eRUF009\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19021\"\u003e#19021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix syntax error introduced for an empty string followed by a u-prefixed string (\u003ccode\u003eUP025\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18899\"\u003e#18899\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-executable\u003c/code\u003e] Allow \u003ccode\u003euvx\u003c/code\u003e in shebang line (\u003ccode\u003eEXE003\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18967\"\u003e#18967\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epandas\u003c/code\u003e] Avoid flagging \u003ccode\u003ePD002\u003c/code\u003e if \u003ccode\u003epandas\u003c/code\u003e is not imported (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18963\"\u003e#18963\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Avoid PEP-604 unions with \u003ccode\u003etyping.NamedTuple\u003c/code\u003e (\u003ccode\u003eUP007\u003c/code\u003e, \u003ccode\u003eUP045\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18682\"\u003e#18682\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument link between \u003ccode\u003eimport-outside-top-level (PLC0415)\u003c/code\u003e and \u003ccode\u003elint.flake8-tidy-imports.banned-module-level-imports\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18733\"\u003e#18733\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix description of the \u003ccode\u003eformat.skip-magic-trailing-comma\u003c/code\u003e example (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19095\"\u003e#19095\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Make \u003ccode\u003eAIR302\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18988\"\u003e#18988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Make \u003ccode\u003eAIR312\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18989\"\u003e#18989\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-annotations\u003c/code\u003e] Make \u003ccode\u003eANN401\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18974\"\u003e#18974\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC100\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18993\"\u003e#18993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC105\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19002\"\u003e#19002\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC110\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18975\"\u003e#18975\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC210\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18977\"\u003e#18977\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC220\u003c/code\u003e, \u003ccode\u003eASYNC221\u003c/code\u003e, and \u003ccode\u003eASYNC222\u003c/code\u003e examples error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18978\"\u003e#18978\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC251\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18990\"\u003e#18990\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Make \u003ccode\u003eS201\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19017\"\u003e#19017\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Make \u003ccode\u003eS604\u003c/code\u003e and \u003ccode\u003eS609\u003c/code\u003e examples error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19049\"\u003e#19049\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Make \u003ccode\u003eB028\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19054\"\u003e#19054\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Make \u003ccode\u003eB911\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19051\"\u003e#19051\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-datetimez\u003c/code\u003e] Make \u003ccode\u003eDTZ011\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19055\"\u003e#19055\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-datetimez\u003c/code\u003e] Make \u003ccode\u003eDTZ901\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19056\"\u003e#19056\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Make \u003ccode\u003ePYI032\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19061\"\u003e#19061\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePYI014\u003c/code\u003e, \u003ccode\u003ePYI015\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19097\"\u003e#19097\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePYI042\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19101\"\u003e#19101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePYI059\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19080\"\u003e#19080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePYI062\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19079\"\u003e#19079\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePT023\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19104\"\u003e#19104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePT030\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19105\"\u003e#19105\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-quotes\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003eQ003\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19106\"\u003e#19106\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/9bee8376a17401f9736b45fdefffb62edc2f1668\"\u003e\u003ccode\u003e9bee837\u003c/code\u003e\u003c/a\u003e Bump 0.12.2 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19126\"\u003e#19126\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/1c6717b149ddfbcd4aa0aee2e160320474392da9\"\u003e\u003ccode\u003e1c6717b\u003c/code\u003e\u003c/a\u003e Filter private symbols from stubs if they are internal types (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19121\"\u003e#19121\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/1b813cd5f1933ab05ba7b96ace798199429c0bd6\"\u003e\u003ccode\u003e1b813cd\u003c/code\u003e\u003c/a\u003e Fix description of the \u003ccode\u003eformat.skip-magic-trailing-comma\u003c/code\u003e example (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19095\"\u003e#19095\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b00f68a23cedbd3a38fc25bac63638f0f11fc3f0\"\u003e\u003ccode\u003eb00f68a\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eruff\u003c/code\u003e] Allow more \u003ccode\u003efield\u003c/code\u003e calls from \u003ccode\u003eattrs\u003c/code\u003e (\u003ccode\u003eRUF009\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19021\"\u003e#19021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/710c60f7135879b05f6c05a34085cd7af5c19e7f\"\u003e\u003ccode\u003e710c60f\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePT023\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19104\"\u003e#19104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/811e25d16e22ca4ce124d9514232211c9a0b27a1\"\u003e\u003ccode\u003e811e25d\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePT030\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19105\"\u003e#19105\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b78af2db4822dc55acbfb1024b30e69fe0262311\"\u003e\u003ccode\u003eb78af2d\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eflake8-quotes\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003eQ003\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19106\"\u003e#19106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/4f36f0677f09b0ed1ba20f583b6f017c4f7d26c8\"\u003e\u003ccode\u003e4f36f06\u003c/code\u003e\u003c/a\u003e Document link between \u003ccode\u003eimport-outside-top-level (PLC0415)\u003c/code\u003e and `lint.flake8-t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/2589a2938ee58a1ff1b54a9558807ecb000ccca3\"\u003e\u003ccode\u003e2589a29\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eflake8-simplify\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003eSIM113\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19109\"\u003e#19109\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/26bb8f7b7189558520bb386867579768b5a17347\"\u003e\u003ccode\u003e26bb8f7\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eflake8-simplify\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003eSIM401\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19110\"\u003e#19110\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.12.0...0.12.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/Ed-BW/consult-demo/pull/8","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ed-BW%2Fconsult-demo/issues/8","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/8/packages"},{"uuid":"2630999336","node_id":"PR_kwDOLiCyD86c0d0o","number":2289,"state":"closed","title":"Bump pytest-random-order from 1.1.1 to 1.2.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-07-03T11:31:53.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-07-01T06:01:17.000Z","updated_at":"2025-07-03T11:31:54.000Z","time_to_close":192636,"merged_at":"2025-07-03T11:31:53.000Z","merged_by":"t-vi","closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":null}],"path":null,"ecosystem":"pip"},"body":"\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=pytest-random-order\u0026package-manager=pip\u0026previous-version=1.1.1\u0026new-version=1.2.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/Lightning-AI/lightning-thunder/pull/2289","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lightning-AI%2Flightning-thunder/issues/2289","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2289/packages"},{"uuid":"2630423018","node_id":"PR_kwDOLvZq1c6cyRHq","number":248,"state":"open","title":"Bump the python-packages group across 1 directory with 4 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-30T23:35:20.000Z","updated_at":"2025-06-30T23:35:20.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"python-packages","update_count":4,"packages":[{"name":"fastapi","old_version":"0.115.13","new_version":"0.115.14"},{"name":"uvicorn","old_version":"0.34.3","new_version":"0.35.0","repository_url":"https://github.com/encode/uvicorn"},{"name":"ruff","old_version":"0.12.0","new_version":"0.12.1","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-packages group with 4 updates in the /plotting-service directory: [fastapi[all]](https://github.com/fastapi/fastapi), [uvicorn](https://github.com/encode/uvicorn), [ruff](https://github.com/astral-sh/ruff) and [pytest-random-order](https://github.com/jbasko/pytest-random-order).\n\nUpdates `fastapi[all]` from 0.115.13 to 0.115.14\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi[all]'s releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.115.14\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for unions when using \u003ccode\u003eForm\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13827\"\u003e#13827\u003c/a\u003e by \u003ca href=\"https://github.com/patrick91\"\u003e\u003ccode\u003e@​patrick91\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✏️ Fix grammar mistake in \u003ccode\u003edocs/en/docs/advanced/response-directly.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13800\"\u003e#13800\u003c/a\u003e by \u003ca href=\"https://github.com/NavesSapnis\"\u003e\u003ccode\u003e@​NavesSapnis\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Update Speakeasy URL to Speakeasy Sandbox. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13697\"\u003e#13697\u003c/a\u003e by \u003ca href=\"https://github.com/ndimares\"\u003e\u003ccode\u003e@​ndimares\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTranslations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/response-model.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13792\"\u003e#13792\u003c/a\u003e by \u003ca href=\"https://github.com/valentinDruzhinin\"\u003e\u003ccode\u003e@​valentinDruzhinin\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/security/index.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13805\"\u003e#13805\u003c/a\u003e by \u003ca href=\"https://github.com/valentinDruzhinin\"\u003e\u003ccode\u003e@​valentinDruzhinin\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✏️ Fix typo in \u003ccode\u003edocs/ja/docs/tutorial/encoder.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13815\"\u003e#13815\u003c/a\u003e by \u003ca href=\"https://github.com/ruzia\"\u003e\u003ccode\u003e@​ruzia\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✏️ Fix typo in \u003ccode\u003edocs/ja/docs/tutorial/handling-errors.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13814\"\u003e#13814\u003c/a\u003e by \u003ca href=\"https://github.com/ruzia\"\u003e\u003ccode\u003e@​ruzia\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✏️ Fix typo in \u003ccode\u003edocs/ja/docs/tutorial/body-fields.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13802\"\u003e#13802\u003c/a\u003e by \u003ca href=\"https://github.com/ruzia\"\u003e\u003ccode\u003e@​ruzia\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Add Russian translation for \u003ccode\u003edocs/ru/docs/advanced/index.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13797\"\u003e#13797\u003c/a\u003e by \u003ca href=\"https://github.com/NavesSapnis\"\u003e\u003ccode\u003e@​NavesSapnis\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆ [pre-commit.ci] pre-commit autoupdate. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13823\"\u003e#13823\u003c/a\u003e by \u003ca href=\"https://github.com/apps/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/ebdeda2de6e17036e3048940b7a9e725ef6a95b7\"\u003e\u003ccode\u003eebdeda2\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.115.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8fa19a6faa3309a150f6e6fafd2c3a5043c09718\"\u003e\u003ccode\u003e8fa19a6\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/3ecb4c53895c0a8bf3462983d48379abc54fcaec\"\u003e\u003ccode\u003e3ecb4c5\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/9d0d8828cc6b3f0217581d7e607ba8e4d7e0017b\"\u003e\u003ccode\u003e9d0d882\u003c/code\u003e\u003c/a\u003e 🐛 Fix support for unions when using \u003ccode\u003eForm\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/13827\"\u003e#13827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/df35896a0ebb379d68b7c9bd9fdadd476ef6ac83\"\u003e\u003ccode\u003edf35896\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8f64d09ee01daf4773a77e9690e511d928da9b98\"\u003e\u003ccode\u003e8f64d09\u003c/code\u003e\u003c/a\u003e ⬆ [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/13823\"\u003e#13823\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/3b09dd8e01ecdbdc56829cc7b0f524a882eebdd8\"\u003e\u003ccode\u003e3b09dd8\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/c30821ff6ed3d0506ee11a4f4f28cd25c13e7ec8\"\u003e\u003ccode\u003ec30821f\u003c/code\u003e\u003c/a\u003e 🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/response-model.md\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/666890ac7f3211d15e70503002f284fd18107125\"\u003e\u003ccode\u003e666890a\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/937af92ba7573799613c707046777e3731b3499f\"\u003e\u003ccode\u003e937af92\u003c/code\u003e\u003c/a\u003e 🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/security/index.md\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.115.13...0.115.14\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `uvicorn` from 0.34.3 to 0.35.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/encode/uvicorn/releases\"\u003euvicorn's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 0.35.0\u003c/h2\u003e\n\u003ch2\u003eAdded\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eWebSocketsSansIOProtocol\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/uvicorn/pull/2540\"\u003eencode/uvicorn#2540\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChanged\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRefine help message for option \u003ccode\u003e--proxy-headers\u003c/code\u003e by \u003ca href=\"https://github.com/zhangyoufu\"\u003e\u003ccode\u003e@​zhangyoufu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/uvicorn/pull/2653\"\u003eencode/uvicorn#2653\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhangyoufu\"\u003e\u003ccode\u003e@​zhangyoufu\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/encode/uvicorn/pull/2653\"\u003eencode/uvicorn#2653\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/encode/uvicorn/compare/0.34.3...0.35.0\"\u003ehttps://github.com/encode/uvicorn/compare/0.34.3...0.35.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/encode/uvicorn/blob/master/docs/release-notes.md\"\u003euvicorn's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.35.0 (June 28, 2025)\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eWebSocketsSansIOProtocol\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2540\"\u003e#2540\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRefine help message for option \u003ccode\u003e--proxy-headers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2653\"\u003e#2653\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/encode/uvicorn/commit/daecb45327702efe8f702f46fb0870c2d6357837\"\u003e\u003ccode\u003edaecb45\u003c/code\u003e\u003c/a\u003e Version 0.35.0 (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2654\"\u003e#2654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/encode/uvicorn/commit/22dfd3fa95dd035db77099c4903aad6e148a50a8\"\u003e\u003ccode\u003e22dfd3f\u003c/code\u003e\u003c/a\u003e refine help message for option --proxy-headers (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2653\"\u003e#2653\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/encode/uvicorn/commit/b9606269a7f24f2511de0015b7af7df499be569f\"\u003e\u003ccode\u003eb960626\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eWebSocketsSansIOProtocol\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2540\"\u003e#2540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/encode/uvicorn/commit/5432729137988a53bb70d2f3e0c790f9bdf33ec5\"\u003e\u003ccode\u003e5432729\u003c/code\u003e\u003c/a\u003e Add CITATION.cff (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2649\"\u003e#2649\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/encode/uvicorn/compare/0.34.3...0.35.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.12.0 to 0.12.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC1802\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there's comments in the \u003ccode\u003elen\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18836\"\u003e#18836\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/32c54189cb45a9d0409a1140265ce6d5fcec214d\"\u003e\u003ccode\u003e32c5418\u003c/code\u003e\u003c/a\u003e Bump 0.12.1 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18969\"\u003e#18969\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b85c219283dcdae474642e9174352da5d9aee132\"\u003e\u003ccode\u003eb85c219\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eFastAPI\u003c/code\u003e] Add fix safety section to \u003ccode\u003eFAST002\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18940\"\u003e#18940\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b1d1cf1d382acd745a57a391a7befb6c300f6c9a\"\u003e\u003ccode\u003eb1d1cf1\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for leading tab mis-alignment in diagnostic renderin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/1dcdf7f41d80b819576b8e146c1af9e72b44d2da\"\u003e\u003ccode\u003e1dcdf7f\u003c/code\u003e\u003c/a\u003e [ty] Resolve python environment in \u003ccode\u003eOptions::to_program_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18960\"\u003e#18960\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d00697621e2a772e9ad0b25c4c74f1572d72fd29\"\u003e\u003ccode\u003ed006976\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76619b96e504d63e574227e8d31d6ecfcd32d1c7\"\u003e\u003ccode\u003e76619b9\u003c/code\u003e\u003c/a\u003e [ty] Fix rendering of long lines that are indented with tabs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/6e25cfba2b2fb607e16102cb5cd84cd775882d80\"\u003e\u003ccode\u003e6e25cfb\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for diagnostic rendering panic\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76387295a581ed5c665b685e1d69fe2751ad24b1\"\u003e\u003ccode\u003e7638729\u003c/code\u003e\u003c/a\u003e [ty] Move venv and conda env discovery to \u003ccode\u003eSearchPath::from_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18938\"\u003e#18938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d04e63a6d9dbb5c751c99d113d7eaf98b765b426\"\u003e\u003ccode\u003ed04e63a\u003c/code\u003e\u003c/a\u003e [ty] Add regression-benchmark for attribute-assignment hang (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18957\"\u003e#18957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/86fd9b634e5526d2093aeb5a37dc6f30cefc1925\"\u003e\u003ccode\u003e86fd9b6\u003c/code\u003e\u003c/a\u003e [ty] Format conflicting types as an enumeration (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18956\"\u003e#18956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.12.0...0.12.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/fiaisis/plotting-service/pull/248","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/fiaisis%2Fplotting-service/issues/248","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/248/packages"},{"uuid":"3190030216","node_id":"PR_kwDOO_gais6cxxjY","number":7,"state":"closed","title":"Upgrade: bump the pip-updates group across 1 directory with 6 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-07-07T18:24:18.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-30T22:24:10.000Z","updated_at":"2025-07-07T18:24:18.000Z","time_to_close":590408,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Upgrade: bump","group_name":"pip-updates","update_count":6,"packages":[{"name":"boto3","old_version":"1.38.39","new_version":"1.38.46","repository_url":"https://github.com/boto/boto3"},{"name":"datamodel-code-generator","old_version":"0.31.1","new_version":"0.31.2","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"sentry-sdk","old_version":"2.30.0","new_version":"2.32.0","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"},{"name":"django-simple-history","old_version":"3.8.0","new_version":"3.10.1","repository_url":"https://github.com/django-commons/django-simple-history"},{"name":"ruff","old_version":"0.12.0","new_version":"0.12.1","repository_url":"https://github.com/astral-sh/ruff"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-updates group with 6 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [boto3](https://github.com/boto/boto3) | `1.38.39` | `1.38.46` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.31.1` | `0.31.2` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.30.0` | `2.32.0` |\n| [pytest-random-order](https://github.com/jbasko/pytest-random-order) | `1.1.1` | `1.2.0` |\n| [django-simple-history](https://github.com/django-commons/django-simple-history) | `3.8.0` | `3.10.1` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.12.0` | `0.12.1` |\n\n\nUpdates `boto3` from 1.38.39 to 1.38.46\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/f02c8ee2d7d3f7cfcc91df05ebe8be434433875a\"\u003e\u003ccode\u003ef02c8ee\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.38.46'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/804ef0f99d92575611f623f700e693c2f3e1ada2\"\u003e\u003ccode\u003e804ef0f\u003c/code\u003e\u003c/a\u003e Bumping version to 1.38.46\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/533e5c24002b7f8df6f8c93d216ba9bfbd6d6203\"\u003e\u003ccode\u003e533e5c2\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/3595b04d47f723ae62d9f2b1e560cc88dbabb96c\"\u003e\u003ccode\u003e3595b04\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.38.45'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/874b24a403d49d4528a3e56bf979bd900d6b86c4\"\u003e\u003ccode\u003e874b24a\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.38.45' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/df0b3fc9f783271a4fb3c137bb88509ae8377326\"\u003e\u003ccode\u003edf0b3fc\u003c/code\u003e\u003c/a\u003e Bumping version to 1.38.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/bd05e8e0580c9cf576e733ed9a467459269d614a\"\u003e\u003ccode\u003ebd05e8e\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/6fac8a489f52a0be5d6615676c53758300f47ce2\"\u003e\u003ccode\u003e6fac8a4\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.38.44'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/b15874f702e8d45ecf098cc70d5abd981f288458\"\u003e\u003ccode\u003eb15874f\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.38.44' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/02fd8fa4a86c1b6ae2348aeb40d1f2e7b2e8a3f1\"\u003e\u003ccode\u003e02fd8fa\u003c/code\u003e\u003c/a\u003e Bumping version to 1.38.44\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.38.39...1.38.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `datamodel-code-generator` from 0.31.1 to 0.31.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/releases\"\u003edatamodel-code-generator's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.31.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: prevent code injection through filename in generated headers by \u003ca href=\"https://github.com/koxudaxi\"\u003e\u003ccode\u003e@​koxudaxi\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2428\"\u003ekoxudaxi/datamodel-code-generator#2428\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.31.2\"\u003ehttps://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.31.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/5553dd2c8ef503a3010433f7f24f2179efe76fea\"\u003e\u003ccode\u003e5553dd2\u003c/code\u003e\u003c/a\u003e fix: prevent code injection through filename in generated headers (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2428\"\u003e#2428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.31.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentry-sdk` from 2.30.0 to 2.32.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/releases\"\u003esentry-sdk's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(sessions): Add top-level start- and end session methods (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4474\"\u003e#4474\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(openai-agents): Set tool span to failed if an error is raised in the tool (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4527\"\u003e#4527\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(integrations/ray): Correctly pass keyword arguments to ray.remote function (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4430\"\u003e#4430\u003c/a\u003e) by \u003ca href=\"https://github.com/svartalf\"\u003e\u003ccode\u003e@​svartalf\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Make \u003ccode\u003espan_map\u003c/code\u003e an instance variable (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4476\"\u003e#4476\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Ensure no duplicate \u003ccode\u003eSentryLangchainCallback\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4485\"\u003e#4485\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(Litestar): Apply \u003ccode\u003efailed_request_status_codes\u003c/code\u003e to exceptions raised in middleware (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4074\"\u003e#4074\u003c/a\u003e) by \u003ca href=\"https://github.com/vrslev\"\u003e\u003ccode\u003e@​vrslev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.31.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eNew Integration (BETA):\u003c/strong\u003e Add support for \u003ccode\u003eopenai-agents\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4437\"\u003e#4437\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe can now instrument AI agents that are created with the \u003ca href=\"https://openai.github.io/openai-agents-python/\"\u003eOpenAI Agents SDK\u003c/a\u003e out of the box.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.openai_agents import OpenAIAgentsIntegration\n\u003ch1\u003eAdd the OpenAIAgentsIntegration to your sentry_sdk.init call:\u003c/h1\u003e\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\ndsn=\u0026quot;...\u0026quot;,\u003cbr /\u003e\nintegrations=[\u003cbr /\u003e\nOpenAIAgentsIntegration(),\u003cbr /\u003e\n]\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eFor more information see the \u003ca href=\"https://docs.sentry.io/platforms/python/integrations/openai-agents/\"\u003eOpenAI Agents integrations documentation\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eLogs: Add support for \u003ccode\u003edict\u003c/code\u003e arguments (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4478\"\u003e#4478\u003c/a\u003e) by \u003ca href=\"https://github.com/AbhiPrasad\"\u003e\u003ccode\u003e@​AbhiPrasad\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Cursor generated rules (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4493\"\u003e#4493\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGreatly simplify Langchain integrations \u003ccode\u003e_wrap_configure\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4479\"\u003e#4479\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Remove tracerite pin (almost) (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4504\"\u003e#4504\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(profiling): Ensure profiler thread exits when needed (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4497\"\u003e#4497\u003c/a\u003e) by \u003ca href=\"https://github.com/Zylphrex\"\u003e\u003ccode\u003e@​Zylphrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Do not install newest \u003ccode\u003etracerite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4494\"\u003e#4494\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(scope): Handle token reset \u003ccode\u003eLookupError\u003c/code\u003es gracefully (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4481\"\u003e#4481\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Tox update (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4509\"\u003e#4509\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Upper bound on fakeredis on old Python versions (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4482\"\u003e#4482\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Regenerate tox (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4457\"\u003e#4457\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md\"\u003esentry-sdk's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(sessions): Add top-level start- and end session methods (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4474\"\u003e#4474\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(openai-agents): Set tool span to failed if an error is raised in the tool (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4527\"\u003e#4527\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(integrations/ray): Correctly pass keyword arguments to ray.remote function (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4430\"\u003e#4430\u003c/a\u003e) by \u003ca href=\"https://github.com/svartalf\"\u003e\u003ccode\u003e@​svartalf\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Make \u003ccode\u003espan_map\u003c/code\u003e an instance variable (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4476\"\u003e#4476\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Ensure no duplicate \u003ccode\u003eSentryLangchainCallback\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4485\"\u003e#4485\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(Litestar): Apply \u003ccode\u003efailed_request_status_codes\u003c/code\u003e to exceptions raised in middleware (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4074\"\u003e#4074\u003c/a\u003e) by \u003ca href=\"https://github.com/vrslev\"\u003e\u003ccode\u003e@​vrslev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.31.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eNew Integration (BETA):\u003c/strong\u003e Add support for \u003ccode\u003eopenai-agents\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4437\"\u003e#4437\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe can now instrument AI agents that are created with the \u003ca href=\"https://openai.github.io/openai-agents-python/\"\u003eOpenAI Agents SDK\u003c/a\u003e out of the box.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.openai_agents import OpenAIAgentsIntegration\n\u003ch1\u003eAdd the OpenAIAgentsIntegration to your sentry_sdk.init call:\u003c/h1\u003e\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\ndsn=\u0026quot;...\u0026quot;,\u003cbr /\u003e\nintegrations=[\u003cbr /\u003e\nOpenAIAgentsIntegration(),\u003cbr /\u003e\n]\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eFor more information see the \u003ca href=\"https://docs.sentry.io/platforms/python/integrations/openai-agents/\"\u003eOpenAI Agents integrations documentation\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eLogs: Add support for \u003ccode\u003edict\u003c/code\u003e arguments (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4478\"\u003e#4478\u003c/a\u003e) by \u003ca href=\"https://github.com/AbhiPrasad\"\u003e\u003ccode\u003e@​AbhiPrasad\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Cursor generated rules (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4493\"\u003e#4493\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGreatly simplify Langchain integrations \u003ccode\u003e_wrap_configure\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4479\"\u003e#4479\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Remove tracerite pin (almost) (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4504\"\u003e#4504\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(profiling): Ensure profiler thread exits when needed (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4497\"\u003e#4497\u003c/a\u003e) by \u003ca href=\"https://github.com/Zylphrex\"\u003e\u003ccode\u003e@​Zylphrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Do not install newest \u003ccode\u003etracerite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4494\"\u003e#4494\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(scope): Handle token reset \u003ccode\u003eLookupError\u003c/code\u003es gracefully (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4481\"\u003e#4481\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Tox update (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4509\"\u003e#4509\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Upper bound on fakeredis on old Python versions (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4482\"\u003e#4482\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Regenerate tox (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4457\"\u003e#4457\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/4b022dc731aa10e8cdb1cc8342c06374b226b6f4\"\u003e\u003ccode\u003e4b022dc\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into release/2.32.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/2634a523b3416748cf952bc517641594b9b40bac\"\u003e\u003ccode\u003e2634a52\u003c/code\u003e\u003c/a\u003e Pin zope.event (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4531\"\u003e#4531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/c815a3245d10e45bebee5b47292deec438a4d4d2\"\u003e\u003ccode\u003ec815a32\u003c/code\u003e\u003c/a\u003e updated changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/bca8816ac1f84fe4304682bd6de173fbf0c005a3\"\u003e\u003ccode\u003ebca8816\u003c/code\u003e\u003c/a\u003e release: 2.32.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/546ce1f71023b651860d6b576024b9d93b4c9ab8\"\u003e\u003ccode\u003e546ce1f\u003c/code\u003e\u003c/a\u003e Set tool span to failed if an error is raised in the tool (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4527\"\u003e#4527\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/ab2e3f08b600b22a95c3313eddd66f733e2d133c\"\u003e\u003ccode\u003eab2e3f0\u003c/code\u003e\u003c/a\u003e fix(integrations/ray): Correctly pass keyword arguments to ray.remote functio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/7804260fbf3ed8f797af95d2c0bdfcfeb85b0605\"\u003e\u003ccode\u003e7804260\u003c/code\u003e\u003c/a\u003e fix(langchain): Make \u003ccode\u003espan_map\u003c/code\u003e an instance variable (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4476\"\u003e#4476\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/0a2d8585f18f1d135d1f04624b702ef46fd119bb\"\u003e\u003ccode\u003e0a2d858\u003c/code\u003e\u003c/a\u003e fix(langchain): Ensure no duplicate \u003ccode\u003eSentryLangchainCallback\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4485\"\u003e#4485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/dae02180dfb095cdbd8ed7e81544ef048482d70b\"\u003e\u003ccode\u003edae0218\u003c/code\u003e\u003c/a\u003e fix(Litestar): Apply \u003ccode\u003efailed_request_status_codes\u003c/code\u003e to exceptions raised in mi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/65d31af4ff9b93cddf12d043fe9d631e3c6c85a4\"\u003e\u003ccode\u003e65d31af\u003c/code\u003e\u003c/a\u003e Merge branch 'release/2.31.0'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getsentry/sentry-python/compare/2.30.0...2.32.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `django-simple-history` from 3.8.0 to 3.10.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/django-commons/django-simple-history/releases\"\u003edjango-simple-history's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 3.10.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/blob/3.10.1/CHANGES.rst#3101-2025-06-20\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed changed log syntax to support PyPI packaging. by \u003ca href=\"https://github.com/tim-schilling\"\u003e\u003ccode\u003e@​tim-schilling\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1499\"\u003edjango-commons/django-simple-history#1499\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.10.0...3.10.1\"\u003ehttps://github.com/django-commons/django-simple-history/compare/3.10.0...3.10.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease 3.10.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/jazzband/django-simple-history/blob/3.10.0/CHANGES.rst#3100-2025-06-20\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExclude tests from wheels by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1478\"\u003edjango-commons/django-simple-history#1478\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSwitch repo to Django Commons by \u003ca href=\"https://github.com/tim-schilling\"\u003e\u003ccode\u003e@​tim-schilling\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1429\"\u003edjango-commons/django-simple-history#1429\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for release 3.10.0 by \u003ca href=\"https://github.com/ddabble\"\u003e\u003ccode\u003e@​ddabble\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1498\"\u003edjango-commons/django-simple-history#1498\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1478\"\u003edjango-commons/django-simple-history#1478\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.9.0...3.10.0\"\u003ehttps://github.com/django-commons/django-simple-history/compare/3.9.0...3.10.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease 3.9.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/jazzband/django-simple-history/blob/3.9.0/CHANGES.rst#390-2025-01-26\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove the deprecated \u003ccode\u003esimple_history_admin_list.display_list()\u003c/code\u003e + \u003cstrong\u003eRelease 3.9.0\u003c/strong\u003e by \u003ca href=\"https://github.com/ddabble\"\u003e\u003ccode\u003e@​ddabble\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jazzband/django-simple-history/pull/1444\"\u003ejazzband/django-simple-history#1444\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jazzband/django-simple-history/compare/3.8.0...3.9.0\"\u003ehttps://github.com/jazzband/django-simple-history/compare/3.8.0...3.9.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/django-commons/django-simple-history/blob/master/CHANGES.rst\"\u003edjango-simple-history's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.10.1 (2025-06-20)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed changelog syntax to support PyPI packaging (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1499\"\u003egh-1499\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.0 (2025-06-20)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTests are no longer bundled in released wheels (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1478\"\u003egh-1478\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMove repository to the Django Commons organization (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1391\"\u003egh-1391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.9.0 (2025-01-26)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved the \u003ccode\u003esimple_history_admin_list.display_list()\u003c/code\u003e template tag that was\ndeprecated in version 3.6.0 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1444\"\u003egh-1444\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/dc569842772578558fe4a84e5937d6fc31dd735d\"\u003e\u003ccode\u003edc56984\u003c/code\u003e\u003c/a\u003e Fixed changed log syntax to support PyPI packaging. (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1499\"\u003e#1499\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/58dbb06e68f821c99128b83619a856444319fa04\"\u003e\u003ccode\u003e58dbb06\u003c/code\u003e\u003c/a\u003e Prepare for release 3.10.0 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1498\"\u003e#1498\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/bc9909f32e33f8f33dccd28934994dffb9c4f459\"\u003e\u003ccode\u003ebc9909f\u003c/code\u003e\u003c/a\u003e Switch repo to Django Commons (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1429\"\u003e#1429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/9fb7c5c30b43917eaf98ee5ef266705bd191a825\"\u003e\u003ccode\u003e9fb7c5c\u003c/code\u003e\u003c/a\u003e Bump codecov/codecov-action from 3 to 5 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1425\"\u003e#1425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/7d6b50bf6f4ccbddd75bc3685dc9cf04240176d2\"\u003e\u003ccode\u003e7d6b50b\u003c/code\u003e\u003c/a\u003e Bump coverage from 7.8.0 to 7.9.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1495\"\u003e#1495\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/8bb61757cb9563c2fd0c17e1fa22c53013c311e3\"\u003e\u003ccode\u003e8bb6175\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1482\"\u003e#1482\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/010928f2fc52acd68df41e61686ed233171530e8\"\u003e\u003ccode\u003e010928f\u003c/code\u003e\u003c/a\u003e Bump tox from 4.25.0 to 4.26.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1485\"\u003e#1485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/5721e31055b0c952daf3601b6c35bcde78cab31b\"\u003e\u003ccode\u003e5721e31\u003c/code\u003e\u003c/a\u003e Bump psycopg[binary] from 3.2.6 to 3.2.9 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1484\"\u003e#1484\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/810149708ad11a284cd581972db46142120f824a\"\u003e\u003ccode\u003e8101497\u003c/code\u003e\u003c/a\u003e Bump flake8 from 7.1.2 to 7.2.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1474\"\u003e#1474\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/626ece4082c4a7f87d14566e7a3c568043233ac5\"\u003e\u003ccode\u003e626ece4\u003c/code\u003e\u003c/a\u003e Bump coverage from 7.6.12 to 7.8.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.8.0...3.10.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.12.0 to 0.12.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC1802\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there's comments in the \u003ccode\u003elen\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18836\"\u003e#18836\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/32c54189cb45a9d0409a1140265ce6d5fcec214d\"\u003e\u003ccode\u003e32c5418\u003c/code\u003e\u003c/a\u003e Bump 0.12.1 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18969\"\u003e#18969\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b85c219283dcdae474642e9174352da5d9aee132\"\u003e\u003ccode\u003eb85c219\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eFastAPI\u003c/code\u003e] Add fix safety section to \u003ccode\u003eFAST002\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18940\"\u003e#18940\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b1d1cf1d382acd745a57a391a7befb6c300f6c9a\"\u003e\u003ccode\u003eb1d1cf1\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for leading tab mis-alignment in diagnostic renderin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/1dcdf7f41d80b819576b8e146c1af9e72b44d2da\"\u003e\u003ccode\u003e1dcdf7f\u003c/code\u003e\u003c/a\u003e [ty] Resolve python environment in \u003ccode\u003eOptions::to_program_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18960\"\u003e#18960\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d00697621e2a772e9ad0b25c4c74f1572d72fd29\"\u003e\u003ccode\u003ed006976\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76619b96e504d63e574227e8d31d6ecfcd32d1c7\"\u003e\u003ccode\u003e76619b9\u003c/code\u003e\u003c/a\u003e [ty] Fix rendering of long lines that are indented with tabs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/6e25cfba2b2fb607e16102cb5cd84cd775882d80\"\u003e\u003ccode\u003e6e25cfb\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for diagnostic rendering panic\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76387295a581ed5c665b685e1d69fe2751ad24b1\"\u003e\u003ccode\u003e7638729\u003c/code\u003e\u003c/a\u003e [ty] Move venv and conda env discovery to \u003ccode\u003eSearchPath::from_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18938\"\u003e#18938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d04e63a6d9dbb5c751c99d113d7eaf98b765b426\"\u003e\u003ccode\u003ed04e63a\u003c/code\u003e\u003c/a\u003e [ty] Add regression-benchmark for attribute-assignment hang (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18957\"\u003e#18957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/86fd9b634e5526d2093aeb5a37dc6f30cefc1925\"\u003e\u003ccode\u003e86fd9b6\u003c/code\u003e\u003c/a\u003e [ty] Format conflicting types as an enumeration (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18956\"\u003e#18956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.12.0...0.12.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/Ed-BW/consult-demo/pull/7","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ed-BW%2Fconsult-demo/issues/7","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/7/packages"},{"uuid":"2627454468","node_id":"PR_kwDOL_9g-s6cm8YE","number":115,"state":"closed","title":"Bump the python-packages group across 1 directory with 4 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-07-07T00:50:29.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-30T01:09:35.000Z","updated_at":"2025-07-07T00:50:29.000Z","time_to_close":603654,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"python-packages","update_count":4,"packages":[{"name":"fastapi","old_version":"0.115.13","new_version":"0.115.14"},{"name":"uvicorn","old_version":"0.34.3","new_version":"0.35.0","repository_url":"https://github.com/encode/uvicorn"},{"name":"ruff","old_version":"0.12.0","new_version":"0.12.1","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-packages group with 4 updates in the / directory: [fastapi[all]](https://github.com/fastapi/fastapi), [uvicorn](https://github.com/encode/uvicorn), [ruff](https://github.com/astral-sh/ruff) and [pytest-random-order](https://github.com/jbasko/pytest-random-order).\n\nUpdates `fastapi[all]` from 0.115.13 to 0.115.14\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi[all]'s releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.115.14\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for unions when using \u003ccode\u003eForm\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13827\"\u003e#13827\u003c/a\u003e by \u003ca href=\"https://github.com/patrick91\"\u003e\u003ccode\u003e@​patrick91\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✏️ Fix grammar mistake in \u003ccode\u003edocs/en/docs/advanced/response-directly.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13800\"\u003e#13800\u003c/a\u003e by \u003ca href=\"https://github.com/NavesSapnis\"\u003e\u003ccode\u003e@​NavesSapnis\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Update Speakeasy URL to Speakeasy Sandbox. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13697\"\u003e#13697\u003c/a\u003e by \u003ca href=\"https://github.com/ndimares\"\u003e\u003ccode\u003e@​ndimares\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTranslations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/response-model.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13792\"\u003e#13792\u003c/a\u003e by \u003ca href=\"https://github.com/valentinDruzhinin\"\u003e\u003ccode\u003e@​valentinDruzhinin\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/security/index.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13805\"\u003e#13805\u003c/a\u003e by \u003ca href=\"https://github.com/valentinDruzhinin\"\u003e\u003ccode\u003e@​valentinDruzhinin\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✏️ Fix typo in \u003ccode\u003edocs/ja/docs/tutorial/encoder.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13815\"\u003e#13815\u003c/a\u003e by \u003ca href=\"https://github.com/ruzia\"\u003e\u003ccode\u003e@​ruzia\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✏️ Fix typo in \u003ccode\u003edocs/ja/docs/tutorial/handling-errors.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13814\"\u003e#13814\u003c/a\u003e by \u003ca href=\"https://github.com/ruzia\"\u003e\u003ccode\u003e@​ruzia\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✏️ Fix typo in \u003ccode\u003edocs/ja/docs/tutorial/body-fields.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13802\"\u003e#13802\u003c/a\u003e by \u003ca href=\"https://github.com/ruzia\"\u003e\u003ccode\u003e@​ruzia\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Add Russian translation for \u003ccode\u003edocs/ru/docs/advanced/index.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13797\"\u003e#13797\u003c/a\u003e by \u003ca href=\"https://github.com/NavesSapnis\"\u003e\u003ccode\u003e@​NavesSapnis\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆ [pre-commit.ci] pre-commit autoupdate. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13823\"\u003e#13823\u003c/a\u003e by \u003ca href=\"https://github.com/apps/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/ebdeda2de6e17036e3048940b7a9e725ef6a95b7\"\u003e\u003ccode\u003eebdeda2\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.115.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8fa19a6faa3309a150f6e6fafd2c3a5043c09718\"\u003e\u003ccode\u003e8fa19a6\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/3ecb4c53895c0a8bf3462983d48379abc54fcaec\"\u003e\u003ccode\u003e3ecb4c5\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/9d0d8828cc6b3f0217581d7e607ba8e4d7e0017b\"\u003e\u003ccode\u003e9d0d882\u003c/code\u003e\u003c/a\u003e 🐛 Fix support for unions when using \u003ccode\u003eForm\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/13827\"\u003e#13827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/df35896a0ebb379d68b7c9bd9fdadd476ef6ac83\"\u003e\u003ccode\u003edf35896\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8f64d09ee01daf4773a77e9690e511d928da9b98\"\u003e\u003ccode\u003e8f64d09\u003c/code\u003e\u003c/a\u003e ⬆ [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/13823\"\u003e#13823\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/3b09dd8e01ecdbdc56829cc7b0f524a882eebdd8\"\u003e\u003ccode\u003e3b09dd8\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/c30821ff6ed3d0506ee11a4f4f28cd25c13e7ec8\"\u003e\u003ccode\u003ec30821f\u003c/code\u003e\u003c/a\u003e 🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/response-model.md\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/666890ac7f3211d15e70503002f284fd18107125\"\u003e\u003ccode\u003e666890a\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/937af92ba7573799613c707046777e3731b3499f\"\u003e\u003ccode\u003e937af92\u003c/code\u003e\u003c/a\u003e 🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/security/index.md\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.115.13...0.115.14\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `uvicorn` from 0.34.3 to 0.35.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/encode/uvicorn/releases\"\u003euvicorn's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 0.35.0\u003c/h2\u003e\n\u003ch2\u003eAdded\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eWebSocketsSansIOProtocol\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/uvicorn/pull/2540\"\u003eencode/uvicorn#2540\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChanged\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRefine help message for option \u003ccode\u003e--proxy-headers\u003c/code\u003e by \u003ca href=\"https://github.com/zhangyoufu\"\u003e\u003ccode\u003e@​zhangyoufu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/uvicorn/pull/2653\"\u003eencode/uvicorn#2653\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhangyoufu\"\u003e\u003ccode\u003e@​zhangyoufu\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/encode/uvicorn/pull/2653\"\u003eencode/uvicorn#2653\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/encode/uvicorn/compare/0.34.3...0.35.0\"\u003ehttps://github.com/encode/uvicorn/compare/0.34.3...0.35.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/encode/uvicorn/blob/master/docs/release-notes.md\"\u003euvicorn's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.35.0 (June 28, 2025)\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eWebSocketsSansIOProtocol\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2540\"\u003e#2540\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRefine help message for option \u003ccode\u003e--proxy-headers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2653\"\u003e#2653\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/encode/uvicorn/commit/daecb45327702efe8f702f46fb0870c2d6357837\"\u003e\u003ccode\u003edaecb45\u003c/code\u003e\u003c/a\u003e Version 0.35.0 (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2654\"\u003e#2654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/encode/uvicorn/commit/22dfd3fa95dd035db77099c4903aad6e148a50a8\"\u003e\u003ccode\u003e22dfd3f\u003c/code\u003e\u003c/a\u003e refine help message for option --proxy-headers (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2653\"\u003e#2653\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/encode/uvicorn/commit/b9606269a7f24f2511de0015b7af7df499be569f\"\u003e\u003ccode\u003eb960626\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eWebSocketsSansIOProtocol\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2540\"\u003e#2540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/encode/uvicorn/commit/5432729137988a53bb70d2f3e0c790f9bdf33ec5\"\u003e\u003ccode\u003e5432729\u003c/code\u003e\u003c/a\u003e Add CITATION.cff (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2649\"\u003e#2649\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/encode/uvicorn/compare/0.34.3...0.35.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.12.0 to 0.12.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC1802\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there's comments in the \u003ccode\u003elen\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18836\"\u003e#18836\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/32c54189cb45a9d0409a1140265ce6d5fcec214d\"\u003e\u003ccode\u003e32c5418\u003c/code\u003e\u003c/a\u003e Bump 0.12.1 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18969\"\u003e#18969\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b85c219283dcdae474642e9174352da5d9aee132\"\u003e\u003ccode\u003eb85c219\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eFastAPI\u003c/code\u003e] Add fix safety section to \u003ccode\u003eFAST002\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18940\"\u003e#18940\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b1d1cf1d382acd745a57a391a7befb6c300f6c9a\"\u003e\u003ccode\u003eb1d1cf1\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for leading tab mis-alignment in diagnostic renderin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/1dcdf7f41d80b819576b8e146c1af9e72b44d2da\"\u003e\u003ccode\u003e1dcdf7f\u003c/code\u003e\u003c/a\u003e [ty] Resolve python environment in \u003ccode\u003eOptions::to_program_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18960\"\u003e#18960\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d00697621e2a772e9ad0b25c4c74f1572d72fd29\"\u003e\u003ccode\u003ed006976\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76619b96e504d63e574227e8d31d6ecfcd32d1c7\"\u003e\u003ccode\u003e76619b9\u003c/code\u003e\u003c/a\u003e [ty] Fix rendering of long lines that are indented with tabs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/6e25cfba2b2fb607e16102cb5cd84cd775882d80\"\u003e\u003ccode\u003e6e25cfb\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for diagnostic rendering panic\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76387295a581ed5c665b685e1d69fe2751ad24b1\"\u003e\u003ccode\u003e7638729\u003c/code\u003e\u003c/a\u003e [ty] Move venv and conda env discovery to \u003ccode\u003eSearchPath::from_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18938\"\u003e#18938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d04e63a6d9dbb5c751c99d113d7eaf98b765b426\"\u003e\u003ccode\u003ed04e63a\u003c/code\u003e\u003c/a\u003e [ty] Add regression-benchmark for attribute-assignment hang (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18957\"\u003e#18957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/86fd9b634e5526d2093aeb5a37dc6f30cefc1925\"\u003e\u003ccode\u003e86fd9b6\u003c/code\u003e\u003c/a\u003e [ty] Format conflicting types as an enumeration (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18956\"\u003e#18956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.12.0...0.12.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/fiaisis/fia-auth/pull/115","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/fiaisis%2Ffia-auth/issues/115","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/115/packages"},{"uuid":"3180876100","node_id":"PR_kwDOBDa8Z86cU3Xs","number":4048,"state":"open","title":"build: bump pytest-random-order from 1.1.1 to 1.2.0 in the testing group","user":"dependabot[bot]","labels":["dependencies","maintenance"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-27T00:21:06.000Z","updated_at":"2025-06-27T02:11:17.174Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build","packages":[{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"}],"path":"the testing group","ecosystem":"pip"},"body":"Bumps the testing group with 1 update: [pytest-random-order](https://github.com/jbasko/pytest-random-order).\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=pytest-random-order\u0026package-manager=pip\u0026previous-version=1.1.1\u0026new-version=1.2.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/ansys/pymapdl/pull/4048","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ansys%2Fpymapdl/issues/4048","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/4048/packages"},{"uuid":"2622682866","node_id":"PR_kwDOI1NVYM6cUvby","number":318,"state":"open","title":"Bump the jobwatcher-python-packages group across 1 directory with 2 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-26T23:58:17.000Z","updated_at":"2025-07-11T12:36:03.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"jobwatcher-python-packages","update_count":2,"packages":[{"name":"ruff","old_version":"0.12.0","new_version":"0.12.1","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"}],"path":null,"ecosystem":"pip"},"body":"Bumps the jobwatcher-python-packages group with 2 updates in the /job_watcher directory: [ruff](https://github.com/astral-sh/ruff) and [pytest-random-order](https://github.com/jbasko/pytest-random-order).\n\nUpdates `ruff` from 0.12.0 to 0.12.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC1802\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there's comments in the \u003ccode\u003elen\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18836\"\u003e#18836\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/32c54189cb45a9d0409a1140265ce6d5fcec214d\"\u003e\u003ccode\u003e32c5418\u003c/code\u003e\u003c/a\u003e Bump 0.12.1 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18969\"\u003e#18969\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b85c219283dcdae474642e9174352da5d9aee132\"\u003e\u003ccode\u003eb85c219\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eFastAPI\u003c/code\u003e] Add fix safety section to \u003ccode\u003eFAST002\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18940\"\u003e#18940\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b1d1cf1d382acd745a57a391a7befb6c300f6c9a\"\u003e\u003ccode\u003eb1d1cf1\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for leading tab mis-alignment in diagnostic renderin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/1dcdf7f41d80b819576b8e146c1af9e72b44d2da\"\u003e\u003ccode\u003e1dcdf7f\u003c/code\u003e\u003c/a\u003e [ty] Resolve python environment in \u003ccode\u003eOptions::to_program_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18960\"\u003e#18960\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d00697621e2a772e9ad0b25c4c74f1572d72fd29\"\u003e\u003ccode\u003ed006976\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76619b96e504d63e574227e8d31d6ecfcd32d1c7\"\u003e\u003ccode\u003e76619b9\u003c/code\u003e\u003c/a\u003e [ty] Fix rendering of long lines that are indented with tabs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/6e25cfba2b2fb607e16102cb5cd84cd775882d80\"\u003e\u003ccode\u003e6e25cfb\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for diagnostic rendering panic\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76387295a581ed5c665b685e1d69fe2751ad24b1\"\u003e\u003ccode\u003e7638729\u003c/code\u003e\u003c/a\u003e [ty] Move venv and conda env discovery to \u003ccode\u003eSearchPath::from_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18938\"\u003e#18938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d04e63a6d9dbb5c751c99d113d7eaf98b765b426\"\u003e\u003ccode\u003ed04e63a\u003c/code\u003e\u003c/a\u003e [ty] Add regression-benchmark for attribute-assignment hang (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18957\"\u003e#18957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/86fd9b634e5526d2093aeb5a37dc6f30cefc1925\"\u003e\u003ccode\u003e86fd9b6\u003c/code\u003e\u003c/a\u003e [ty] Format conflicting types as an enumeration (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18956\"\u003e#18956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.12.0...0.12.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/fiaisis/jobcontroller/pull/318","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/fiaisis%2Fjobcontroller/issues/318","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/318/packages"},{"uuid":"2622638071","node_id":"PR_kwDOI1NVYM6cUkf3","number":317,"state":"open","title":"Bump the jobcreator-python-packages group across 1 directory with 2 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-26T23:30:06.000Z","updated_at":"2025-07-11T12:30:16.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"jobcreator-python-packages","update_count":2,"packages":[{"name":"ruff","old_version":"0.12.0","new_version":"0.12.1","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"}],"path":null,"ecosystem":"pip"},"body":"Bumps the jobcreator-python-packages group with 2 updates in the /job_creator directory: [ruff](https://github.com/astral-sh/ruff) and [pytest-random-order](https://github.com/jbasko/pytest-random-order).\n\nUpdates `ruff` from 0.12.0 to 0.12.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC1802\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there's comments in the \u003ccode\u003elen\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18836\"\u003e#18836\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/32c54189cb45a9d0409a1140265ce6d5fcec214d\"\u003e\u003ccode\u003e32c5418\u003c/code\u003e\u003c/a\u003e Bump 0.12.1 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18969\"\u003e#18969\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b85c219283dcdae474642e9174352da5d9aee132\"\u003e\u003ccode\u003eb85c219\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eFastAPI\u003c/code\u003e] Add fix safety section to \u003ccode\u003eFAST002\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18940\"\u003e#18940\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b1d1cf1d382acd745a57a391a7befb6c300f6c9a\"\u003e\u003ccode\u003eb1d1cf1\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for leading tab mis-alignment in diagnostic renderin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/1dcdf7f41d80b819576b8e146c1af9e72b44d2da\"\u003e\u003ccode\u003e1dcdf7f\u003c/code\u003e\u003c/a\u003e [ty] Resolve python environment in \u003ccode\u003eOptions::to_program_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18960\"\u003e#18960\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d00697621e2a772e9ad0b25c4c74f1572d72fd29\"\u003e\u003ccode\u003ed006976\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76619b96e504d63e574227e8d31d6ecfcd32d1c7\"\u003e\u003ccode\u003e76619b9\u003c/code\u003e\u003c/a\u003e [ty] Fix rendering of long lines that are indented with tabs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/6e25cfba2b2fb607e16102cb5cd84cd775882d80\"\u003e\u003ccode\u003e6e25cfb\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for diagnostic rendering panic\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76387295a581ed5c665b685e1d69fe2751ad24b1\"\u003e\u003ccode\u003e7638729\u003c/code\u003e\u003c/a\u003e [ty] Move venv and conda env discovery to \u003ccode\u003eSearchPath::from_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18938\"\u003e#18938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d04e63a6d9dbb5c751c99d113d7eaf98b765b426\"\u003e\u003ccode\u003ed04e63a\u003c/code\u003e\u003c/a\u003e [ty] Add regression-benchmark for attribute-assignment hang (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18957\"\u003e#18957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/86fd9b634e5526d2093aeb5a37dc6f30cefc1925\"\u003e\u003ccode\u003e86fd9b6\u003c/code\u003e\u003c/a\u003e [ty] Format conflicting types as an enumeration (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18956\"\u003e#18956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.12.0...0.12.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/fiaisis/jobcontroller/pull/317","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/fiaisis%2Fjobcontroller/issues/317","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/317/packages"},{"uuid":"2622342467","node_id":"PR_kwDOLvZq1c6cTcVD","number":246,"state":"closed","title":"Bump the python-packages group across 1 directory with 3 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-06-30T20:19:19.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-26T21:07:32.000Z","updated_at":"2025-06-30T20:19:19.000Z","time_to_close":342707,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"python-packages","update_count":3,"packages":[{"name":"fastapi","old_version":"0.115.13","new_version":"0.115.14"},{"name":"ruff","old_version":"0.12.0","new_version":"0.12.1","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-packages group with 3 updates in the /plotting-service directory: [fastapi[all]](https://github.com/fastapi/fastapi), [ruff](https://github.com/astral-sh/ruff) and [pytest-random-order](https://github.com/jbasko/pytest-random-order).\n\nUpdates `fastapi[all]` from 0.115.13 to 0.115.14\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi[all]'s releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.115.14\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for unions when using \u003ccode\u003eForm\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13827\"\u003e#13827\u003c/a\u003e by \u003ca href=\"https://github.com/patrick91\"\u003e\u003ccode\u003e@​patrick91\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✏️ Fix grammar mistake in \u003ccode\u003edocs/en/docs/advanced/response-directly.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13800\"\u003e#13800\u003c/a\u003e by \u003ca href=\"https://github.com/NavesSapnis\"\u003e\u003ccode\u003e@​NavesSapnis\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Update Speakeasy URL to Speakeasy Sandbox. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13697\"\u003e#13697\u003c/a\u003e by \u003ca href=\"https://github.com/ndimares\"\u003e\u003ccode\u003e@​ndimares\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTranslations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/response-model.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13792\"\u003e#13792\u003c/a\u003e by \u003ca href=\"https://github.com/valentinDruzhinin\"\u003e\u003ccode\u003e@​valentinDruzhinin\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/security/index.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13805\"\u003e#13805\u003c/a\u003e by \u003ca href=\"https://github.com/valentinDruzhinin\"\u003e\u003ccode\u003e@​valentinDruzhinin\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✏️ Fix typo in \u003ccode\u003edocs/ja/docs/tutorial/encoder.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13815\"\u003e#13815\u003c/a\u003e by \u003ca href=\"https://github.com/ruzia\"\u003e\u003ccode\u003e@​ruzia\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✏️ Fix typo in \u003ccode\u003edocs/ja/docs/tutorial/handling-errors.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13814\"\u003e#13814\u003c/a\u003e by \u003ca href=\"https://github.com/ruzia\"\u003e\u003ccode\u003e@​ruzia\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✏️ Fix typo in \u003ccode\u003edocs/ja/docs/tutorial/body-fields.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13802\"\u003e#13802\u003c/a\u003e by \u003ca href=\"https://github.com/ruzia\"\u003e\u003ccode\u003e@​ruzia\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Add Russian translation for \u003ccode\u003edocs/ru/docs/advanced/index.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13797\"\u003e#13797\u003c/a\u003e by \u003ca href=\"https://github.com/NavesSapnis\"\u003e\u003ccode\u003e@​NavesSapnis\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆ [pre-commit.ci] pre-commit autoupdate. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13823\"\u003e#13823\u003c/a\u003e by \u003ca href=\"https://github.com/apps/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/ebdeda2de6e17036e3048940b7a9e725ef6a95b7\"\u003e\u003ccode\u003eebdeda2\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.115.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8fa19a6faa3309a150f6e6fafd2c3a5043c09718\"\u003e\u003ccode\u003e8fa19a6\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/3ecb4c53895c0a8bf3462983d48379abc54fcaec\"\u003e\u003ccode\u003e3ecb4c5\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/9d0d8828cc6b3f0217581d7e607ba8e4d7e0017b\"\u003e\u003ccode\u003e9d0d882\u003c/code\u003e\u003c/a\u003e 🐛 Fix support for unions when using \u003ccode\u003eForm\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/13827\"\u003e#13827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/df35896a0ebb379d68b7c9bd9fdadd476ef6ac83\"\u003e\u003ccode\u003edf35896\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8f64d09ee01daf4773a77e9690e511d928da9b98\"\u003e\u003ccode\u003e8f64d09\u003c/code\u003e\u003c/a\u003e ⬆ [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/13823\"\u003e#13823\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/3b09dd8e01ecdbdc56829cc7b0f524a882eebdd8\"\u003e\u003ccode\u003e3b09dd8\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/c30821ff6ed3d0506ee11a4f4f28cd25c13e7ec8\"\u003e\u003ccode\u003ec30821f\u003c/code\u003e\u003c/a\u003e 🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/response-model.md\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/666890ac7f3211d15e70503002f284fd18107125\"\u003e\u003ccode\u003e666890a\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/937af92ba7573799613c707046777e3731b3499f\"\u003e\u003ccode\u003e937af92\u003c/code\u003e\u003c/a\u003e 🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/security/index.md\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.115.13...0.115.14\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.12.0 to 0.12.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC1802\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there's comments in the \u003ccode\u003elen\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18836\"\u003e#18836\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/32c54189cb45a9d0409a1140265ce6d5fcec214d\"\u003e\u003ccode\u003e32c5418\u003c/code\u003e\u003c/a\u003e Bump 0.12.1 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18969\"\u003e#18969\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b85c219283dcdae474642e9174352da5d9aee132\"\u003e\u003ccode\u003eb85c219\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eFastAPI\u003c/code\u003e] Add fix safety section to \u003ccode\u003eFAST002\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18940\"\u003e#18940\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b1d1cf1d382acd745a57a391a7befb6c300f6c9a\"\u003e\u003ccode\u003eb1d1cf1\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for leading tab mis-alignment in diagnostic renderin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/1dcdf7f41d80b819576b8e146c1af9e72b44d2da\"\u003e\u003ccode\u003e1dcdf7f\u003c/code\u003e\u003c/a\u003e [ty] Resolve python environment in \u003ccode\u003eOptions::to_program_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18960\"\u003e#18960\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d00697621e2a772e9ad0b25c4c74f1572d72fd29\"\u003e\u003ccode\u003ed006976\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76619b96e504d63e574227e8d31d6ecfcd32d1c7\"\u003e\u003ccode\u003e76619b9\u003c/code\u003e\u003c/a\u003e [ty] Fix rendering of long lines that are indented with tabs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/6e25cfba2b2fb607e16102cb5cd84cd775882d80\"\u003e\u003ccode\u003e6e25cfb\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for diagnostic rendering panic\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76387295a581ed5c665b685e1d69fe2751ad24b1\"\u003e\u003ccode\u003e7638729\u003c/code\u003e\u003c/a\u003e [ty] Move venv and conda env discovery to \u003ccode\u003eSearchPath::from_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18938\"\u003e#18938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d04e63a6d9dbb5c751c99d113d7eaf98b765b426\"\u003e\u003ccode\u003ed04e63a\u003c/code\u003e\u003c/a\u003e [ty] Add regression-benchmark for attribute-assignment hang (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18957\"\u003e#18957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/86fd9b634e5526d2093aeb5a37dc6f30cefc1925\"\u003e\u003ccode\u003e86fd9b6\u003c/code\u003e\u003c/a\u003e [ty] Format conflicting types as an enumeration (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18956\"\u003e#18956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.12.0...0.12.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/fiaisis/plotting-service/pull/246","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/fiaisis%2Fplotting-service/issues/246","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/246/packages"}],"issue_packages":[{"old_version":"1.1.1","new_version":"1.2.0","update_type":"minor","path":null,"pr_created_at":"2025-11-10T02:38:54.000Z","version_change":"1.1.1 → 1.2.0","issue":{"uuid":"3605860447","node_id":"PR_kwDOPUDPIs6ya5mF","number":9,"state":"open","title":"deps: bump the pip-dependencies group across 1 directory with 20 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-11-10T02:38:54.000Z","updated_at":"2025-12-01T05:03:22.558Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps: bump","group_name":"pip-dependencies","update_count":20,"packages":[{"name":"markdown","old_version":"3.7","new_version":"3.10","repository_url":"https://github.com/Python-Markdown/markdown"},{"name":"mkdocs-material","old_version":"9.5.44","new_version":"9.6.23","repository_url":"https://github.com/squidfunk/mkdocs-material"},{"name":"pymdown-extensions","old_version":"10.12","new_version":"10.16.1","repository_url":"https://github.com/facelessuser/pymdown-extensions"},{"name":"jinja2","old_version":"3.1.4","new_version":"3.1.6","repository_url":"https://github.com/pallets/jinja"},{"name":"isort","old_version":"5.13.2","new_version":"7.0.0","repository_url":"https://github.com/PyCQA/isort"},{"name":"coveralls","old_version":"4.0.1","new_version":"4.0.2","repository_url":"https://github.com/TheKevJames/coveralls-python"},{"name":"pytest","old_version":"8.3.3","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"6.0.0","new_version":"7.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"},{"name":"ruff","old_version":"0.7.4","new_version":"0.14.4","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pre-commit","old_version":"4.0.1","new_version":"4.4.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"mypy","old_version":"1.15.0","new_version":"1.18.2","repository_url":"https://github.com/python/mypy"},{"name":"pytest-asyncio","old_version":"1.1.0","new_version":"1.2.0","repository_url":"https://github.com/pytest-dev/pytest-asyncio"},{"name":"fastapi","old_version":"0.116.1","new_version":"0.121.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"sqlalchemy","old_version":"2.0.41","new_version":"2.0.44","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"alembic","old_version":"1.16.4","new_version":"1.17.1","repository_url":"https://github.com/sqlalchemy/alembic"},{"name":"pydantic","old_version":"2.11.7","new_version":"2.12.4","repository_url":"https://github.com/pydantic/pydantic"},{"name":"python-dotenv","old_version":"1.1.1","new_version":"1.2.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"pydantic-settings","old_version":"2.10.1","new_version":"2.11.0","repository_url":"https://github.com/pydantic/pydantic-settings"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-dependencies group with 20 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [markdown](https://github.com/Python-Markdown/markdown) | `3.7` | `3.10` |\n| [mkdocs-material](https://github.com/squidfunk/mkdocs-material) | `9.5.44` | `9.6.23` |\n| [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) | `10.12` | `10.16.1` |\n| [jinja2](https://github.com/pallets/jinja) | `3.1.4` | `3.1.6` |\n| [isort](https://github.com/PyCQA/isort) | `5.13.2` | `7.0.0` |\n| [coveralls](https://github.com/TheKevJames/coveralls-python) | `4.0.1` | `4.0.2` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.3` | `8.4.2` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `6.0.0` | `7.0.0` |\n| [pytest-random-order](https://github.com/jbasko/pytest-random-order) | `1.1.1` | `1.2.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.7.4` | `0.14.4` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.0.1` | `4.4.0` |\n| [mypy](https://github.com/python/mypy) | `1.15.0` | `1.18.2` |\n| [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) | `1.1.0` | `1.2.0` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.116.1` | `0.121.1` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.41` | `2.0.44` |\n| [alembic](https://github.com/sqlalchemy/alembic) | `1.16.4` | `1.17.1` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.11.7` | `2.12.4` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.1.1` | `1.2.1` |\n| [pydantic-settings](https://github.com/pydantic/pydantic-settings) | `2.10.1` | `2.11.0` |\n\n\nUpdates `markdown` from 3.7 to 3.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Python-Markdown/markdown/releases\"\u003emarkdown's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 3.10.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOfficially support Python 3.14 and PyPy 3.11 and drop support for Python 3.9\nand PyPy 3.9.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix an HTML comment parsing case in some Python versions that can cause an\ninfinite loop (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1554\"\u003e#1554\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRevert the default behavior of \u003ccode\u003eUSE_DEFINITION_ORDER\u003c/code\u003e (to \u003ccode\u003eTrue\u003c/code\u003e). The new\nbehavior introduced in 3.9.0 is experimental and results are inconsistent.\nIt should not have been made the default behavior (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1561\"\u003e#1561\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 3.9.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFootnotes are now ordered by the occurrence of their references in the\ndocument. A new configuration option for the footnotes extension,\n\u003ccode\u003eUSE_DEFINITION_ORDER\u003c/code\u003e, has been added to support restoring the previous\nbehavior of ordering footnotes by the occurrence of definitions (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1367\"\u003e#1367\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure inline processing iterates through elements in document order (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1546\"\u003e#1546\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix handling of incomplete HTML tags in code spans in Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1547\"\u003e#1547\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 3.8.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003ecodecs\u003c/code\u003e deprecation in Python 3.14.\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed comment parsing in Python 3.14.\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed declarations in Python 3.14.\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed HTML tag \u003ccode\u003e\u0026lt;foo\u003c/code\u003e and Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 3.8.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure incomplete markup declaration in raw HTML doesn't crash parser (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1534\"\u003e#1534\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed dropped content in \u003ccode\u003emd_in_html\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1526\"\u003e#1526\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed HTML handling corner case that prevented some content from not being rendered (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1528\"\u003e#1528\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 3.8\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDRY fix in \u003ccode\u003eabbr\u003c/code\u003e extension by introducing method \u003ccode\u003ecreate_element\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1483\"\u003e#1483\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eClean up test directory by removing some redundant tests and port\nnon-redundant cases to the newer test framework.\u003c/li\u003e\n\u003cli\u003eImproved performance of the raw HTML post-processor (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1510\"\u003e#1510\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Python-Markdown/markdown/blob/master/docs/changelog.md\"\u003emarkdown's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003etitle: Changelog\ntoc_depth: 2\u003c/p\u003e\n\u003ch1\u003ePython-Markdown Changelog\u003c/h1\u003e\n\u003cp\u003eAll notable changes to this project will be documented in this file.\u003c/p\u003e\n\u003cp\u003eThe format is based on \u003ca href=\"https://keepachangelog.com/en/1.1.0/\"\u003eKeep a Changelog\u003c/a\u003e,\nand this project adheres to the\n\u003ca href=\"https://packaging.python.org/en/latest/specifications/version-specifiers/\"\u003ePython Version Specification\u003c/a\u003e.\nSee the \u003ca href=\"https://github.com/Python-Markdown/markdown/blob/master/docs/contributing.md\"\u003eContributing Guide\u003c/a\u003e for details.\u003c/p\u003e\n\u003ch2\u003e[3.10.0] - 2025-11-03\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOfficially support Python 3.14 and PyPy 3.11 and drop support for Python 3.9\nand PyPy 3.9.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix an HTML comment parsing case in some Python versions that can cause an\ninfinite loop (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1554\"\u003e#1554\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRevert the default behavior of \u003ccode\u003eUSE_DEFINITION_ORDER\u003c/code\u003e (to \u003ccode\u003eTrue\u003c/code\u003e). The new\nbehavior introduced in 3.9.0 is experimental and results are inconsistent.\nIt should not have been made the default behavior (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1561\"\u003e#1561\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[3.9.0] - 2025-09-04\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFootnotes are now ordered by the occurrence of their references in the\ndocument. A new configuration option for the footnotes extension,\n\u003ccode\u003eUSE_DEFINITION_ORDER\u003c/code\u003e, has been added to support restoring the previous\nbehavior of ordering footnotes by the occurrence of definitions (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1367\"\u003e#1367\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure inline processing iterates through elements in document order (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1546\"\u003e#1546\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix handling of incomplete HTML tags in code spans in Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1547\"\u003e#1547\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[3.8.2] - 2025-06-19\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003ecodecs\u003c/code\u003e deprecation in Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1537\"\u003e#1537\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed comment parsing in Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1537\"\u003e#1537\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed declarations in Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1537\"\u003e#1537\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed HTML tag \u003ccode\u003e\u0026lt;foo\u003c/code\u003e and Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1537\"\u003e#1537\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/22e89c1fc346f72218a10e392a0c3b4731912522\"\u003e\u003ccode\u003e22e89c1\u003c/code\u003e\u003c/a\u003e Bump version to 3.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/c138aea5139a6aceae05bb957e866d9ce7577b94\"\u003e\u003ccode\u003ec138aea\u003c/code\u003e\u003c/a\u003e + PY314 - PY39\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/746f7f527b15f63845253e3b86947b806ef1b98f\"\u003e\u003ccode\u003e746f7f5\u003c/code\u003e\u003c/a\u003e cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/a5ee2b4aad05531898ab8fd726c7ece31ddadf8b\"\u003e\u003ccode\u003ea5ee2b4\u003c/code\u003e\u003c/a\u003e Revert the default behavior of \u003ccode\u003eUSE_DEFINITION_ORDER\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/5354daf618149f92580a1407c036115753c5df73\"\u003e\u003ccode\u003e5354daf\u003c/code\u003e\u003c/a\u003e Fix an HTML comment parsing case that can cause an infinite loop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/f39cf84a24124526c1a0efbe52219fa9950774f6\"\u003e\u003ccode\u003ef39cf84\u003c/code\u003e\u003c/a\u003e Bump version to 3.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/07bf2076623be5de9952e1f35bfb8c218b699300\"\u003e\u003ccode\u003e07bf207\u003c/code\u003e\u003c/a\u003e Order footnotes by reference\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/23c301de28e12426408656efdfa153b11d4ff558\"\u003e\u003ccode\u003e23c301d\u003c/code\u003e\u003c/a\u003e Fix failing cases for Python 3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/4669a09894d4a35cd5f5d2106b0da95e48d1a3f9\"\u003e\u003ccode\u003e4669a09\u003c/code\u003e\u003c/a\u003e fix typo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/d9c8431e404d614812e39a11109afbe9981bba13\"\u003e\u003ccode\u003ed9c8431\u003c/code\u003e\u003c/a\u003e Bump version to 3.8.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Python-Markdown/markdown/compare/3.7...3.10.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mkdocs-material` from 9.5.44 to 9.6.23\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/squidfunk/mkdocs-material/releases\"\u003emkdocs-material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003emkdocs-material-9.6.23\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Burmese translation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.6.22\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Georgian translation\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.6.21\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Serbian translations\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8458\"\u003e#8458\u003c/a\u003e: Temporary pin of click dependency\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.6.20\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8446\"\u003e#8446\u003c/a\u003e: Deprecation warning as of Python 3.14 in Emoji extension\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8440\"\u003e#8440\u003c/a\u003e: \u003ccode\u003e\u0026amp;\u003c/code\u003e character not escaped in search highlighting\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8439\"\u003e#8439\u003c/a\u003e: FontAwesome icons color not set in social cards (regression)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.6.19\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14\u003c/li\u003e\n\u003cli\u003eUpdated Bahasa Malaysia translations\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.6.18\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Azerbaijani translations\u003c/li\u003e\n\u003cli\u003eFixed last compat issues with \u003ca href=\"https://github.com/mitsuhiko/minijinja\"\u003eminijinja\u003c/a\u003e, now 100% compatible\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.6.17\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8396\"\u003e#8396\u003c/a\u003e: Videos do not autoplay when inside a content tab\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8394\"\u003e#8394\u003c/a\u003e: Stroke width not effective in Mermaid.js diagrams\u003c/li\u003e\n\u003cli\u003eFixed disappearing version selector when hiding page title\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.6.16\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8349\"\u003e#8349\u003c/a\u003e: Info plugin doesn't correctly detect virtualenv in some cases\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8334\"\u003e#8334\u003c/a\u003e: Find-in-page detects matches in hidden search result list\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.6.15\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Mongolian translations\u003c/li\u003e\n\u003cli\u003eImproved semantic markup of \u0026quot;edit this page\u0026quot; button\u003c/li\u003e\n\u003cli\u003eImproved info plugin virtual environment resolution\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8291\"\u003e#8291\u003c/a\u003e: Large font size setting throws of breakpoints in JavaScript\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.6.14\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8215\"\u003e#8215\u003c/a\u003e: Social plugin crashes when CairoSVG is updated to 2.8\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.6.13\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8204\"\u003e#8204\u003c/a\u003e: Annotations showing list markers in print view\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8153\"\u003e#8153\u003c/a\u003e: Improve style of cardinality symbols in Mermaid.js ER diagrams\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.6.12\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8158\"\u003e#8158\u003c/a\u003e: Flip footnote back reference icon for right-to-left languages\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG\"\u003emkdocs-material's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003emkdocs-material-9.6.23 (2025-11-01)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Burmese translation\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.6.22 (2025-10-15)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Georgian translation\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.6.21 (2025-09-30)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Serbian translations\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8458\"\u003e#8458\u003c/a\u003e: Temporary pin of click dependency\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.6.20 (2025-09-15)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8446\"\u003e#8446\u003c/a\u003e: Deprecation warning as of Python 3.14 in Emoji extension\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8440\"\u003e#8440\u003c/a\u003e: \u003ccode\u003e\u0026amp;\u003c/code\u003e character not escaped in search highlighting\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8439\"\u003e#8439\u003c/a\u003e: FontAwesome icons color not set in social cards (regression)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.6.19 (2025-09-07)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14\u003c/li\u003e\n\u003cli\u003eUpdated Bahasa Malaysia translations\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.6.18 (2025-08-22)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Azerbaijani translations\u003c/li\u003e\n\u003cli\u003eFixed last compat issues with [minijinja], now 100% compatible\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.6.17 (2025-08-15)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8396\"\u003e#8396\u003c/a\u003e: Videos do not autoplay when inside a content tab\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8394\"\u003e#8394\u003c/a\u003e: Stroke width not effective in Mermaid.js diagrams\u003c/li\u003e\n\u003cli\u003eFixed disappearing version selector when hiding page title\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.6.16 (2025-07-26)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8349\"\u003e#8349\u003c/a\u003e: Info plugin doesn't correctly detect virtualenv in some cases\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8334\"\u003e#8334\u003c/a\u003e: Find-in-page detects matches in hidden search result list\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.6.15 (2025-07-01)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Mongolian translations\u003c/li\u003e\n\u003cli\u003eImproved semantic markup of \u0026quot;edit this page\u0026quot; button\u003c/li\u003e\n\u003cli\u003eImproved info plugin virtual environment resolution\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8291\"\u003e#8291\u003c/a\u003e: Large font size setting throws of breakpoints in JavaScript\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.6.14 (2025-05-13)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8215\"\u003e#8215\u003c/a\u003e: Social plugin crashes when CairoSVG is updated to 2.8\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/54c7b79315b5ef5620efe16a1473d3368c8b8f52\"\u003e\u003ccode\u003e54c7b79\u003c/code\u003e\u003c/a\u003e Prepare 9.6.23 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/f0dbcb5b66aa5060eef3ebce04d241686505887c\"\u003e\u003ccode\u003ef0dbcb5\u003c/code\u003e\u003c/a\u003e Disabled dependabot\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/53d15f854d0479f01378023926e06a5cc857e28f\"\u003e\u003ccode\u003e53d15f8\u003c/code\u003e\u003c/a\u003e Updated dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/d9e4f7139274bb70743a076da8b80a898b1a1c14\"\u003e\u003ccode\u003ed9e4f71\u003c/code\u003e\u003c/a\u003e Updated Burmese translations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/9b3247c9cdee7e2bd67c371a136c5de487f38f19\"\u003e\u003ccode\u003e9b3247c\u003c/code\u003e\u003c/a\u003e Updated changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/8f9dcbdd68bd5746ed1dd712d6fd7d5fe0808292\"\u003e\u003ccode\u003e8f9dcbd\u003c/code\u003e\u003c/a\u003e Prepare 9.6.22 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/b29310f37dc9402ab9271ca8aaf356c44b046d78\"\u003e\u003ccode\u003eb29310f\u003c/code\u003e\u003c/a\u003e Updated dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/68bfd526e1dbb8db0c64dcca54780f0c2636d301\"\u003e\u003ccode\u003e68bfd52\u003c/code\u003e\u003c/a\u003e Documentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/c68fac7fb3071fa4f45cc823e2ca2ea82fd67b43\"\u003e\u003ccode\u003ec68fac7\u003c/code\u003e\u003c/a\u003e Updated Georgian translations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/56bb56c0fed1217f0a58a660ccbefd73db671397\"\u003e\u003ccode\u003e56bb56c\u003c/code\u003e\u003c/a\u003e Bump actions/setup-node from 4 to 5 (\u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8471\"\u003e#8471\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/squidfunk/mkdocs-material/compare/9.5.44...9.6.23\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pymdown-extensions` from 10.12 to 10.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facelessuser/pymdown-extensions/releases\"\u003epymdown-extensions's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e10.6.1\u003c/h2\u003e\n\u003ch2\u003e10.16.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eFIX\u003c/strong\u003e: Inefficient regular expression pattern for figure caption numbers.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e10.16\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eNEW\u003c/strong\u003e: Add early support for Python 3.14.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eNEW\u003c/strong\u003e: Drop support for Python 3.8.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eNEW\u003c/strong\u003e: Snippets: Added \u003ccode\u003emax_retries\u003c/code\u003e and \u003ccode\u003ebackoff_retries\u003c/code\u003e options to configure new retry logic for HTTP 429\nerrors (Too Many Requests client error).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eNEW\u003c/strong\u003e: Caption: Prefix templates are now preserved exactly as specified allowing the insertion of HTML tags if\ndesired.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eFIX\u003c/strong\u003e: Caption: Fix issue where manual numbers in auto were not respected appropriately.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e10.15.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eNEW\u003c/strong\u003e: SuperFences: Add \u003ccode\u003erelaxed_headers\u003c/code\u003e option which can tolerate bad content in the fenced code header. When\nenabled, code blocks with bad content in the header will likely still convert into code blocks, often respecting\nthe specified language.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eNEW\u003c/strong\u003e: Add type hints to the Blocks interface and a few additional files.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eFIX\u003c/strong\u003e: Blocks: Fix some corner cases of nested blocks with lists.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eFIX\u003c/strong\u003e: Tab and Tabbed: Fix a case where tabs could fail if \u003ccode\u003ecombine_header_slug\u003c/code\u003e was enabled and there was no\nheader.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e10.14.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eFIX\u003c/strong\u003e: Blocks: An empty, raw block type should not cause an error.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e10.14.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eFIX\u003c/strong\u003e: Blocks: Fix some corner cases with \u003ccode\u003emd_in_html\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e10.14.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eFIX\u003c/strong\u003e: MagicLink: Ensure that repo names that start with \u003ccode\u003e.\u003c/code\u003e are handled correctly.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eFIX\u003c/strong\u003e: FancyLists: Fix case were lists could be falsely created when a line started with \u003ccode\u003e.\u003c/code\u003e or \u003ccode\u003e)\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e10.14\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eNEW\u003c/strong\u003e: Blocks.HTML: Add new \u003ccode\u003ecustom\u003c/code\u003e option to specify tags and the assumed handling for them when automatic mode\nis assumed. This can also be used to override the handling for recognized tags with automatic handling.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eFIX\u003c/strong\u003e: Fix tests to pass with Pygments 2.19+.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e10.13\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eNEW\u003c/strong\u003e: Snippets: Allow multiple line numbers or line number blocks separated by \u003ccode\u003e,\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eNEW\u003c/strong\u003e: Snippets: Allow using a negative index for number start indexes and end indexes. Negative indexes are converted to positive indexes based on the number of lines in the snippet.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eFIX\u003c/strong\u003e: Snippets: Properly capture empty newline at end of file.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eFIX\u003c/strong\u003e: Snippets: Fix issue where when non sections of files are included, section labels are not stripped.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facelessuser/pymdown-extensions/commit/b50d15a56850ed1408a284bba81cc019c6bd72e8\"\u003e\u003ccode\u003eb50d15a\u003c/code\u003e\u003c/a\u003e Caption pattern should match a literal dot (\u003ca href=\"https://redirect.github.com/facelessuser/pymdown-extensions/issues/2717\"\u003e#2717\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facelessuser/pymdown-extensions/commit/f64422f87c05031a8c8d62b1988bf76e8f65f27f\"\u003e\u003ccode\u003ef64422f\u003c/code\u003e\u003c/a\u003e Update copyright\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facelessuser/pymdown-extensions/commit/9edb92606fc813e983fce3187862a4f28bb15886\"\u003e\u003ccode\u003e9edb926\u003c/code\u003e\u003c/a\u003e Use Trusted Publisher\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facelessuser/pymdown-extensions/commit/7d3d4f990463e50b1ba1e20830832285d92990c7\"\u003e\u003ccode\u003e7d3d4f9\u003c/code\u003e\u003c/a\u003e Add early support for Python 3.14 (\u003ca href=\"https://redirect.github.com/facelessuser/pymdown-extensions/issues/2697\"\u003e#2697\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facelessuser/pymdown-extensions/commit/beb841e6f968b81403166d685b083fe2bde84bbc\"\u003e\u003ccode\u003ebeb841e\u003c/code\u003e\u003c/a\u003e Docs: Update JS deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facelessuser/pymdown-extensions/commit/620d7fded457a0b5317019fa461a27f484a0d3d4\"\u003e\u003ccode\u003e620d7fd\u003c/code\u003e\u003c/a\u003e Docs: update JS deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facelessuser/pymdown-extensions/commit/a49f32aa4ac91d97c7c10c9abe7f654b5ec802e5\"\u003e\u003ccode\u003ea49f32a\u003c/code\u003e\u003c/a\u003e Refactor for mypy issue\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facelessuser/pymdown-extensions/commit/52a481b5591879f49baffecf4275f351d27a3759\"\u003e\u003ccode\u003e52a481b\u003c/code\u003e\u003c/a\u003e Docs: update JS dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facelessuser/pymdown-extensions/commit/2a1828accdc2371d97610fbbb574dd878e090b54\"\u003e\u003ccode\u003e2a1828a\u003c/code\u003e\u003c/a\u003e Allow raw HTML in caption prefix (\u003ca href=\"https://redirect.github.com/facelessuser/pymdown-extensions/issues/2679\"\u003e#2679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facelessuser/pymdown-extensions/commit/fbf4bf22da3bc864f24b4ee6a2c05b145fb6c304\"\u003e\u003ccode\u003efbf4bf2\u003c/code\u003e\u003c/a\u003e Fix issue where manual captions in auto were not respected properly (\u003ca href=\"https://redirect.github.com/facelessuser/pymdown-extensions/issues/2678\"\u003e#2678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/facelessuser/pymdown-extensions/compare/10.12...10.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jinja2` from 3.1.4 to 3.1.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets/jinja/releases\"\u003ejinja2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.1.6\u003c/h2\u003e\n\u003cp\u003eThis is the Jinja 3.1.6 security release, which fixes security issues but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.\u003c/p\u003e\n\u003cp\u003ePyPI: \u003ca href=\"https://pypi.org/project/Jinja2/3.1.6/\"\u003ehttps://pypi.org/project/Jinja2/3.1.6/\u003c/a\u003e\nChanges: \u003ca href=\"https://jinja.palletsprojects.com/en/stable/changes/#version-3-1-6\"\u003ehttps://jinja.palletsprojects.com/en/stable/changes/#version-3-1-6\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ccode\u003e|attr\u003c/code\u003e filter does not bypass the environment's attribute lookup, allowing the sandbox to apply its checks. \u003ca href=\"https://github.com/pallets/jinja/security/advisories/GHSA-cpwx-vrp4-4pq7\"\u003ehttps://github.com/pallets/jinja/security/advisories/GHSA-cpwx-vrp4-4pq7\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.1.5\u003c/h2\u003e\n\u003cp\u003eThis is the Jinja 3.1.5 security fix release, which fixes security issues and bugs but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.\u003c/p\u003e\n\u003cp\u003ePyPI: \u003ca href=\"https://pypi.org/project/Jinja2/3.1.5/\"\u003ehttps://pypi.org/project/Jinja2/3.1.5/\u003c/a\u003e\nChanges: \u003ca href=\"https://jinja.palletsprojects.com/changes/#version-3-1-5\"\u003ehttps://jinja.palletsprojects.com/changes/#version-3-1-5\u003c/a\u003e\nMilestone: \u003ca href=\"https://github.com/pallets/jinja/milestone/16?closed=1\"\u003ehttps://github.com/pallets/jinja/milestone/16?closed=1\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe sandboxed environment handles indirect calls to \u003ccode\u003estr.format\u003c/code\u003e, such as by passing a stored reference to a filter that calls its argument. \u003ca href=\"https://github.com/pallets/jinja/security/advisories/GHSA-q2x7-8rv6-6q7h\"\u003eGHSA-q2x7-8rv6-6q7h\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEscape template name before formatting it into error messages, to avoid issues with names that contain f-string syntax. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1792\"\u003e#1792\u003c/a\u003e, \u003ca href=\"https://github.com/pallets/jinja/security/advisories/GHSA-gmj6-6f8f-6699\"\u003eGHSA-gmj6-6f8f-6699\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSandbox does not allow \u003ccode\u003eclear\u003c/code\u003e and \u003ccode\u003epop\u003c/code\u003e on known mutable sequence types. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/2032\"\u003e#2032\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCalling sync \u003ccode\u003erender\u003c/code\u003e for an async template uses \u003ccode\u003easyncio.run\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1952\"\u003e#1952\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid unclosed \u003ccode\u003eauto_aiter\u003c/code\u003e warnings. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1960\"\u003e#1960\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReturn an \u003ccode\u003eaclose\u003c/code\u003e-able \u003ccode\u003eAsyncGenerator\u003c/code\u003e from \u003ccode\u003eTemplate.generate_async\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1960\"\u003e#1960\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid leaving \u003ccode\u003eroot_render_func()\u003c/code\u003e unclosed in \u003ccode\u003eTemplate.generate_async\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1960\"\u003e#1960\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid leaving async generators unclosed in blocks, includes and extends. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1960\"\u003e#1960\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eThe runtime uses the correct \u003ccode\u003econcat\u003c/code\u003e function for the current environment when calling block references. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1701\"\u003e#1701\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003e|unique\u003c/code\u003e async-aware, allowing it to be used after another async-aware filter. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1781\"\u003e#1781\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e|int\u003c/code\u003e filter handles \u003ccode\u003eOverflowError\u003c/code\u003e from scientific notation. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1921\"\u003e#1921\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake compiling deterministic for tuple unpacking in a \u003ccode\u003e{% set ... %}\u003c/code\u003e call. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/2021\"\u003e#2021\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix dunder protocol (\u003ccode\u003ecopy\u003c/code\u003e/\u003ccode\u003epickle\u003c/code\u003e/etc) interaction with \u003ccode\u003eUndefined\u003c/code\u003e objects. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/2025\"\u003e#2025\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecopy\u003c/code\u003e/\u003ccode\u003epickle\u003c/code\u003e support for the internal \u003ccode\u003emissing\u003c/code\u003e object. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/2027\"\u003e#2027\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eEnvironment.overlay(enable_async)\u003c/code\u003e is applied correctly. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/2061\"\u003e#2061\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eThe error message from \u003ccode\u003eFileSystemLoader\u003c/code\u003e includes the paths that were searched. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1661\"\u003e#1661\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ePackageLoader\u003c/code\u003e shows a clearer error message when the package does not contain the templates directory. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1705\"\u003e#1705\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove annotations for methods returning copies. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1880\"\u003e#1880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eurlize\u003c/code\u003e does not add \u003ccode\u003emailto:\u003c/code\u003e to values like \u003ccode\u003e@a@b\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1870\"\u003e#1870\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests decorated with \u003ccode\u003e@pass_context\u003c/code\u003e can be used with the \u003ccode\u003e|select\u003c/code\u003e filter. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1624\"\u003e#1624\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUsing \u003ccode\u003eset\u003c/code\u003e for multiple assignment (\u003ccode\u003ea, b = 1, 2\u003c/code\u003e) does not fail when the target is a namespace attribute. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1413\"\u003e#1413\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUsing \u003ccode\u003eset\u003c/code\u003e in all branches of \u003ccode\u003e{% if %}{% elif %}{% else %}\u003c/code\u003e blocks does not cause the variable to be considered initially undefined. \u003ca href=\"https://redirect.github.com/pallets/jinja/issues/1253\"\u003e#1253\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets/jinja/blob/main/CHANGES.rst\"\u003ejinja2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.1.6\u003c/h2\u003e\n\u003cp\u003eReleased 2025-03-05\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ccode\u003e|attr\u003c/code\u003e filter does not bypass the environment's attribute lookup,\nallowing the sandbox to apply its checks. :ghsa:\u003ccode\u003ecpwx-vrp4-4pq7\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.1.5\u003c/h2\u003e\n\u003cp\u003eReleased 2024-12-21\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe sandboxed environment handles indirect calls to \u003ccode\u003estr.format\u003c/code\u003e, such as\nby passing a stored reference to a filter that calls its argument.\n:ghsa:\u003ccode\u003eq2x7-8rv6-6q7h\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eEscape template name before formatting it into error messages, to avoid\nissues with names that contain f-string syntax.\n:issue:\u003ccode\u003e1792\u003c/code\u003e, :ghsa:\u003ccode\u003egmj6-6f8f-6699\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eSandbox does not allow \u003ccode\u003eclear\u003c/code\u003e and \u003ccode\u003epop\u003c/code\u003e on known mutable sequence\ntypes. :issue:\u003ccode\u003e2032\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eCalling sync \u003ccode\u003erender\u003c/code\u003e for an async template uses \u003ccode\u003easyncio.run\u003c/code\u003e.\n:pr:\u003ccode\u003e1952\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAvoid unclosed \u003ccode\u003eauto_aiter\u003c/code\u003e warnings. :pr:\u003ccode\u003e1960\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eReturn an \u003ccode\u003eaclose\u003c/code\u003e-able \u003ccode\u003eAsyncGenerator\u003c/code\u003e from\n\u003ccode\u003eTemplate.generate_async\u003c/code\u003e. :pr:\u003ccode\u003e1960\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAvoid leaving \u003ccode\u003eroot_render_func()\u003c/code\u003e unclosed in\n\u003ccode\u003eTemplate.generate_async\u003c/code\u003e. :pr:\u003ccode\u003e1960\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAvoid leaving async generators unclosed in blocks, includes and extends.\n:pr:\u003ccode\u003e1960\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eThe runtime uses the correct \u003ccode\u003econcat\u003c/code\u003e function for the current environment\nwhen calling block references. :issue:\u003ccode\u003e1701\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003e|unique\u003c/code\u003e async-aware, allowing it to be used after another\nasync-aware filter. :issue:\u003ccode\u003e1781\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e|int\u003c/code\u003e filter handles \u003ccode\u003eOverflowError\u003c/code\u003e from scientific notation.\n:issue:\u003ccode\u003e1921\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eMake compiling deterministic for tuple unpacking in a \u003ccode\u003e{% set ... %}\u003c/code\u003e\ncall. :issue:\u003ccode\u003e2021\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFix dunder protocol (\u003ccode\u003ecopy\u003c/code\u003e/\u003ccode\u003epickle\u003c/code\u003e/etc) interaction with \u003ccode\u003eUndefined\u003c/code\u003e\nobjects. :issue:\u003ccode\u003e2025\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecopy\u003c/code\u003e/\u003ccode\u003epickle\u003c/code\u003e support for the internal \u003ccode\u003emissing\u003c/code\u003e object.\n:issue:\u003ccode\u003e2027\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eEnvironment.overlay(enable_async)\u003c/code\u003e is applied correctly. :pr:\u003ccode\u003e2061\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eThe error message from \u003ccode\u003eFileSystemLoader\u003c/code\u003e includes the paths that were\nsearched. :issue:\u003ccode\u003e1661\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ePackageLoader\u003c/code\u003e shows a clearer error message when the package does not\ncontain the templates directory. :issue:\u003ccode\u003e1705\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eImprove annotations for methods returning copies. :pr:\u003ccode\u003e1880\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eurlize\u003c/code\u003e does not add \u003ccode\u003emailto:\u003c/code\u003e to values like \u003ccode\u003e@a@b\u003c/code\u003e. :pr:\u003ccode\u003e1870\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/jinja/commit/15206881c006c79667fe5154fe80c01c65410679\"\u003e\u003ccode\u003e1520688\u003c/code\u003e\u003c/a\u003e release version 3.1.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/jinja/commit/90457bbf33b8662926ae65cdde4c4c32e756e403\"\u003e\u003ccode\u003e90457bb\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/jinja/commit/065334d1ee5b7210e1a0a93c37238c86858f2af7\"\u003e\u003ccode\u003e065334d\u003c/code\u003e\u003c/a\u003e attr filter uses env.getattr\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/jinja/commit/033c20015c7ca899ab52eb921bb0f08e6d3dd145\"\u003e\u003ccode\u003e033c200\u003c/code\u003e\u003c/a\u003e start version 3.1.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/jinja/commit/bc68d4efa99c5f77334f0e519628558059ae8c35\"\u003e\u003ccode\u003ebc68d4e\u003c/code\u003e\u003c/a\u003e use global contributing guide (\u003ca href=\"https://redirect.github.com/pallets/jinja/issues/2070\"\u003e#2070\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/jinja/commit/247de5e0c5062a792eb378e50e13e692885ee486\"\u003e\u003ccode\u003e247de5e\u003c/code\u003e\u003c/a\u003e use global contributing guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/jinja/commit/ab8218c7a1b66b62e0ad6b941bd514e3a64a358f\"\u003e\u003ccode\u003eab8218c\u003c/code\u003e\u003c/a\u003e use project advisory link instead of global\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/jinja/commit/b4ffc8ff299dfd360064bea4cd2f862364601ad2\"\u003e\u003ccode\u003eb4ffc8f\u003c/code\u003e\u003c/a\u003e release version 3.1.5 (\u003ca href=\"https://redirect.github.com/pallets/jinja/issues/2066\"\u003e#2066\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/jinja/commit/877f6e51be8e1765b06d911cfaa9033775f051d1\"\u003e\u003ccode\u003e877f6e5\u003c/code\u003e\u003c/a\u003e release version 3.1.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/jinja/commit/8d588592653b052f957b720e1fc93196e06f207f\"\u003e\u003ccode\u003e8d58859\u003c/code\u003e\u003c/a\u003e remove test pypi\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pallets/jinja/compare/3.1.4...3.1.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `isort` from 5.13.2 to 7.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/releases\"\u003eisort's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.0.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003ch2\u003e:boom: Breaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.9 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2430\"\u003e#2430\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:rocket: Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eShow absolute paths in skipped file messages (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2416\"\u003e#2416\u003c/a\u003e) \u003ca href=\"https://github.com/pranlawate\"\u003e\u003ccode\u003e@​pranlawate\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:beetle: Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSome fixes for Python 3.14 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2433\"\u003e#2433\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on \u003ccode\u003e3.14\u003c/code\u003e and fix any bugs (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2425\"\u003e#2425\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CHANGELOG.md + Fix Formatting and Grammar (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2419\"\u003e#2419\u003c/a\u003e) \u003ca href=\"https://github.com/lukbrew25\"\u003e\u003ccode\u003e@​lukbrew25\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix output of hanging indent for long lines with noqa (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2407\"\u003e#2407\u003c/a\u003e) \u003ca href=\"https://github.com/matan1008\"\u003e\u003ccode\u003e@​matan1008\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFormat with \u003ccode\u003eruff\u003c/code\u003e instead of \u003ccode\u003eblack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2432\"\u003e#2432\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTarget 3.10 for \u003ccode\u003eruff\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2431\"\u003e#2431\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate development dependencies to latest version (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2426\"\u003e#2426\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: update pre-commit examples to version 6.1.0 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2413\"\u003e#2413\u003c/a\u003e) \u003ca href=\"https://github.com/pranlawate\"\u003e\u003ccode\u003e@​pranlawate\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSmall cleanup for developer environment (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2418\"\u003e#2418\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:package: Dependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/setup-python from 5 to 6 in the github-actions group (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2411\"\u003e#2411\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.1.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs discussions channel (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2410\"\u003e#2410\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd python 3.14 classifier and badge (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2409\"\u003e#2409\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop use of non-standard pkg_resources API (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2405\"\u003e#2405\u003c/a\u003e) \u003ca href=\"https://github.com/dvarrazzo\"\u003e\u003ccode\u003e@​dvarrazzo\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse working isort version in pre-commit example (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2402\"\u003e#2402\u003c/a\u003e) \u003ca href=\"https://github.com/iainelder\"\u003e\u003ccode\u003e@​iainelder\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix typo in _get_files_from_dir_cached test (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2392\"\u003e#2392\u003c/a\u003e) \u003ca href=\"https://github.com/tiltingpenguin\"\u003e\u003ccode\u003e@​tiltingpenguin\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eResolve bandit warnings (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2379\"\u003e#2379\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd tox for cross-platform, parallel test suite execution (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2378\"\u003e#2378\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Project URLs to PyPI Side Panel (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2387\"\u003e#2387\u003c/a\u003e) \u003ca href=\"https://github.com/guillermodotn\"\u003e\u003ccode\u003e@​guillermodotn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typos (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2376\"\u003e#2376\u003c/a\u003e) \u003ca href=\"https://github.com/co63oc\"\u003e\u003ccode\u003e@​co63oc\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd make bash scripts portable (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2377\"\u003e#2377\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:package: Dependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/checkout from 4 to 5 in the github-actions group (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2406\"\u003e#2406\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/blob/main/CHANGELOG.md\"\u003eisort's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003eNOTE: isort follows the \u003ca href=\"https://semver.org/\"\u003esemver\u003c/a\u003e versioning standard.\nFind out more about isort's release policy \u003ca href=\"https://pycqa.github.io/isort/docs/major_releases/release_policy\"\u003ehere\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003e6.1.0 October 1 2025\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd python 3.14 classifier and badge (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2409\"\u003e#2409\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop use of non-standard pkg_resources API (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2405\"\u003e#2405\u003c/a\u003e) \u003ca href=\"https://github.com/dvarrazzo\"\u003e\u003ccode\u003e@​dvarrazzo\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e6.0.1 Febuary 26 2025\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd OSError handling in find_imports_in_file (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2331\"\u003e#2331\u003c/a\u003e) \u003ca href=\"https://github.com/kobarity\"\u003e\u003ccode\u003e@​kobarity\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e6.0.0 January 27 2025\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove support for Python 3.8 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2327\"\u003e#2327\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePython 3.13 support (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2306\"\u003e#2306\u003c/a\u003e) \u003ca href=\"https://github.com/mayty\"\u003e\u003ccode\u003e@​mayty\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSpeed up exists_case_sensitive calls (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2264\"\u003e#2264\u003c/a\u003e) \u003ca href=\"https://github.com/correctmost\"\u003e\u003ccode\u003e@​correctmost\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure that split_on_trailing_comma works with as imports (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2340\"\u003e#2340\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBlack profile: enable magic comma (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2236\"\u003e#2236\u003c/a\u003e) \u003ca href=\"https://github.com/MrMino\"\u003e\u003ccode\u003e@​MrMino\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate line_length and single_line_exclusions in google profile (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2149\"\u003e#2149\u003c/a\u003e) \u003ca href=\"https://github.com/jagapiou\"\u003e\u003ccode\u003e@​jagapiou\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow --diff to be used with --jobs (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2302\"\u003e#2302\u003c/a\u003e) \u003ca href=\"https://github.com/mnakama\"\u003e\u003ccode\u003e@​mnakama\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix wemake profile to have correct character limit (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2241\"\u003e#2241\u003c/a\u003e) \u003ca href=\"https://github.com/sobolevn\"\u003e\u003ccode\u003e@​sobolevn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix sort_reexports code mangling (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2283\"\u003e#2283\u003c/a\u003e) \u003ca href=\"https://github.com/Helveg\"\u003e\u003ccode\u003e@​Helveg\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix correct group by package tokenization (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2136\"\u003e#2136\u003c/a\u003e) \u003ca href=\"https://github.com/glasnt\"\u003e\u003ccode\u003e@​glasnt\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/0a09c783808cfe77bb3269250f663ff733d23302\"\u003e\u003ccode\u003e0a09c78\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2433\"\u003e#2433\u003c/a\u003e from DanielNoord/python-314\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/0fee794a05b5d0c471ac80bc8943f9843ca29644\"\u003e\u003ccode\u003e0fee794\u003c/code\u003e\u003c/a\u003e Add 3.14 to \u003ccode\u003estdlibds\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/332a1ad0b68bf3a3acac055b0ec3666408b3b425\"\u003e\u003ccode\u003e332a1ad\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003ezstandard\u003c/code\u003e for 3.14 compat\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/f756e5653afcf6d79ec4d0240b1868cbebd8fafd\"\u003e\u003ccode\u003ef756e56\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2432\"\u003e#2432\u003c/a\u003e from DanielNoord/ruff-it-up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/52f5134889d345ff35afdcb86501c8221b804c70\"\u003e\u003ccode\u003e52f5134\u003c/code\u003e\u003c/a\u003e Format with \u003ccode\u003eruff\u003c/code\u003e instead of \u003ccode\u003eblack\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/012aa69fcadb3c89ff92a3d96aa449be7ae6746f\"\u003e\u003ccode\u003e012aa69\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2431\"\u003e#2431\u003c/a\u003e from DanielNoord/ruff-it-up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/89773dbb371192541092657972a74e9ce0bbbc74\"\u003e\u003ccode\u003e89773db\u003c/code\u003e\u003c/a\u003e Target 3.10 with \u003ccode\u003eruff\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/933e382f98a0c77b4c6e33c4e3ef12bd57192884\"\u003e\u003ccode\u003e933e382\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2430\"\u003e#2430\u003c/a\u003e from DanielNoord/drop-39\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/8b6e00cbe643a216da57fed4baa282d0a4a1b829\"\u003e\u003ccode\u003e8b6e00c\u003c/code\u003e\u003c/a\u003e Remove support for Python 3.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/b5f9f296ad873734e8caa3a731f27360648d9b37\"\u003e\u003ccode\u003eb5f9f29\u003c/code\u003e\u003c/a\u003e Bump profile plugin to 3.10+ and re-lock\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/isort/compare/5.13.2...7.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `coveralls` from 4.0.1 to 4.0.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/TheKevJames/coveralls-python/releases\"\u003ecoveralls's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.0.2 (2025-11-07)\u003c/h2\u003e\n\u003ch4\u003eInternal\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eupdate python support: drop EOL'd versions (3.8, 3.9), begin testing on new versions (3.13, 3.14), and mark explicit future compatibility up to \u0026lt;4.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/TheKevJames/coveralls-python/blob/master/CHANGELOG.md\"\u003ecoveralls's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.0.2 (2025-11-07)\u003c/h2\u003e\n\u003ch4\u003eInternal\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eupdate python support: drop EOL'd versions (3.8, 3.9), begin testing on new versions (3.13, 3.14), and mark explicit future compatibility up to \u0026lt;4.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TheKevJames/coveralls-python/commit/113f52f7fff009d9acf1fec7792eb6481de52b07\"\u003e\u003ccode\u003e113f52f\u003c/code\u003e\u003c/a\u003e chore(release): bump version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TheKevJames/coveralls-python/commit/120cf1e2b58f224bfbdd8a53d0a51b0ce4f2e72b\"\u003e\u003ccode\u003e120cf1e\u003c/code\u003e\u003c/a\u003e chore(compat): bump pythons\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TheKevJames/coveralls-python/commit/a0d0cf677b15fbf08f2f6ee2ad8540feb1e81bcc\"\u003e\u003ccode\u003ea0d0cf6\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency docker to v4 (\u003ca href=\"https://redirect.github.com/TheKevJames/coveralls-python/issues/616\"\u003e#616\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TheKevJames/coveralls-python/commit/fd2302acc0fd2d45e4ebdc4d76679b2ddcd7a6aa\"\u003e\u003ccode\u003efd2302a\u003c/code\u003e\u003c/a\u003e chore(deps): update pandoc/core docker tag to v3.8.2 (\u003ca href=\"https://redirect.github.com/TheKevJames/coveralls-python/issues/630\"\u003e#630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TheKevJames/coveralls-python/commit/12ad037fb18e4d61c391d1e9a4da770323a7d27e\"\u003e\u003ccode\u003e12ad037\u003c/code\u003e\u003c/a\u003e chore(deps): lock file maintenance (\u003ca href=\"https://redirect.github.com/TheKevJames/coveralls-python/issues/629\"\u003e#629\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TheKevJames/coveralls-python/commit/d357cc4b42f8046c278bc614792e7549e4b8ae3d\"\u003e\u003ccode\u003ed357cc4\u003c/code\u003e\u003c/a\u003e chore(deps): lock file maintenance (\u003ca href=\"https://redirect.github.com/TheKevJames/coveralls-python/issues/627\"\u003e#627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TheKevJames/coveralls-python/commit/8feab2702c85e036e7c56775621ffa3e2740ff11\"\u003e\u003ccode\u003e8feab27\u003c/code\u003e\u003c/a\u003e chore(deps): update actions/dependency-review-action action to v4.8.1 (\u003ca href=\"https://redirect.github.com/TheKevJames/coveralls-python/issues/624\"\u003e#624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TheKevJames/coveralls-python/commit/9bc44a47db46bd101ac944ffeb5b642c0ccc8e01\"\u003e\u003ccode\u003e9bc44a4\u003c/code\u003e\u003c/a\u003e chore(deps): lock file maintenance (\u003ca href=\"https://redirect.github.com/TheKevJames/coveralls-python/issues/622\"\u003e#622\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TheKevJames/coveralls-python/commit/7ff43515d6d26b6b596fdde4fc325c37497ad1f6\"\u003e\u003ccode\u003e7ff4351\u003c/code\u003e\u003c/a\u003e chore(deps): update actions/dependency-review-action action to v4.8.0 (\u003ca href=\"https://redirect.github.com/TheKevJames/coveralls-python/issues/620\"\u003e#620\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TheKevJames/coveralls-python/commit/9ab30382883d82b39165cd4b6eed81354beddbcb\"\u003e\u003ccode\u003e9ab3038\u003c/code\u003e\u003c/a\u003e chore(deps): update actions/dependency-review-action action to v4.7.4 (\u003ca href=\"https://redirect.github.com/TheKevJames/coveralls-python/issues/619\"\u003e#619\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/TheKevJames/coveralls-python/compare/4.0.1...4.0.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 8.3.3 to 8.4.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.4.2\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.2 (2025-09-03)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13478\"\u003e#13478\u003c/a\u003e: Fixed a crash when using \u003ccode\u003econsole_output_style\u003c/code\u003e{.interpreted-text role=\u0026quot;confval\u0026quot;} with \u003ccode\u003etimes\u003c/code\u003e and a module is skipped.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13530\"\u003e#13530\u003c/a\u003e: Fixed a crash when using \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and \u003ccode\u003edecimal.Decimal\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} instances with the \u003ccode\u003edecimal.FloatOperation\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} trap set.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13549\"\u003e#13549\u003c/a\u003e: No longer evaluate type annotations in Python \u003ccode\u003e3.14\u003c/code\u003e when inspecting function signatures.\u003c/p\u003e\n\u003cp\u003eThis prevents crashes during module collection when modules do not explicitly use \u003ccode\u003efrom __future__ import annotations\u003c/code\u003e and import types for annotations within a \u003ccode\u003eif TYPE_CHECKING:\u003c/code\u003e block.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13559\"\u003e#13559\u003c/a\u003e: Added missing [int]{.title-ref} and [float]{.title-ref} variants to the [Literal]{.title-ref} type annotation of the [type]{.title-ref} parameter in \u003ccode\u003epytest.Parser.addini\u003c/code\u003e{.interpreted-text role=\u0026quot;meth\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13563\"\u003e#13563\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now only imports \u003ccode\u003enumpy\u003c/code\u003e if NumPy is already in \u003ccode\u003esys.modules\u003c/code\u003e. This fixes unconditional import behavior introduced in [8.4.0]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13577\"\u003e#13577\u003c/a\u003e: Clarify that \u003ccode\u003epytest_generate_tests\u003c/code\u003e is discovered in test modules/classes; other hooks must be in \u003ccode\u003econftest.py\u003c/code\u003e or plugins.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributor-facing changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13480\"\u003e#13480\u003c/a\u003e: Self-testing: fixed a few test failures when run with \u003ccode\u003e-Wdefault\u003c/code\u003e or a similar override.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13547\"\u003e#13547\u003c/a\u003e: Self-testing: corrected expected message for \u003ccode\u003etest_doctest_unexpected_exception\u003c/code\u003e in Python \u003ccode\u003e3.14\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13684\"\u003e#13684\u003c/a\u003e: Make pytest's own testsuite insensitive to the presence of the \u003ccode\u003eCI\u003c/code\u003e environment variable -- by \u003ccode\u003eogrisel\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.1\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.1 (2025-06-17)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13461\"\u003e#13461\u003c/a\u003e: Corrected \u003ccode\u003e_pytest.terminal.TerminalReporter.isatty\u003c/code\u003e to support\nbeing called as a method. Before it was just a boolean which could\nbreak correct code when using \u003ccode\u003e-o log_cli=true\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13477\"\u003e#13477\u003c/a\u003e: Reintroduced \u003ccode\u003epytest.PytestReturnNotNoneWarning\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which was removed by accident in pytest [8.4]{.title-ref}.\u003c/p\u003e\n\u003cp\u003eThis warning is raised when a test functions returns a value other than \u003ccode\u003eNone\u003c/code\u003e, which is often a mistake made by beginners.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ereturn-not-none\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13497\"\u003e#13497\u003c/a\u003e: Fixed compatibility with \u003ccode\u003eTwisted 25+\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e: Fixed outdated warning about \u003ccode\u003efaulthandler\u003c/code\u003e not working on Windows.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.0\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.0 (2025-06-02)\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/bfae4224fd554d3d7f2c277a4cc092b6ec6af3ae\"\u003e\u003ccode\u003ebfae422\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/89905381a163be30ae87d62e5f750e902d750c5f\"\u003e\u003ccode\u003e8990538\u003c/code\u003e\u003c/a\u003e Fix passenv CI in tox ini and make tests insensitive to the presence of the C...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/ca676bfe005aebcb12f4146d1b0f1d2772e2cd5d\"\u003e\u003ccode\u003eca676bf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13687\"\u003e#13687\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/e63f6e51c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/975a60a63ce385a44655596e254c1899feaa53e4\"\u003e\u003ccode\u003e975a60a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13686\"\u003e#13686\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/12bde8af6...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/7723ce84b87ab08f86ddafcb342acc28ba5ec99d\"\u003e\u003ccode\u003e7723ce8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13683\"\u003e#13683\u003c/a\u003e from even-even/fix_Exeption_to_Exception_in_errorMe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b7f05680d1301e0969b30bcb3c4b27433c9ee2b7\"\u003e\u003ccode\u003eb7f0568\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13685\"\u003e#13685\u003c/a\u003e from CoretexShadow/fix/docs-pytest-generate-tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2c94c4a6948ba53440818389298157fa5d5f94cd\"\u003e\u003ccode\u003e2c94c4a\u003c/code\u003e\u003c/a\u003e add missing colon (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13640\"\u003e#13640\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13641\"\u003e#13641\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c3d7684bc01c8c48d05145a30c5211ca8656c68c\"\u003e\u003ccode\u003ec3d7684\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13606\"\u003e#13606\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/5f9938563...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/dc6e3be2ddc75a149b6d102d9b7c82ee47a00cfa\"\u003e\u003ccode\u003edc6e3be\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13605\"\u003e#13605\u003c/a\u003e from The-Compiler/training-update-2025-07\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/f87289c36c8dbe7740e3020f5546b6f8b0861ff0\"\u003e\u003ccode\u003ef87289c\u003c/code\u003e\u003c/a\u003e Fix crash with \u003ccode\u003etimes\u003c/code\u003e output style and skipped module (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13573\"\u003e#13573\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13579\"\u003e#13579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/8.3.3...8.4.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-cov` from 6.0.0 to 7.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-cov/blob/master/CHANGELOG.rst\"\u003epytest-cov's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.0.0 (2025-09-09)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eDropped support for subprocesses measurement.\u003c/p\u003e\n\u003cp\u003eIt was a feature added long time ago when coverage lacked a nice way to measure subprocesses created in tests.\nIt relied on a \u003ccode\u003e.pth\u003c/code\u003e file, there was no way to opt-out and it created bad interations\nwith \u003ccode\u003ecoverage's new patch system \u0026lt;https://coverage.readthedocs.io/en/latest/config.html#run-patch\u0026gt;\u003c/code\u003e_ added\nin \u003ccode\u003e7.10 \u0026lt;https://coverage.readthedocs.io/en/7.10.6/changes.html#version-7-10-0-2025-07-24\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003cp\u003eTo migrate to this release you might need to enable the suprocess patch, example for \u003ccode\u003e.coveragerc\u003c/code\u003e:\u003c/p\u003e\n\u003cp\u003e.. code-block:: ini\u003c/p\u003e\n\u003cp\u003e[run]\npatch = subprocess\u003c/p\u003e\n\u003cp\u003eThis release also requires at least coverage 7.10.6.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eSwitched packaging to have metadata completely in \u003ccode\u003epyproject.toml\u003c/code\u003e and use \u003ccode\u003ehatchling \u0026lt;https://pypi.org/project/hatchling/\u0026gt;\u003c/code\u003e_ for\nbuilding.\nContributed by Ofek Lev in \u003ccode\u003e[#551](https://github.com/pytest-dev/pytest-cov/issues/551) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/551\u0026gt;\u003c/code\u003e_\nwith some extras in \u003ccode\u003e[#716](https://github.com/pytest-dev/pytest-cov/issues/716) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/716\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemoved some not really necessary testing deps like \u003ccode\u003esix\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.3.0 (2025-09-06)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for markdown reports.\nContributed by Marcos Boger in \u003ccode\u003e[#712](https://github.com/pytest-dev/pytest-cov/issues/712) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/712\u0026gt;\u003c/code\u003e_\nand \u003ccode\u003e[#714](https://github.com/pytest-dev/pytest-cov/issues/714) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/714\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eFixed some formatting issues in docs.\nAnonymous contribution in \u003ccode\u003e[#706](https://github.com/pytest-dev/pytest-cov/issues/706) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/706\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.2.1 (2025-06-12)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded a version requirement for pytest's pluggy dependency (1.2.0, released 2023-06-21) that has the required new-style hookwrapper API.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemoved deprecated license classifier (packaging).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDisabled coverage warnings in two more situations where they have no value:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u0026quot;module-not-measured\u0026quot; in workers\u003c/li\u003e\n\u003cli\u003e\u0026quot;already-imported\u0026quot; in subprocesses\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.2.0 (2025-06-11)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe plugin now adds 3 rules in the filter warnings configuration to prevent common coverage warnings being raised as obscure errors::\u003c/p\u003e\n\u003cp\u003edefault:unclosed database in \u0026lt;sqlite3.Connection object at:ResourceWarning\nonce::PytestCovWarning\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/224d8964caad90074a8cf6dc8720b8f70f31629b\"\u003e\u003ccode\u003e224d896\u003c/code\u003e\u003c/a\u003e Bump version: 6.3.0 → 7.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/73424e3999f865eac72e27f09d5fe11b9703cfd6\"\u003e\u003ccode\u003e73424e3\u003c/code\u003e\u003c/a\u003e Cleanup the docs a bit.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/36f1cc2967831dbd4c8aa70086fc86dc495f8b9a\"\u003e\u003ccode\u003e36f1cc2\u003c/code\u003e\u003c/a\u003e Bump pins in template.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f299c590a63a48e51e3ae949993dc7bb1f1d480d\"\u003e\u003ccode\u003ef299c59\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 2 updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/25f0b2e0cdbc345c0d3e49170f7a328c3e0d805f\"\u003e\u003ccode\u003e25f0b2e\u003c/code\u003e\u003c/a\u003e Update docs/config.rst\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/bb23eacc5531fb8f499213d8420407e0d72f88e3\"\u003e\u003ccode\u003ebb23eac\u003c/code\u003e\u003c/a\u003e Improve configuration docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/a19531e91e1ab753ccf648a2d9bab08a6fddebb9\"\u003e\u003ccode\u003ea19531e\u003c/code\u003e\u003c/a\u003e Switch from build/pre-commit to uv/prek - this should make this faster.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/82f999391073f2fb8ae422af452602f310086a2a\"\u003e\u003ccode\u003e82f9993\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/211b5cd41c29916bc643b4a11b00578ba4fd6fe8\"\u003e\u003ccode\u003e211b5cd\u003c/code\u003e\u003c/a\u003e Fix links.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/97aadd74bcbc00a2078d240e8fe871dd62b83d80\"\u003e\u003ccode\u003e97aadd7\u003c/code\u003e\u003c/a\u003e Update some ci config, reformat and apply some lint fixes.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v6.0.0...v7.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.7.4 to 0.14.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.14.4\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cp\u003eReleased on 2025-11-06.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[formatter] Allow newlines after function headers without docstrings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/21110\"\u003e#21110\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Avoid extra parentheses for long \u003ccode\u003ematch\u003c/code\u003e patterns with \u003ccode\u003eas\u003c/code\u003e captures (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/21176\"\u003e#21176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Expand fix safety for keyword arguments and \u003ccode\u003eDecimal\u003c/code\u003es (\u003ccode\u003eFURB164\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/21259\"\u003e#21259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Preserve argument ordering in autofix (\u003ccode\u003eFURB103\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20790\"\u003e#20790\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[server] Fix missing diagnostics for notebooks (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/21156\"\u003e#21156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Ignore non-NFKC attribute names in \u003ccode\u003eB009\u003c/code\u003e and \u003ccode\u003eB010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/21131\"\u003e#21131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix false negative for underscores before sign in \u003ccode\u003eDecimal\u003c/code\u003e constructor (\u003ccode\u003eFURB157\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/21190\"\u003e#21190\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives on starred arguments (\u003ccode\u003eRUF057\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/21256\"\u003e#21256\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] extend deprecated argument \u003ccode\u003econcurrency\u003c/code\u003e in \u003ccode\u003eairflow..DAG\u003c/code\u003e (\u003ccode\u003eAIR301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/21220\"\u003e#21220\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove \u003ccode\u003eextend\u003c/code\u003e docs (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/21135\"\u003e#21135\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Fix typo in \u003ccode\u003eC416\u003c/code\u003e documentation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/21184\"\u003e#21184\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRevise Ruff setup instructions for Zed editor (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20935\"\u003e#20935\u003c/a\u003e)\u003c...\n\n_Description has been truncated_","html_url":"https://github.com/PySATL/pysatl-knowledge/pull/9","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/PySATL%2Fpysatl-knowledge/issues/9","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/9/packages"}},{"old_version":"1.1.1","new_version":"1.2.0","update_type":"minor","path":null,"pr_created_at":"2025-10-13T18:48:55.000Z","version_change":"1.1.1 → 1.2.0","issue":{"uuid":"3511116637","node_id":"PR_kwDOO_gais6thSTS","number":22,"state":"closed","title":"Upgrade: bump the pip-updates group across 1 directory with 21 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-11-10T18:40:38.000Z","author_association":null,"state_reason":null,"created_at":"2025-10-13T18:48:55.000Z","updated_at":"2025-11-10T18:40:40.000Z","time_to_close":2418703,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Upgrade: bump","group_name":"pip-updates","update_count":21,"packages":[{"name":"django","old_version":"5.2.3","new_version":"5.2.7","repository_url":"https://github.com/django/django"},{"name":"psycopg","old_version":"3.2.9","new_version":"3.2.10","repository_url":"https://github.com/psycopg/psycopg"},{"name":"govuk-frontend-jinja","old_version":"3.6.0","new_version":"3.8.0","repository_url":"https://github.com/LandRegistry/govuk-frontend-jinja"},{"name":"whitenoise","old_version":"6.9.0","new_version":"6.11.0","repository_url":"https://github.com/evansd/whitenoise"},{"name":"boto3","old_version":"1.38.39","new_version":"1.40.50","repository_url":"https://github.com/boto/boto3"},{"name":"pydantic","old_version":"2.11.7","new_version":"2.12.0","repository_url":"https://github.com/pydantic/pydantic"},{"name":"datamodel-code-generator","old_version":"0.31.1","new_version":"0.35.0","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"django-types","old_version":"0.21.0","new_version":"0.22.0","repository_url":"https://github.com/sbdchd/django-types"},{"name":"sentry-sdk","old_version":"2.30.0","new_version":"2.41.0","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"psutil","old_version":"7.0.0","new_version":"7.1.0","repository_url":"https://github.com/giampaolo/psutil"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"},{"name":"django-rq","old_version":"3.0.1","new_version":"3.1","repository_url":"https://github.com/rq/django-rq"},{"name":"django-simple-history","old_version":"3.8.0","new_version":"3.10.1","repository_url":"https://github.com/django-commons/django-simple-history"},{"name":"pandas","old_version":"2.3.0","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"moto","old_version":"5.1.6","new_version":"5.1.14","repository_url":"https://github.com/getmoto/moto"},{"name":"freezegun","old_version":"1.5.2","new_version":"1.5.5","repository_url":"https://github.com/spulec/freezegun"},{"name":"pytest-lazy-fixtures","old_version":"1.1.4","new_version":"1.4.0","repository_url":"https://github.com/dev-petrov/pytest-lazy-fixtures"},{"name":"ruff","old_version":"0.12.0","new_version":"0.14.0","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"mypy","old_version":"1.16.1","new_version":"1.18.2","repository_url":"https://github.com/python/mypy"},{"name":"django-webtest","old_version":"1.9.13","new_version":"1.9.14","repository_url":"https://github.com/django-webtest/django-webtest"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-updates group with 21 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [django](https://github.com/django/django) | `5.2.3` | `5.2.7` |\n| [psycopg](https://github.com/psycopg/psycopg) | `3.2.9` | `3.2.10` |\n| [govuk-frontend-jinja](https://github.com/LandRegistry/govuk-frontend-jinja) | `3.6.0` | `3.8.0` |\n| [whitenoise](https://github.com/evansd/whitenoise) | `6.9.0` | `6.11.0` |\n| [boto3](https://github.com/boto/boto3) | `1.38.39` | `1.40.50` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.11.7` | `2.12.0` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.31.1` | `0.35.0` |\n| [django-types](https://github.com/sbdchd/django-types) | `0.21.0` | `0.22.0` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.30.0` | `2.41.0` |\n| [psutil](https://github.com/giampaolo/psutil) | `7.0.0` | `7.1.0` |\n| [pytest-random-order](https://github.com/jbasko/pytest-random-order) | `1.1.1` | `1.2.0` |\n| [django-rq](https://github.com/rq/django-rq) | `3.0.1` | `3.1` |\n| [django-simple-history](https://github.com/django-commons/django-simple-history) | `3.8.0` | `3.10.1` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.3.0` | `2.3.3` |\n| [moto](https://github.com/getmoto/moto) | `5.1.6` | `5.1.14` |\n| [freezegun](https://github.com/spulec/freezegun) | `1.5.2` | `1.5.5` |\n| [pytest-lazy-fixtures](https://github.com/dev-petrov/pytest-lazy-fixtures) | `1.1.4` | `1.4.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.12.0` | `0.14.0` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.3.0` |\n| [mypy](https://github.com/python/mypy) | `1.16.1` | `1.18.2` |\n| [django-webtest](https://github.com/django-webtest/django-webtest) | `1.9.13` | `1.9.14` |\n\n\nUpdates `django` from 5.2.3 to 5.2.7\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/3cff3209e35a560f94801d428cf7f2a3ecb2a051\"\u003e\u003ccode\u003e3cff320\u003c/code\u003e\u003c/a\u003e [5.2.x] Bumped version for 5.2.7 release.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/ed8fc39d77465eddbde1191a054ae965f6a8a584\"\u003e\u003ccode\u003eed8fc39\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed CVE-2025-59682 -- Fixed potential partial directory-traversal v...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/52fbae0a4dbbe5faa59827f8f05694a0065cc135\"\u003e\u003ccode\u003e52fbae0\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed CVE-2025-59681 -- Protected QuerySet.annotate(), alias(), aggre...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/1794cbf961f9ea54715fb094fe8adc80a5054947\"\u003e\u003ccode\u003e1794cbf\u003c/code\u003e\u003c/a\u003e [5.2.x] Made cosmetic edits to 5.2.7 release notes.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/81625a141e1feaaea877fc18876fdd7b6394442c\"\u003e\u003ccode\u003e81625a1\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/36587\"\u003e#36587\u003c/a\u003e -- Clarified usage of \u003ccode\u003elist.insert()\u003c/code\u003e for upload handlers.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/6f3813e4b6e3db7fa3cc612c78f898142468bca9\"\u003e\u003ccode\u003e6f3813e\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/35877\"\u003e#35877\u003c/a\u003e, Refs \u003ca href=\"https://redirect.github.com/django/django/issues/36128\"\u003e#36128\u003c/a\u003e -- Documented unique constraint when migrat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/10a2d3b837c5d8c1ac0cabd399ad7edcc66bfa8e\"\u003e\u003ccode\u003e10a2d3b\u003c/code\u003e\u003c/a\u003e [5.2.x] Added stub release notes and release date for 5.2.7, 5.1.13, and 4.2.25.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/b2773a39a34f0f0ca768fa1daaf8bf72fca56e06\"\u003e\u003ccode\u003eb2773a3\u003c/code\u003e\u003c/a\u003e [5.2.x] Refs \u003ca href=\"https://redirect.github.com/django/django/issues/25508\"\u003e#25508\u003c/a\u003e -- Used QuerySet.\u003cstrong\u003erepr\u003c/strong\u003e in docs/ref/contrib/postgres/se...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/7554c54e5f02566520dee81c8b95f47429f1b553\"\u003e\u003ccode\u003e7554c54\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/36581\"\u003e#36581\u003c/a\u003e -- Updated serialization examples from XML to JSON.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/2a2936c3e6444a0f37156773ca405cedaf28dea7\"\u003e\u003ccode\u003e2a2936c\u003c/code\u003e\u003c/a\u003e [5.2.x] Updated translations from Transifex.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/django/django/compare/5.2.3...5.2.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `psycopg` from 3.2.9 to 3.2.10\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psycopg/psycopg/blob/master/docs/news.rst\"\u003epsycopg's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e.. currentmodule:: psycopg\u003c/p\u003e\n\u003cp\u003e.. index::\nsingle: Release notes\nsingle: News\u003c/p\u003e\n\u003ch1\u003e\u003ccode\u003epsycopg\u003c/code\u003e release notes\u003c/h1\u003e\n\u003ch2\u003eFuture releases\u003c/h2\u003e\n\u003cp\u003ePsycopg 3.3.0 (unreleased)\n^^^^^^^^^^^^^^^^^^^^^^^^^^\u003c/p\u003e\n\u003cp\u003e.. rubric:: New top-level features\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd :ref:\u003ccode\u003etemplate strings queries \\\u0026lt;template-strings\u0026gt;\u003c/code\u003e (:ticket:\u003ccode\u003e[#1054](https://github.com/psycopg/psycopg/issues/1054)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eCursors are now iterators, not only iterables. This means you can call\n\u003ccode\u003enext(cur)\u003c/code\u003e to fetch the next row (:ticket:\u003ccode\u003e[#1064](https://github.com/psycopg/psycopg/issues/1064)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eCursor.results()\u003c/code\u003e to iterate over the result sets of the queries\nexecuted though \u003ccode\u003e~Cursor.executemany()\u003c/code\u003e or \u003ccode\u003e~Cursor.execute()\u003c/code\u003e\n(:ticket:\u003ccode\u003e[#1080](https://github.com/psycopg/psycopg/issues/1080)\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. rubric:: New libpq wrapper features\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003epq.PGconn.used_gssapi\u003c/code\u003e attribute and \u003ccode\u003eCapabilities.has_used_gssapi()\u003c/code\u003e\nfunction (:ticket:\u003ccode\u003e[#1138](https://github.com/psycopg/psycopg/issues/1138)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eConnectionInfo.full_protocol_version\u003c/code\u003e attribute,\n\u003ccode\u003eCapabilities.has_full_protocol_version()\u003c/code\u003e function (:ticket:\u003ccode\u003e[#1079](https://github.com/psycopg/psycopg/issues/1079)\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. rubric:: Other changes\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eDisable default GSSAPI preferential connection in the binary package\n(:ticket:\u003ccode\u003e[#1136](https://github.com/psycopg/psycopg/issues/1136)\u003c/code\u003e).\u003c/p\u003e\n\u003cp\u003e.. warning::\u003c/p\u003e\n\u003cp\u003ePlease explicitly set the gssencmode_ connection parameter or the\n:envvar:\u003ccode\u003ePGGSSENCMODE\u003c/code\u003e environment variable to interact reliably with the\nGSSAPI.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDrop support for Python 3.8 (:ticket:\u003ccode\u003e[#976](https://github.com/psycopg/psycopg/issues/976)\u003c/code\u003e) and 3.9 (:ticket:\u003ccode\u003e[#1056](https://github.com/psycopg/psycopg/issues/1056)\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003ePsycopg 3.2.11 (unreleased)\n^^^^^^^^^^^^^^^^^^^^^^^^^^^\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix spurious readiness flags in some of the wait functions (:ticket:\u003ccode\u003e[#1141](https://github.com/psycopg/psycopg/issues/1141)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eFix high CPU usage using the \u003ccode\u003ewait_c\u003c/code\u003e function on Windows (:ticket:\u003ccode\u003e[#645](https://github.com/psycopg/psycopg/issues/645)\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/6cc2adfb45464f201bb7a15dd95189a7af16c26e\"\u003e\u003ccode\u003e6cc2adf\u003c/code\u003e\u003c/a\u003e chore: bump psycopg package version to 3.2.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/4c2fd3735c0670d63b92a7ad098fc0a0a2c7f52a\"\u003e\u003ccode\u003e4c2fd37\u003c/code\u003e\u003c/a\u003e Merge branch 'pg18-3.2' into maint-3.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/6ddad7b4bb7144b317e41ea57fcf3b720756fc8a\"\u003e\u003ccode\u003e6ddad7b\u003c/code\u003e\u003c/a\u003e docs: mention PostgreSQL v18 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/30bfdb954ea93cf92ce9a823f41ea6f67fd03d52\"\u003e\u003ccode\u003e30bfdb9\u003c/code\u003e\u003c/a\u003e ci: add PostgreSQL 18 to the test grid\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/57236b83b83cbfb588fcfcf70c1ca81c62d05a5b\"\u003e\u003ccode\u003e57236b8\u003c/code\u003e\u003c/a\u003e chore: add PostgreSQL 18 exceptions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/970a307b3d6d2b5125abf8337320aab97292f34f\"\u003e\u003ccode\u003e970a307\u003c/code\u003e\u003c/a\u003e fix: add ConnStatus.CONNECTION_AUTHENTICATING value\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/6903a92b5f9dc40e25f3a3d7ba62a4b4e739a638\"\u003e\u003ccode\u003e6903a92\u003c/code\u003e\u003c/a\u003e Merge branch 'fix-1091' into maint-3.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/43ad961c85703c0458c58eccc512ec1e1f2d9fae\"\u003e\u003ccode\u003e43ad961\u003c/code\u003e\u003c/a\u003e docs: document the changes to notifies generator\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/eac8115523d1b569e279eaec5fc31d76da25ef55\"\u003e\u003ccode\u003eeac8115\u003c/code\u003e\u003c/a\u003e fix: raise a warning when notifies generator and handlers are used together\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/5cc99d65f05844413730cdada00840bf9739e293\"\u003e\u003ccode\u003e5cc99d6\u003c/code\u003e\u003c/a\u003e fix: collect notifies only if no handler was registered\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psycopg/psycopg/compare/3.2.9...3.2.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `govuk-frontend-jinja` from 3.6.0 to 3.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/releases\"\u003egovuk-frontend-jinja's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.8.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for \u003ca href=\"https://github.com/alphagov/govuk-frontend/releases/tag/v5.12.0\"\u003eGOV.UK Frontend v5.12.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.9 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/LandRegistry/govuk-frontend-jinja/issues/82\"\u003e#82\u003c/a\u003e - Templates use lower filter on values where it should not\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/tim-s-ccs\"\u003e\u003ccode\u003e@​tim-s-ccs\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/samuelhwilliams\"\u003e\u003ccode\u003e@​samuelhwilliams\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.7.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for \u003ca href=\"https://github.com/alphagov/govuk-frontend/releases/tag/v5.11.1\"\u003eGOV.UK Frontend v5.11.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/blob/main/CHANGELOG.md\"\u003egovuk-frontend-jinja's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/releases/tag/3.8.0\"\u003e3.8.0\u003c/a\u003e - 06/10/2025\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for \u003ca href=\"https://github.com/alphagov/govuk-frontend/releases/tag/v5.12.0\"\u003eGOV.UK Frontend v5.12.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.9 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/LandRegistry/govuk-frontend-jinja/issues/82\"\u003e#82\u003c/a\u003e - Templates use lower filter on values where it should not\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/tim-s-ccs\"\u003eTim South\u003c/a\u003e and \u003ca href=\"https://github.com/samuelhwilliams\"\u003eSamuel Williams\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/releases/tag/3.7.0\"\u003e3.7.0\u003c/a\u003e - 14/08/2025\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for \u003ca href=\"https://github.com/alphagov/govuk-frontend/releases/tag/v5.11.1\"\u003eGOV.UK Frontend v5.11.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/b9a6fd3f452c1c61dfbd06a71c875d0bba917018\"\u003e\u003ccode\u003eb9a6fd3\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/LandRegistry/govuk-frontend-jinja/issues/101\"\u003e#101\u003c/a\u003e from LandRegistry/govuk-frontend-512\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/be989e3c402ebb622eb895b6e5d9a9b6d72fed0d\"\u003e\u003ccode\u003ebe989e3\u003c/code\u003e\u003c/a\u003e refine fixed issue\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/e28b6095d4909d21e1e3e6c2dfbf44c43b993b6a\"\u003e\u003ccode\u003ee28b609\u003c/code\u003e\u003c/a\u003e identical requirements since 3.9 removal\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/2738e28a5b77a3e93c2427eec1c57e42ce2e9d81\"\u003e\u003ccode\u003e2738e28\u003c/code\u003e\u003c/a\u003e upgrade test dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/9b9de9b8d38dcffe96c6c169cf69c24e6fd3c7bd\"\u003e\u003ccode\u003e9b9de9b\u003c/code\u003e\u003c/a\u003e Templates use lower filter on values where it should not\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/cdf76723a0476900916454aea731747a80306ad4\"\u003e\u003ccode\u003ecdf7672\u003c/code\u003e\u003c/a\u003e only lowercase bools\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/31a0b0a7274fb41d22b628031b33da66b01ab691\"\u003e\u003ccode\u003e31a0b0a\u003c/code\u003e\u003c/a\u003e minor version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/4d2deb03d13f8bebb74984a1978b25835d09d565\"\u003e\u003ccode\u003e4d2deb0\u003c/code\u003e\u003c/a\u003e drop python 3.9 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/c125a6501a14edf3febd16c76d755058f5ca739d\"\u003e\u003ccode\u003ec125a65\u003c/code\u003e\u003c/a\u003e test 5.12.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/0fb146b1d9a5595f0a0a99aaed94fbfd7bddd637\"\u003e\u003ccode\u003e0fb146b\u003c/code\u003e\u003c/a\u003e bump versions\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/compare/3.6.0...3.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `whitenoise` from 6.9.0 to 6.11.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/evansd/whitenoise/blob/main/docs/changelog.rst\"\u003ewhitenoise's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.11.0 (2025-09-18)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport Django 6.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.10.0 (2025-09-09)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evansd/whitenoise/commit/c9c06e9382b92fc959ffdfc3e2ec63057de82561\"\u003e\u003ccode\u003ec9c06e9\u003c/code\u003e\u003c/a\u003e Version 6.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evansd/whitenoise/commit/051c4e997a07fd3ae5e9f3ec092080102ab89d93\"\u003e\u003ccode\u003e051c4e9\u003c/code\u003e\u003c/a\u003e Support Django 6.0 (\u003ca href=\"https://redirect.github.com/evansd/whitenoise/issues/665\"\u003e#665\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evansd/whitenoise/commit/c903cc13394895cbb3926e48c7acecf364efcd26\"\u003e\u003ccode\u003ec903cc1\u003c/code\u003e\u003c/a\u003e Version 6.10.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evansd/whitenoise/commit/a81bcb0ae2dd0c5884ebadb762f46827ecb54d0f\"\u003e\u003ccode\u003ea81bcb0\u003c/code\u003e\u003c/a\u003e docs(django): use the stable version in URLs (\u003ca href=\"https://redirect.github.com/evansd/whitenoise/issues/626\"\u003e#626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evansd/whitenoise/commit/67b4f32b12a9700b6dcc30ced8e9ad23bf39baa1\"\u003e\u003ccode\u003e67b4f32\u003c/code\u003e\u003c/a\u003e Support Python 3.14 (\u003ca href=\"https://redirect.github.com/evansd/whitenoise/issues/664\"\u003e#664\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evansd/whitenoise/commit/da8d333d165be1bdd9e7decbb3a293b5e55ff608\"\u003e\u003ccode\u003eda8d333\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/evansd/whitenoise/issues/663\"\u003e#663\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evansd/whitenoise/commit/800072482c0652f81864ae78c26539d3dfc765b2\"\u003e\u003ccode\u003e8000724\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 2 updates (\u003ca href=\"https://redirect.github.com/evansd/whitenoise/issues/662\"\u003e#662\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evansd/whitenoise/commit/8fb339f0eaee9219b1e02a840b5fd2227cf2fbbf\"\u003e\u003ccode\u003e8fb339f\u003c/code\u003e\u003c/a\u003e Upgrade dependencies (\u003ca href=\"https://redirect.github.com/evansd/whitenoise/issues/661\"\u003e#661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evansd/whitenoise/commit/adf64ddfa5329d622cbc4740aec49b7baf0df792\"\u003e\u003ccode\u003eadf64dd\u003c/code\u003e\u003c/a\u003e Use uvx to run tox on GitHub Actions (\u003ca href=\"https://redirect.github.com/evansd/whitenoise/issues/660\"\u003e#660\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evansd/whitenoise/commit/ad6eb204640ff69498f8fc60bd9eb876ee5771b8\"\u003e\u003ccode\u003ead6eb20\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/evansd/whitenoise/issues/659\"\u003e#659\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/evansd/whitenoise/compare/6.9.0...6.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `boto3` from 1.38.39 to 1.40.50\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/d8b41867dbfac406a2115d87abe1f8caea0365e7\"\u003e\u003ccode\u003ed8b4186\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.50'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/8fc5b245cf38d48dc03a7726be4141911fc09c54\"\u003e\u003ccode\u003e8fc5b24\u003c/code\u003e\u003c/a\u003e Bumping version to 1.40.50\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/f4d009760a05b09435bd1078c41e7c753246172d\"\u003e\u003ccode\u003ef4d0097\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/660a1ec6b8b97d109a8ab37ca5a79925844388f0\"\u003e\u003ccode\u003e660a1ec\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.49'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/a5eec708c97fdb2e07179603fc8a42c8c80ad2ca\"\u003e\u003ccode\u003ea5eec70\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.49' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/a06ac9ea4e4ed70c7ec9e5f52b742a2e739f6bab\"\u003e\u003ccode\u003ea06ac9e\u003c/code\u003e\u003c/a\u003e Bumping version to 1.40.49\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/4dd0569b4cab67d26d8e4d450ad61eb8ec715c2c\"\u003e\u003ccode\u003e4dd0569\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/5ad02481857ce9341a40e65c27cd6321b2de380f\"\u003e\u003ccode\u003e5ad0248\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.48'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/578c49e7015f47fe32dbc51d0b51ba6e76f8118d\"\u003e\u003ccode\u003e578c49e\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.48' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/01618f3cfb1633487de5d2d536f8dfe161063953\"\u003e\u003ccode\u003e01618f3\u003c/code\u003e\u003c/a\u003e Bumping version to 1.40.48\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.38.39...1.40.50\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.11.7 to 2.12.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pydantic/pydantic/releases\"\u003epydantic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.12.0 2025-10-07\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch1\u003ev2.12.0 (2025-10-07)\u003c/h1\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!NOTE]\nCheck out the \u003ca href=\"https://pydantic.dev/articles/pydantic-v2-12-release\"\u003eblog post\u003c/a\u003e for release highlights. Several minor \u003ca href=\"https://pydantic.dev/articles/pydantic-v2-12-release#changes\"\u003echanges\u003c/a\u003e (considered non-breaking changes according to our \u003ca href=\"https://docs.pydantic.dev/2.12/version-policy/#pydantic-v2\"\u003eversioning policy\u003c/a\u003e) are also included in this release. Make sure to look into them before upgrading.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!WARNING]\nThe core functionality of Pydantic V1 is \u003cstrong\u003enot\u003c/strong\u003e compatible with \u003cstrong\u003ePython 3.14\u003c/strong\u003e or greater.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cp\u003eThis is the final 2.12 release. It features the work of 20 external contributors and provides useful new features, along with initial Python 3.14 support.\u003c/p\u003e\n\u003cp\u003eChangelog (see the \u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.0a1\"\u003e2.12.0a1\u003c/a\u003e and \u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.0b1\"\u003e2.12.0b1\u003c/a\u003e releases for additional changes since 2.11):\u003c/p\u003e\n\u003ch4\u003ePackaging\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate V1 copy to v1.10.24 by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12338\"\u003e#12338\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eNew Features\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eextra\u003c/code\u003e parameter to the validate functions by \u003ca href=\"https://github.com/anvilpete\"\u003e\u003ccode\u003e@​anvilpete\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12233\"\u003e#12233\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eexclude_computed_fields\u003c/code\u003e serialization option by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12334\"\u003e#12334\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epreverse_empty_path\u003c/code\u003e URL options by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12336\"\u003e#12336\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eunion_format\u003c/code\u003e parameter to JSON Schema generation by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12147\"\u003e#12147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e__qualname__\u003c/code\u003e parameter for \u003ccode\u003ecreate_model\u003c/code\u003e by \u003ca href=\"https://github.com/Atry\"\u003e\u003ccode\u003e@​Atry\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12001\"\u003e#12001\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eDo not try to infer name from lambda definitions in pipelines API by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12289\"\u003e#12289\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse proper namespace for functions in \u003ccode\u003eTypeAdapter\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12324\"\u003e#12324\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003eAny\u003c/code\u003e for context type annotation in \u003ccode\u003eTypeAdapter\u003c/code\u003e by \u003ca href=\"https://github.com/inducer\"\u003e\u003ccode\u003e@​inducer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12279\"\u003e#12279\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003eFieldInfo\u003c/code\u003e in \u003ccode\u003epydantic.fields.__all__\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12339\"\u003e#12339\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRespect \u003ccode\u003evalidation_alias\u003c/code\u003e in \u003ccode\u003e@validate_call\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12340\"\u003e#12340\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003eAny\u003c/code\u003e as context annotation in plugin API by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12341\"\u003e#12341\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse proper \u003ccode\u003estacklevel\u003c/code\u003e in warnings when possible by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12342\"\u003e#12342\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNew Contributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anvilpete\"\u003e\u003ccode\u003e@​anvilpete\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12233\"\u003e#12233\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JonathanWindell\"\u003e\u003ccode\u003e@​JonathanWindell\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12327\"\u003e#12327\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inducer\"\u003e\u003ccode\u003e@​inducer\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12279\"\u003e#12279\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Atry\"\u003e\u003ccode\u003e@​Atry\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12001\"\u003e#12001\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.11.10...v2.12.0\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.10...v2.12.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.0b1 2025-10-03\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pydantic/pydantic/blob/main/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.12.0 (2025-10-07)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.0\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eThis is the final 2.12 release. It features the work of 20 external contributors and provides useful new features, along with initial Python 3.14 support.\nSeveral minor changes (considered non-breaking changes according to our \u003ca href=\"https://docs.pydantic.dev/2.12/version-policy/#pydantic-v2\"\u003eversioning policy\u003c/a\u003e)\nare also included in this release. Make sure to look into them before upgrading.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eNote that Pydantic V1 is not compatible with Python 3.14 and greater\u003c/strong\u003e.\u003c/p\u003e\n\u003cp\u003eChanges (see the alpha and beta releases for additional changes since 2.11):\u003c/p\u003e\n\u003ch4\u003ePackaging\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate V1 copy to v1.10.24 by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12338\"\u003e#12338\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eNew Features\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eextra\u003c/code\u003e parameter to the validate functions by \u003ca href=\"https://github.com/anvilpete\"\u003e\u003ccode\u003e@​anvilpete\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12233\"\u003e#12233\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eexclude_computed_fields\u003c/code\u003e serialization option by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12334\"\u003e#12334\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epreverse_empty_path\u003c/code\u003e URL options by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12336\"\u003e#12336\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eunion_format\u003c/code\u003e parameter to JSON Schema generation by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12147\"\u003e#12147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e__qualname__\u003c/code\u003e parameter for \u003ccode\u003ecreate_model\u003c/code\u003e by \u003ca href=\"https://github.com/Atry\"\u003e\u003ccode\u003e@​Atry\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12001\"\u003e#12001\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eDo not try to infer name from lambda definitions in pipelines API by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12289\"\u003e#12289\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse proper namespace for functions in \u003ccode\u003eTypeAdapter\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12324\"\u003e#12324\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003eAny\u003c/code\u003e for context type annotation in \u003ccode\u003eTypeAdapter\u003c/code\u003e by \u003ca href=\"https://github.com/inducer\"\u003e\u003ccode\u003e@​inducer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12279\"\u003e#12279\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003eFieldInfo\u003c/code\u003e in \u003ccode\u003epydantic.fields.__all__\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12339\"\u003e#12339\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRespect \u003ccode\u003evalidation_alias\u003c/code\u003e in \u003ccode\u003e@validate_call\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12340\"\u003e#12340\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003eAny\u003c/code\u003e as context annotation in plugin API by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12341\"\u003e#12341\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse proper \u003ccode\u003estacklevel\u003c/code\u003e in warnings when possible by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12342\"\u003e#12342\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNew Contributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anvilpete\"\u003e\u003ccode\u003e@​anvilpete\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12233\"\u003e#12233\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JonathanWindell\"\u003e\u003ccode\u003e@​JonathanWindell\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12327\"\u003e#12327\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inducer\"\u003e\u003ccode\u003e@​inducer\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12279\"\u003e#12279\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Atry\"\u003e\u003ccode\u003e@​Atry\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12001\"\u003e#12001\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.12.0b1 (2025-10-03)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.0b1\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis is the first beta release of the upcoming 2.12 release.\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a7928e692e5a7841c4379d1af1fd37966941dade\"\u003e\u003ccode\u003ea7928e6\u003c/code\u003e\u003c/a\u003e Update Python version in documentation publishing CI job (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/12344\"\u003e#12344\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/0e188d02f30ce0a4bfeb6a719ce562084fb5621d\"\u003e\u003ccode\u003e0e188d0\u003c/code\u003e\u003c/a\u003e Prepare release 2.12.0 (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/12343\"\u003e#12343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/1231eeea6943baa7d5167f72cb7b6116f4347e26\"\u003e\u003ccode\u003e1231eee\u003c/code\u003e\u003c/a\u003e Use proper \u003ccode\u003estacklevel\u003c/code\u003e in warnings when possible (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/12342\"\u003e#12342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/94989e0b09b8aeecfe0551c918bdc004ce9c0cf3\"\u003e\u003ccode\u003e94989e0\u003c/code\u003e\u003c/a\u003e Use \u003ccode\u003eAny\u003c/code\u003e as context annotation in plugin API (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/12341\"\u003e#12341\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/3f59a03ea3219d9e4efd02a504c59138f273723e\"\u003e\u003ccode\u003e3f59a03\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003e__qualname__\u003c/code\u003e parameter for \u003ccode\u003ecreate_model\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/12001\"\u003e#12001\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/28c62c33218258fdb0f53f7d26c607b24dd6ed50\"\u003e\u003ccode\u003e28c62c3\u003c/code\u003e\u003c/a\u003e Rewrite std types, fields and strict mode documentation (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/12287\"\u003e#12287\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/34baf1254115f113c031ffc0d9424bb89616ad49\"\u003e\u003ccode\u003e34baf12\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eunion_format\u003c/code\u003e parameter to JSON Schema generation (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/12147\"\u003e#12147\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/495b03f92dc9aedd18af454b69f2605ac402a580\"\u003e\u003ccode\u003e495b03f\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003epreverse_empty_path\u003c/code\u003e URL options (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/12336\"\u003e#12336\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/82d4254f30895c9a7ae63368a72e2aa4efa675d5\"\u003e\u003ccode\u003e82d4254\u003c/code\u003e\u003c/a\u003e Respect \u003ccode\u003evalidation_alias\u003c/code\u003e in \u003ccode\u003e@validate_call\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/4bd84188a7f8a4a856b5e1923b27cbae28ee38b4\"\u003e\u003ccode\u003e4bd8418\u003c/code\u003e\u003c/a\u003e Expose \u003ccode\u003eFieldInfo\u003c/code\u003e in \u003ccode\u003epydantic.fields.__all__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/12339\"\u003e#12339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.11.7...v2.12.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `datamodel-code-generator` from 0.31.1 to 0.35.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/releases\"\u003edatamodel-code-generator's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.35.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support to Python 3.14 by \u003ca href=\"https://github.com/ilovelinux\"\u003e\u003ccode\u003e@​ilovelinux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2469\"\u003ekoxudaxi/datamodel-code-generator#2469\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.34.0...0.35.0\"\u003ehttps://github.com/koxudaxi/datamodel-code-generator/compare/0.34.0...0.35.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.34.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTypedDict: Add support for const fields using Literal by \u003ca href=\"https://github.com/erandagan\"\u003e\u003ccode\u003e@​erandagan\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2475\"\u003ekoxudaxi/datamodel-code-generator#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCorrect custom CodeFormatter error message by \u003ca href=\"https://github.com/MrSnapperVibes\"\u003e\u003ccode\u003e@​MrSnapperVibes\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2489\"\u003ekoxudaxi/datamodel-code-generator#2489\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edataclass: Add support for const fields using Literal[T] by \u003ca href=\"https://github.com/ysndr\"\u003e\u003ccode\u003e@​ysndr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2486\"\u003ekoxudaxi/datamodel-code-generator#2486\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: Add argument to disable the \u003cstrong\u003efuture\u003c/strong\u003e annotations import by \u003ca href=\"https://github.com/daviddmd\"\u003e\u003ccode\u003e@​daviddmd\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2498\"\u003ekoxudaxi/datamodel-code-generator#2498\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Objects with additionalProperties shouldn't be unioned with None by default by \u003ca href=\"https://github.com/erandagan\"\u003e\u003ccode\u003e@​erandagan\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2493\"\u003ekoxudaxi/datamodel-code-generator#2493\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/erandagan\"\u003e\u003ccode\u003e@​erandagan\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2475\"\u003ekoxudaxi/datamodel-code-generator#2475\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MrSnapperVibes\"\u003e\u003ccode\u003e@​MrSnapperVibes\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2489\"\u003ekoxudaxi/datamodel-code-generator#2489\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ysndr\"\u003e\u003ccode\u003e@​ysndr\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2486\"\u003ekoxudaxi/datamodel-code-generator#2486\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/daviddmd\"\u003e\u003ccode\u003e@​daviddmd\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2498\"\u003ekoxudaxi/datamodel-code-generator#2498\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.33.0...0.34.0\"\u003ehttps://github.com/koxudaxi/datamodel-code-generator/compare/0.33.0...0.34.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.33.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUse Pytest \u003ccode\u003etmp_path\u003c/code\u003e fixture instead of \u003ccode\u003eTemporaryDirectory\u003c/code\u003e by \u003ca href=\"https://github.com/ilovelinux\"\u003e\u003ccode\u003e@​ilovelinux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2463\"\u003ekoxudaxi/datamodel-code-generator#2463\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRevert default date-time behaviour to respect OpenAPI/JSON Schema specifications by \u003ca href=\"https://github.com/mueslo\"\u003e\u003ccode\u003e@​mueslo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2442\"\u003ekoxudaxi/datamodel-code-generator#2442\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid mixing up configurations of different objects with the same name by \u003ca href=\"https://github.com/ilovelinux\"\u003e\u003ccode\u003e@​ilovelinux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2461\"\u003ekoxudaxi/datamodel-code-generator#2461\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix Pydantic \u003ccode\u003e@model_validator()\u003c/code\u003e usage  for Pydantic 2.12 by \u003ca href=\"https://github.com/ilovelinux\"\u003e\u003ccode\u003e@​ilovelinux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2472\"\u003ekoxudaxi/datamodel-code-generator#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRun the test suite daily to check breaking changes by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2479\"\u003ekoxudaxi/datamodel-code-generator#2479\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAutomatically infer CSV file type by \u003ca href=\"https://github.com/ilovelinux\"\u003e\u003ccode\u003e@​ilovelinux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2467\"\u003ekoxudaxi/datamodel-code-generator#2467\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid collapsing models when referencing a forwarding reference by \u003ca href=\"https://github.com/ilovelinux\"\u003e\u003ccode\u003e@​ilovelinux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2465\"\u003ekoxudaxi/datamodel-code-generator#2465\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mueslo\"\u003e\u003ccode\u003e@​mueslo\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2442\"\u003ekoxudaxi/datamodel-code-generator#2442\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.32.0...0.33.0\"\u003ehttps://github.com/koxudaxi/datamodel-code-generator/compare/0.32.0...0.33.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.32.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003emodify __typename field to honor \u003ccode\u003e--use-default-kwarg\u003c/code\u003e flag by \u003ca href=\"https://github.com/rpmcginty\"\u003e\u003ccode\u003e@​rpmcginty\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2420\"\u003ekoxudaxi/datamodel-code-generator#2420\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typo in variable name by \u003ca href=\"https://github.com/eltoder\"\u003e\u003ccode\u003e@​eltoder\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2439\"\u003ekoxudaxi/datamodel-code-generator#2439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSend use_non_positive_negative_number_constrained_types to the data type manager by \u003ca href=\"https://github.com/torarvid\"\u003e\u003ccode\u003e@​torarvid\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2425\"\u003ekoxudaxi/datamodel-code-generator#2425\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow parsing non-string lists for required fields by \u003ca href=\"https://github.com/HeroGamers\"\u003e\u003ccode\u003e@​HeroGamers\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2446\"\u003ekoxudaxi/datamodel-code-generator#2446\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow including path parameters in generated models by \u003ca href=\"https://github.com/MrLoh\"\u003e\u003ccode\u003e@​MrLoh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2445\"\u003ekoxudaxi/datamodel-code-generator#2445\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePassing in treat_dot_as_module bool to Enum init function by \u003ca href=\"https://github.com/LukeAtThat\"\u003e\u003ccode\u003e@​LukeAtThat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2456\"\u003ekoxudaxi/datamodel-code-generator#2456\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: correctly handle multiline comments in Unions by \u003ca href=\"https://github.com/anor4k\"\u003e\u003ccode\u003e@​anor4k\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2454\"\u003ekoxudaxi/datamodel-code-generator#2454\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReturn Parameter and RequestBody DataTypesare  by \u003ca href=\"https://github.com/MrLoh\"\u003e\u003ccode\u003e@​MrLoh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2444\"\u003ekoxudaxi/datamodel-code-generator#2444\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/9d836695163fa5e2a3afd542dc49e75651b0ed0a\"\u003e\u003ccode\u003e9d83669\u003c/code\u003e\u003c/a\u003e Add support to Python 3.14 (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2469\"\u003e#2469\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/8d91fc5faa59504df5e611d4bed5e7cb223963f0\"\u003e\u003ccode\u003e8d91fc5\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2509\"\u003e#2509\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/ab2fb6ddc04f45ad04a2726f37134a307c9532de\"\u003e\u003ccode\u003eab2fb6d\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2506\"\u003e#2506\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/092f8d06ac4131cb041dc8a272205b8082d7fe02\"\u003e\u003ccode\u003e092f8d0\u003c/code\u003e\u003c/a\u003e Fix: Objects with additionalProperties shouldn't be unioned with None by defa...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/849b75c6f4c45e1904234249b109442987c5c836\"\u003e\u003ccode\u003e849b75c\u003c/code\u003e\u003c/a\u003e feat: Add argument to disable the \u003cstrong\u003efuture\u003c/strong\u003e annotations import (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2498\"\u003e#2498\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/3ad899bf73ccaa475ec48a86d40feeec53fb71b2\"\u003e\u003ccode\u003e3ad899b\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2502\"\u003e#2502\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/d2b89bb5fe8bbe27116db15c4b7c2b4735da4f85\"\u003e\u003ccode\u003ed2b89bb\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2496\"\u003e#2496\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/9ad3d865871a1525ec13296fc47d034c0133f50b\"\u003e\u003ccode\u003e9ad3d86\u003c/code\u003e\u003c/a\u003e dataclass: Add support for const fields using Literal[T] (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2486\"\u003e#2486\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/82a929504db9d9ec587eed38130729b0079b02d1\"\u003e\u003ccode\u003e82a9295\u003c/code\u003e\u003c/a\u003e build(deps): bump pypa/gh-action-pypi-publish in /.github/workflows (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2495\"\u003e#2495\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/d97e532bb0f9a3070b0e26a7eb2577d461eafabf\"\u003e\u003ccode\u003ed97e532\u003c/code\u003e\u003c/a\u003e Correct custom CodeFormatter error message (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2489\"\u003e#2489\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.35.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `django-types` from 0.21.0 to 0.22.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sbdchd/django-types/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentry-sdk` from 2.30.0 to 2.41.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/releases\"\u003esentry-sdk's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.41.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003efeat: Add \u003ccode\u003econcurrent.futures\u003c/code\u003e patch to threading integration (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4770\"\u003e#4770\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThe SDK now makes sure to automatically preserve span relationships when using \u003ccode\u003eThreadPoolExecutor\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003echore: Remove old metrics code (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4899\"\u003e#4899\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eRemoved all code related to the deprecated experimental metrics feature (\u003ccode\u003esentry_sdk.metrics\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eref: Remove \u0026quot;experimental\u0026quot; from log function name (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4901\"\u003e#4901\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003efix(ai): Add mapping for gen_ai message roles (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4884\"\u003e#4884\u003c/a\u003e) by \u003ca href=\"https://github.com/shellmayr\"\u003e\u003ccode\u003e@​shellmayr\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003efeat(metrics): Add trace metrics behind an experiments flag (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4898\"\u003e#4898\u003c/a\u003e) by \u003ca href=\"https://github.com/k-fish\"\u003e\u003ccode\u003e@​k-fish\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.40.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd LiteLLM integration (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4864\"\u003e#4864\u003c/a\u003e) by \u003ca href=\"https://github.com/constantinius\"\u003e\u003ccode\u003e@​constantinius\u003c/code\u003e\u003c/a\u003e\nOnce you've enabled the \u003ca href=\"https://docs.sentry.io/platforms/python/integrations/litellm/\"\u003enew LiteLLM integration\u003c/a\u003e, you can use the Sentry AI Agents Monitoring, a Sentry dashboard that helps you understand what's going on with your AI requests:\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.litellm import LiteLLMIntegration\nsentry_sdk.init(\n    dsn=\u0026quot;\u0026lt;your-dsn\u0026gt;\u0026quot;,\n    # Set traces_sample_rate to 1.0 to capture 100%\n    # of transactions for tracing.\n    traces_sample_rate=1.0,\n    # Add data like inputs and responses;\n    # see https://docs.sentry.io/platforms/python/data-management/data-collected/ for more info\n    send_default_pii=True,\n    integrations=[\n        LiteLLMIntegration(),\n    ],\n)\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eLitestar: Copy request info to prevent cookies mutation (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4883\"\u003e#4883\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd tracing to \u003ccode\u003eDramatiqIntegration\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4571\"\u003e#4571\u003c/a\u003e) by \u003ca href=\"https://github.com/Igreh\"\u003e\u003ccode\u003e@​Igreh\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAlso emit spans for MCP tool calls done by the LLM (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4875\"\u003e#4875\u003c/a\u003e) by \u003ca href=\"https://github.com/constantinius\"\u003e\u003ccode\u003e@​constantinius\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eOption to not trace HTTP requests based on status codes (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4869\"\u003e#4869\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\nYou can now disable transactions for incoming requests with specific HTTP status codes. The \u003ca href=\"https://docs.sentry.io/platforms/python/configuration/options/#trace_ignore_status_codes\"\u003enew \u003ccode\u003etrace_ignore_status_codes\u003c/code\u003e option\u003c/a\u003e accepts a \u003ccode\u003eset\u003c/code\u003e of status codes as integers. If a transaction wraps a request that results in one of the provided status codes, the transaction will be unsampled.\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\ntrace_ignore_status_codes={301, 302, 303, *range(305, 400), 404},\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md\"\u003esentry-sdk's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.41.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003efeat: Add \u003ccode\u003econcurrent.futures\u003c/code\u003e patch to threading integration (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4770\"\u003e#4770\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThe SDK now makes sure to automatically preserve span relationships when using \u003ccode\u003eThreadPoolExecutor\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003echore: Remove old metrics code (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4899\"\u003e#4899\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eRemoved all code related to the deprecated experimental metrics feature (\u003ccode\u003esentry_sdk.metrics\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eref: Remove \u0026quot;experimental\u0026quot; from log function name (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4901\"\u003e#4901\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003efix(ai): Add mapping for gen_ai message roles (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4884\"\u003e#4884\u003c/a\u003e) by \u003ca href=\"https://github.com/shellmayr\"\u003e\u003ccode\u003e@​shellmayr\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003efeat(metrics): Add trace metrics behind an experiments flag (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4898\"\u003e#4898\u003c/a\u003e) by \u003ca href=\"https://github.com/k-fish\"\u003e\u003ccode\u003e@​k-fish\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.40.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd LiteLLM integration (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4864\"\u003e#4864\u003c/a\u003e) by \u003ca href=\"https://github.com/constantinius\"\u003e\u003ccode\u003e@​constantinius\u003c/code\u003e\u003c/a\u003e\nOnce you've enabled the \u003ca href=\"https://docs.sentry.io/platforms/python/integrations/litellm/\"\u003enew LiteLLM integration\u003c/a\u003e, you can use the Sentry AI Agents Monitoring, a Sentry dashboard that helps you understand what's going on with your AI requests:\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.litellm import LiteLLMIntegration\nsentry_sdk.init(\n    dsn=\u0026quot;\u0026lt;your-dsn\u0026gt;\u0026quot;,\n    # Set traces_sample_rate to 1.0 to capture 100%\n    # of transactions for tracing.\n    traces_sample_rate=1.0,\n    # Add data like inputs and responses;\n    # see https://docs.sentry.io/platforms/python/data-management/data-collected/ for more info\n    send_default_pii=True,\n    integrations=[\n        LiteLLMIntegration(),\n    ],\n)\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eLitestar: Copy request info to prevent cookies mutation (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4883\"\u003e#4883\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd tracing to \u003ccode\u003eDramatiqIntegration\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4571\"\u003e#4571\u003c/a\u003e) by \u003ca href=\"https://github.com/Igreh\"\u003e\u003ccode\u003e@​Igreh\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAlso emit spans for MCP tool calls done by the LLM (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4875\"\u003e#4875\u003c/a\u003e) by \u003ca href=\"https://github.com/constantinius\"\u003e\u003ccode\u003e@​constantinius\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eOption to not trace HTTP requests based on status codes (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4869\"\u003e#4869\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\nYou can now disable transactions for incoming requests with specific HTTP status codes. The \u003ca href=\"https://docs.sentry.io/platforms/python/configuration/options/#trace_ignore_status_codes\"\u003enew \u003ccode\u003etrace_ignore_status_codes\u003c/code\u003e option\u003c/a\u003e accepts a \u003ccode\u003eset\u003c/code\u003e of status codes as integers. If a transaction wraps a request that results in one of the provided status codes, the transaction will be unsampled.\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\ntrace_ignore_status_codes={301, 302, 303, *range(305, 400), 404},\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/685287d36da8f9423d2cfb03dc7c13bb7d6c57dd\"\u003e\u003ccode\u003e685287d\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/272af1b1380db38fbf70087e561555c558bf8308\"\u003e\u003ccode\u003e272af1b\u003c/code\u003e\u003c/a\u003e release: 2.41.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/1f8c008e9368874d6cea289283da61e236062b34\"\u003e\u003ccode\u003e1f8c008\u003c/code\u003e\u003c/a\u003e feat(metrics): Add trace metrics behind an experiments flag (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4898\"\u003e#4898\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/a04974744e54c333733648152b530d19c457205f\"\u003e\u003ccode\u003ea049747\u003c/code\u003e\u003c/a\u003e ref: Remove \u0026quot;experimental\u0026quot; from log func name (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4901\"\u003e#4901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/79973687822f0af0d7cda10e92a79aac7393a097\"\u003e\u003ccode\u003e7997368\u003c/code\u003e\u003c/a\u003e chore: Remove old metrics code (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4899\"\u003e#4899\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/55e903e2c52b3026d434e67a4b18b04878894a0f\"\u003e\u003ccode\u003e55e903e\u003c/code\u003e\u003c/a\u003e ci: Bump Python version for linting (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4897\"\u003e#4897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/f32e391a6fe22cc1d26c093e63ac4499e52b9d68\"\u003e\u003ccode\u003ef32e391\u003c/code\u003e\u003c/a\u003e feat: Add concurrent.futures patch to threading integration (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4770\"\u003e#4770\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/b1dd2dcf3b63c73ab91f25ca217a28cf3ea7f6e9\"\u003e\u003ccode\u003eb1dd2dc\u003c/code\u003e\u003c/a\u003e fix(ai): add mapping for gen_ai message roles (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4884\"\u003e#4884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/a879d8292b90becc582d5c0ee1e5edf1072dea10\"\u003e\u003ccode\u003ea879d82\u003c/code\u003e\u003c/a\u003e ci: Remove toxgen check (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4892\"\u003e#4892\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/87f8f390eea0ca435a9a6e53747bcf5f844acbd1\"\u003e\u003ccode\u003e87f8f39\u003c/code\u003e\u003c/a\u003e Merge branch 'release/2.40.0'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getsentry/sentry-python/compare/2.30.0...2.41.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `psutil` from 7.0.0 to 7.1.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/giampaolo/psutil/blob/master/HISTORY.rst\"\u003epsutil's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e7.1.0\u003c/h1\u003e\n\u003cp\u003e2025-09-17\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eEnhancements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e2581_, [Windows]: publish ARM64 wheels.  (patch by Matthieu Darbois)\u003c/li\u003e\n\u003cli\u003e2571_, [FreeBSD]: Dropped support for FreeBSD 8 and earlier. FreeBSD 8 was\nmaintained from 2009 to 2013.\u003c/li\u003e\n\u003cli\u003e2575_: introduced \u003ccode\u003edprint\u003c/code\u003e CLI tool to format .yml and .md files.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBug fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e2473_, [macOS]: Fix build issue on macOS 11 and lower.\u003c/li\u003e\n\u003cli\u003e2494_, [Windows]: All APIs dealing with paths, such as\n\u003ccode\u003eProcess.memory_maps()\u003c/code\u003e\u003cem\u003e, \u003ccode\u003eProcess.exe()\u003c/code\u003e\u003c/em\u003e and \u003ccode\u003eProcess.open_files()\u003c/code\u003e_ does\nnot properly handle UNC paths. Paths such as \u003ccode\u003e\\\\??\\\\C:\\\\Windows\\\\Temp\u003c/code\u003e and\n\u003ccode\u003e'\\\\Device\\\\HarddiskVolume1\\\\Windows\\\\Temp'\u003c/code\u003e are now converted to\n\u003ccode\u003eC:\\\\Windows\\\\Temp\u003c/code\u003e.  (patch by Ben Peddell)\u003c/li\u003e\n\u003cli\u003e2506_, [Windows]: Windows service APIs had issues with unicode services using\nspecial characters in their name.\u003c/li\u003e\n\u003cli\u003e2514_, [Linux]: \u003ccode\u003eProcess.cwd()\u003c/code\u003e_ sometimes fail with \u003ccode\u003eFileNotFoundError\u003c/code\u003e due\nto a race condition.\u003c/li\u003e\n\u003cli\u003e2526_, [Linux]: \u003ccode\u003eProcess.create_time()\u003c/code\u003e\u003cem\u003e, which is used to univocally\nidentify a process over time, is subject to system clock updates, and as such\ncan lead to \u003ccode\u003eProcess.is_running()\u003c/code\u003e\u003c/em\u003e returning a wrong result. A monotonic\ncreation time is now used instead.  (patch by Jonathan Kohler)\u003c/li\u003e\n\u003cli\u003e2528_, [Linux]: \u003ccode\u003eProcess.children()\u003c/code\u003e_ may raise \u003ccode\u003ePermissionError\u003c/code\u003e. It will\nnow raise \u003ccode\u003eAccessDenied\u003c/code\u003e_ instead.\u003c/li\u003e\n\u003cli\u003e2540_, [macOS]: \u003ccode\u003eboot_time()\u003c/code\u003e_ is off by 45 seconds (C precision issue).\u003c/li\u003e\n\u003cli\u003e2541_, 2570_, 2578_ [Linux], [macOS], [NetBSD]: \u003ccode\u003eProcess.create_time()\u003c/code\u003e_ does\nnot reflect system clock updates.\u003c/li\u003e\n\u003cli\u003e2542_: if system clock is updated \u003ccode\u003eProcess.children()\u003c/code\u003e_ and\n\u003ccode\u003eProcess.parent()\u003c/code\u003e_ may not be able to return the right information.\u003c/li\u003e\n\u003cli\u003e2545_: [Illumos]: Fix handling of MIB2_UDP_ENTRY in \u003ccode\u003enet_connections()\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003e2552_, [Windows]: \u003ccode\u003eboot_time()\u003c/code\u003e_ didn't take into account the time spent\nduring suspend / hibernation.\u003c/li\u003e\n\u003cli\u003e2560_, [Linux]: \u003ccode\u003eProcess.memory_maps()\u003c/code\u003e_ may crash with \u003ccode\u003eIndexError\u003c/code\u003e on\nRISCV64 due to a malformed \u003ccode\u003e/proc/{PID}/smaps\u003c/code\u003e file.  (patch by Julien\nStephan)\u003c/li\u003e\n\u003cli\u003e2586_, [macOS], [CRITICAL]: fixed different places in C code which can\ntrigger a segfault.\u003c/li\u003e\n\u003cli\u003e2604_, [Linux]: \u003ccode\u003evirtual_memory()\u003c/code\u003e_ \u0026quot;used\u0026quot; memory does not match recent\nversions of \u003ccode\u003efree\u003c/code\u003e CLI utility.  (patch by Isaac K. Ko)\u003c/li\u003e\n\u003cli\u003e2605_, [Linux]: \u003ccode\u003epsutil.sensors_battery()\u003c/code\u003e reports a negative amount for\nseconds left.\u003c/li\u003e\n\u003cli\u003e2607_, [Windows]: \u003ccode\u003eWindowsService.description()\u003c/code\u003e method may fail with\n\u003ccode\u003eERROR_NOT_FOUND\u003c/code\u003e. Now it returns an empty string instead.\u003c/li\u003e\n\u003cli\u003e2610:, [macOS], [CRITICAL]: fix \u003ccode\u003ecpu_freq()\u003c/code\u003e_ segfault on ARM architectures.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/0d18187e79b349e577fadabd3589f8fdbf99bf5a\"\u003e\u003ccode\u003e0d18187\u003c/code\u003e\u003c/a\u003e Revert HISTORY notes about \u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2629\"\u003e#2629\u003c/a\u003e. We still do publish 3.6 and 3.7 wheels.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/229e2de232860fe22e2c2884c20b8979c643d5c6\"\u003e\u003ccode\u003e229e2de\u003c/code\u003e\u003c/a\u003e Pre-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/fb75b28226ec8e6b9e5b9eefa05a62de579cc114\"\u003e\u003ccode\u003efb75b28\u003c/code\u003e\u003c/a\u003e Chore: skip CI tests except on Python 3.8 and 3.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/3a4c01638bc61c77f43a05aea5bc6e1ddc81c6c4\"\u003e\u003ccode\u003e3a4c016\u003c/code\u003e\u003c/a\u003e Stop publishing wheels for Python 3.6 and 3.7 (\u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2629\"\u003e#2629\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/83e4f7fdd76051dd8e0eeed99e2bf5fc881a2960\"\u003e\u003ccode\u003e83e4f7f\u003c/code\u003e\u003c/a\u003e OSX: disable failing test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/df0d4e2637917377bd5971f1745e881b75f2c6e2\"\u003e\u003ccode\u003edf0d4e2\u003c/code\u003e\u003c/a\u003e Call GetExtended[Tcp|Udp]Table twice under free-threaded build (round 2) (\u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2627\"\u003e#2627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/dcbfb81e863fa2b8688ccd8da27b09b539404688\"\u003e\u003ccode\u003edcbfb81\u003c/code\u003e\u003c/a\u003e [Windows] fix unicode issues around service APIs (\u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2626\"\u003e#2626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/ef72dcd076f1cec94ba50ec30b5dbebb272845d0\"\u003e\u003ccode\u003eef72dcd\u003c/code\u003e\u003c/a\u003e revert \u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2590\"\u003e#2590\u003c/a\u003e (Call GetExtended[Tcp|Udp]Table twice under free-threaded build)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/8773698006d387db90b3982d78fd4ff6b2ebe71c\"\u003e\u003ccode\u003e8773698\u003c/code\u003e\u003c/a\u003e small refact around UTXENT_MUTEX_LOCK\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/13b711fc3ffa384d481e03881e46ae48009c4eeb\"\u003e\u003ccode\u003e13b711f\u003c/code\u003e\u003c/a\u003e Lock around uses of getutent/setutent/endutent (\u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2615\"\u003e#2615\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/giampaolo/psutil/compare/release-7.0.0...release-7.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `django-rq` from 3.0.1 to 3.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rq/django-rq/releases\"\u003edjango-rq's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e/metrics\u003c/code\u003e endpoint to expose RQ metrics in Prometheus format. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded token based authentication for the \u003ccode\u003e/metrics\u003c/code\u003e and \u003ccode\u003e/stats.json\u003c/code\u003e endpoints. Thanks \u003ca href=\"https://github.com/RasmusThing\"\u003e\u003ccode\u003e@​RasmusThing\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eMigrated Django-RQ to use Python's modern packaging standard. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eFixed an issue with setting \u003ccode\u003eresult_ttl\u003c/code\u003e via job decorators. Thanks \u003ca href=\"https://github.com/Sir-heed\"\u003e\u003ccode\u003e@​Sir-heed\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVarious admin page improvements. Thanks \u003ca href=\"https://github.com/selwin\"\u003e\u003ccode\u003e@​selwin\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/DhavalGojiya\"\u003e\u003ccode\u003e@​DhavalGojiya\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rq/django-rq/blob/master/CHANGELOG.md\"\u003edjango-rq's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003eVersion 3.1 (2025-08-02)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e/metrics\u003c/code\u003e endpoint to expose RQ metrics in Prometheus format. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded token based authentication for the \u003ccode\u003e/metrics\u003c/code\u003e and \u003ccode\u003e/stats.json\u003c/code\u003e endpoints. Thanks \u003ca href=\"https://github.com/RasmusThing\"\u003e\u003ccode\u003e@​RasmusThing\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eMigrated Django-RQ to use Python's modern packaging standard. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eFixed an issue with setting \u003ccode\u003eresult_ttl\u003c/code\u003e via job decorators. Thanks \u003ca href=\"https://github.com/Sir-heed\"\u003e\u003ccode\u003e@​Sir-heed\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVarious admin page improvements. Thanks \u003ca href=\"https://github.com/selwin\"\u003e\u003ccode\u003e@​selwin\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/DhavalGojiya\"\u003e\u003ccode\u003e@​DhavalGojiya\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/571082b7849942448ba7f34c4a0a3b88fbebaade\"\u003e\u003ccode\u003e571082b\u003c/code\u003e\u003c/a\u003e Bump version to 3.1 in pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/edd22bd2f5042feecaee8a4034784a930856137a\"\u003e\u003ccode\u003eedd22bd\u003c/code\u003e\u003c/a\u003e Bump version to 3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/f9fadb81699347bf3369053e3cd619226ca2c75d\"\u003e\u003ccode\u003ef9fadb8\u003c/code\u003e\u003c/a\u003e Change url token to header auth and add to /metrics/ aswell (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/718\"\u003e#718\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/fc9a6dee60c05cdd34530e9ce002cda982c65f71\"\u003e\u003ccode\u003efc9a6de\u003c/code\u003e\u003c/a\u003e Update packaging to use modern packaging with a pyproject.toml (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/715\"\u003e#715\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/b1e6e87d0f6da4dcc29ec5745fb4a3665bde10ad\"\u003e\u003ccode\u003eb1e6e87\u003c/code\u003e\u003c/a\u003e Update README.rst\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/429933202673712ba55d6ad49672b73bece04dfc\"\u003e\u003ccode\u003e4299332\u003c/code\u003e\u003c/a\u003e fix job decorator default ttl (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/714\"\u003e#714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/38143405218e0387ca2f4fc2cd48a0d0e7382370\"\u003e\u003ccode\u003e3814340\u003c/code\u003e\u003c/a\u003e Added sorting for deferred_jobs and scheduled_jobs views (\u003ca href=\"ht...\n\n_Description has been truncated_","html_url":"https://github.com/Ed-BW/consult-demo/pull/22","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ed-BW%2Fconsult-demo/issues/22","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/22/packages"}},{"old_version":"1.1.1","new_version":"1.2.0","update_type":"minor","path":null,"pr_created_at":"2025-10-13T08:01:20.000Z","version_change":"1.1.1 → 1.2.0","issue":{"uuid":"3508912016","node_id":"PR_kwDOOQGkKM6tZwrh","number":58,"state":"closed","title":"😨 Bump the runtime-minors group across 1 directory with 4 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":12,"pull_request":true,"closed_at":"2025-11-10T07:43:45.000Z","author_association":null,"state_reason":null,"created_at":"2025-10-13T08:01:20.000Z","updated_at":"2025-11-10T07:43:47.000Z","time_to_close":2418145,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"😨 Bump","group_name":"runtime-minors","update_count":4,"packages":[{"name":"pytest","old_version":"8.3.4","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"},{"name":"pytest-httpdbg","old_version":"0.9.0","new_version":"0.9.1","repository_url":"https://github.com/cle-b/pytest-httpdbg"}],"path":null,"ecosystem":"pip"},"body":"Bumps the runtime-minors group with 4 updates in the / directory: [pytest](https://github.com/pytest-dev/pytest), [pytest-mock](https://github.com/pytest-dev/pytest-mock), [pytest-random-order](https://github.com/jbasko/pytest-random-order) and [pytest-httpdbg](https://github.com/cle-b/pytest-httpdbg).\n\nUpdates `pytest` from 8.3.4 to 8.4.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.4.2\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.2 (2025-09-03)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13478\"\u003e#13478\u003c/a\u003e: Fixed a crash when using \u003ccode\u003econsole_output_style\u003c/code\u003e{.interpreted-text role=\u0026quot;confval\u0026quot;} with \u003ccode\u003etimes\u003c/code\u003e and a module is skipped.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13530\"\u003e#13530\u003c/a\u003e: Fixed a crash when using \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and \u003ccode\u003edecimal.Decimal\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} instances with the \u003ccode\u003edecimal.FloatOperation\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} trap set.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13549\"\u003e#13549\u003c/a\u003e: No longer evaluate type annotations in Python \u003ccode\u003e3.14\u003c/code\u003e when inspecting function signatures.\u003c/p\u003e\n\u003cp\u003eThis prevents crashes during module collection when modules do not explicitly use \u003ccode\u003efrom __future__ import annotations\u003c/code\u003e and import types for annotations within a \u003ccode\u003eif TYPE_CHECKING:\u003c/code\u003e block.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13559\"\u003e#13559\u003c/a\u003e: Added missing [int]{.title-ref} and [float]{.title-ref} variants to the [Literal]{.title-ref} type annotation of the [type]{.title-ref} parameter in \u003ccode\u003epytest.Parser.addini\u003c/code\u003e{.interpreted-text role=\u0026quot;meth\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13563\"\u003e#13563\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now only imports \u003ccode\u003enumpy\u003c/code\u003e if NumPy is already in \u003ccode\u003esys.modules\u003c/code\u003e. This fixes unconditional import behavior introduced in [8.4.0]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13577\"\u003e#13577\u003c/a\u003e: Clarify that \u003ccode\u003epytest_generate_tests\u003c/code\u003e is discovered in test modules/classes; other hooks must be in \u003ccode\u003econftest.py\u003c/code\u003e or plugins.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributor-facing changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13480\"\u003e#13480\u003c/a\u003e: Self-testing: fixed a few test failures when run with \u003ccode\u003e-Wdefault\u003c/code\u003e or a similar override.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13547\"\u003e#13547\u003c/a\u003e: Self-testing: corrected expected message for \u003ccode\u003etest_doctest_unexpected_exception\u003c/code\u003e in Python \u003ccode\u003e3.14\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13684\"\u003e#13684\u003c/a\u003e: Make pytest's own testsuite insensitive to the presence of the \u003ccode\u003eCI\u003c/code\u003e environment variable -- by \u003ccode\u003eogrisel\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.1\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.1 (2025-06-17)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13461\"\u003e#13461\u003c/a\u003e: Corrected \u003ccode\u003e_pytest.terminal.TerminalReporter.isatty\u003c/code\u003e to support\nbeing called as a method. Before it was just a boolean which could\nbreak correct code when using \u003ccode\u003e-o log_cli=true\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13477\"\u003e#13477\u003c/a\u003e: Reintroduced \u003ccode\u003epytest.PytestReturnNotNoneWarning\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which was removed by accident in pytest [8.4]{.title-ref}.\u003c/p\u003e\n\u003cp\u003eThis warning is raised when a test functions returns a value other than \u003ccode\u003eNone\u003c/code\u003e, which is often a mistake made by beginners.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ereturn-not-none\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13497\"\u003e#13497\u003c/a\u003e: Fixed compatibility with \u003ccode\u003eTwisted 25+\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e: Fixed outdated warning about \u003ccode\u003efaulthandler\u003c/code\u003e not working on Windows.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.0\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.0 (2025-06-02)\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/bfae4224fd554d3d7f2c277a4cc092b6ec6af3ae\"\u003e\u003ccode\u003ebfae422\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/89905381a163be30ae87d62e5f750e902d750c5f\"\u003e\u003ccode\u003e8990538\u003c/code\u003e\u003c/a\u003e Fix passenv CI in tox ini and make tests insensitive to the presence of the C...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/ca676bfe005aebcb12f4146d1b0f1d2772e2cd5d\"\u003e\u003ccode\u003eca676bf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13687\"\u003e#13687\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/e63f6e51c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/975a60a63ce385a44655596e254c1899feaa53e4\"\u003e\u003ccode\u003e975a60a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13686\"\u003e#13686\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/12bde8af6...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/7723ce84b87ab08f86ddafcb342acc28ba5ec99d\"\u003e\u003ccode\u003e7723ce8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13683\"\u003e#13683\u003c/a\u003e from even-even/fix_Exeption_to_Exception_in_errorMe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b7f05680d1301e0969b30bcb3c4b27433c9ee2b7\"\u003e\u003ccode\u003eb7f0568\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13685\"\u003e#13685\u003c/a\u003e from CoretexShadow/fix/docs-pytest-generate-tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2c94c4a6948ba53440818389298157fa5d5f94cd\"\u003e\u003ccode\u003e2c94c4a\u003c/code\u003e\u003c/a\u003e add missing colon (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13640\"\u003e#13640\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13641\"\u003e#13641\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c3d7684bc01c8c48d05145a30c5211ca8656c68c\"\u003e\u003ccode\u003ec3d7684\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13606\"\u003e#13606\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/5f9938563...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/dc6e3be2ddc75a149b6d102d9b7c82ee47a00cfa\"\u003e\u003ccode\u003edc6e3be\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13605\"\u003e#13605\u003c/a\u003e from The-Compiler/training-update-2025-07\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/f87289c36c8dbe7740e3020f5546b6f8b0861ff0\"\u003e\u003ccode\u003ef87289c\u003c/code\u003e\u003c/a\u003e Fix crash with \u003ccode\u003etimes\u003c/code\u003e output style and skipped module (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13573\"\u003e#13573\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13579\"\u003e#13579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/8.3.4...8.4.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-mock` from 3.14.0 to 3.15.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-mock/releases\"\u003epytest-mock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.15.1\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2025-09-16\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/529\"\u003e#529\u003c/a\u003e: Fixed \u003ccode\u003eitertools._tee object has no attribute error\u003c/code\u003e -- now \u003ccode\u003eduplicate_iterators=True\u003c/code\u003e must be passed to \u003ccode\u003emocker.spy\u003c/code\u003e to duplicate iterators.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.15.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2025-09-04\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 (EOL) is no longer supported.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/524\"\u003e#524\u003c/a\u003e: Added \u003ccode\u003espy_return_iter\u003c/code\u003e to \u003ccode\u003emocker.spy\u003c/code\u003e, which contains a duplicate of the return value of the spied method if it is an \u003ccode\u003eIterator\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.14.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/503\"\u003e#503\u003c/a\u003e: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst\"\u003epytest-mock's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.15.1\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2025-09-16\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#529](https://github.com/pytest-dev/pytest-mock/issues/529) \u0026lt;https://github.com/pytest-dev/pytest-mock/issues/529\u0026gt;\u003c/code\u003e_: Fixed \u003ccode\u003eitertools._tee object has no attribute error\u003c/code\u003e -- now \u003ccode\u003eduplicate_iterators=True\u003c/code\u003e must be passed to \u003ccode\u003emocker.spy\u003c/code\u003e to duplicate iterators.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.15.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2025-09-04\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 (EOL) is no longer supported.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[#524](https://github.com/pytest-dev/pytest-mock/issues/524) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/524\u0026gt;\u003c/code\u003e_: Added \u003ccode\u003espy_return_iter\u003c/code\u003e to \u003ccode\u003emocker.spy\u003c/code\u003e, which contains a duplicate of the return value of the spied method if it is an \u003ccode\u003eIterator\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.14.1 (2025-05-26)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#503](https://github.com/pytest-dev/pytest-mock/issues/503) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/503\u0026gt;\u003c/code\u003e_: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/e1b5c62a38c5a05cae614aef3847f240ba50d269\"\u003e\u003ccode\u003ee1b5c62\u003c/code\u003e\u003c/a\u003e Release 3.15.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/184eb190d6be417f5f33727bcbc9704909479498\"\u003e\u003ccode\u003e184eb19\u003c/code\u003e\u003c/a\u003e Set \u003ccode\u003espy_return_iter\u003c/code\u003e only when explicitly requested (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/537\"\u003e#537\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/4fa0088a0aa85eefb1313bd97adf43889bf1f647\"\u003e\u003ccode\u003e4fa0088\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/536\"\u003e#536\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/f5aff33ce71ed4620acc43dc41cb3b198bcf4cb0\"\u003e\u003ccode\u003ef5aff33\u003c/code\u003e\u003c/a\u003e Fix test failure with pytest 8+ and verbose mode (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/535\"\u003e#535\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/adc41873c9d6aa69b87e3f108c93a29c847869aa\"\u003e\u003ccode\u003eadc4187\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 5 to 6 in the github-actions group (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/533\"\u003e#533\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/95ad5700609aae73c6f767b8cc2ccfb2483e0f5c\"\u003e\u003ccode\u003e95ad570\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/532\"\u003e#532\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/e696bf02c199b1f7d0c48adb450f40e5a75b699a\"\u003e\u003ccode\u003ee696bf0\u003c/code\u003e\u003c/a\u003e Fix standalone mock support (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/531\"\u003e#531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/5b29b03ce9581cfcd867dd6c04a970fb2c861291\"\u003e\u003ccode\u003e5b29b03\u003c/code\u003e\u003c/a\u003e Fix gen-release-notes script\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/7d22ef4e560351832e60687d8bd15ebe2785ff3b\"\u003e\u003ccode\u003e7d22ef4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/528\"\u003e#528\u003c/a\u003e from pytest-dev/release-3.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/90b29f89e2086c139a7b4fea89202faa192ee5a9\"\u003e\u003ccode\u003e90b29f8\u003c/code\u003e\u003c/a\u003e Update CHANGELOG for 3.15.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-mock/compare/v3.14.0...v3.15.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-httpdbg` from 0.9.0 to 0.9.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/cle-b/pytest-httpdbg/releases\"\u003epytest-httpdbg's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.9.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eimprove allure attachment type detection by \u003ca href=\"https://github.com/cle-b\"\u003e\u003ccode\u003e@​cle-b\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/cle-b/pytest-httpdbg/pull/18\"\u003ecle-b/pytest-httpdbg#18\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/cle-b/pytest-httpdbg/compare/v0.9.0...v0.9.1\"\u003ehttps://github.com/cle-b/pytest-httpdbg/compare/v0.9.0...v0.9.1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cle-b/pytest-httpdbg/commit/26c4368fbffc565f24f80831624e2b06e58f70d6\"\u003e\u003ccode\u003e26c4368\u003c/code\u003e\u003c/a\u003e improve allure attachment type detection (\u003ca href=\"https://redirect.github.com/cle-b/pytest-httpdbg/issues/18\"\u003e#18\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/cle-b/pytest-httpdbg/compare/v0.9.0...v0.9.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/RecordedFuture-ProfessionalServices/psengine/pull/58","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/RecordedFuture-ProfessionalServices%2Fpsengine/issues/58","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/58/packages"}},{"old_version":"1.1.1","new_version":"1.2.0","update_type":"minor","path":null,"pr_created_at":"2025-09-15T08:22:33.000Z","version_change":"1.1.1 → 1.2.0","issue":{"uuid":"3416845770","node_id":"PR_kwDOOQGkKM6olA6y","number":52,"state":"open","title":"😨 Bump the runtime-minors group across 1 directory with 3 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":11,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-09-15T08:22:33.000Z","updated_at":"2025-09-15T10:00:36.478Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"😨 Bump","group_name":"runtime-minors","update_count":3,"packages":[{"name":"pytest","old_version":"8.3.4","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.0","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"}],"path":null,"ecosystem":"pip"},"body":"Bumps the runtime-minors group with 3 updates in the / directory: [pytest](https://github.com/pytest-dev/pytest), [pytest-mock](https://github.com/pytest-dev/pytest-mock) and [pytest-random-order](https://github.com/jbasko/pytest-random-order).\n\nUpdates `pytest` from 8.3.4 to 8.4.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.4.2\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.2 (2025-09-03)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13478\"\u003e#13478\u003c/a\u003e: Fixed a crash when using \u003ccode\u003econsole_output_style\u003c/code\u003e{.interpreted-text role=\u0026quot;confval\u0026quot;} with \u003ccode\u003etimes\u003c/code\u003e and a module is skipped.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13530\"\u003e#13530\u003c/a\u003e: Fixed a crash when using \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and \u003ccode\u003edecimal.Decimal\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} instances with the \u003ccode\u003edecimal.FloatOperation\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} trap set.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13549\"\u003e#13549\u003c/a\u003e: No longer evaluate type annotations in Python \u003ccode\u003e3.14\u003c/code\u003e when inspecting function signatures.\u003c/p\u003e\n\u003cp\u003eThis prevents crashes during module collection when modules do not explicitly use \u003ccode\u003efrom __future__ import annotations\u003c/code\u003e and import types for annotations within a \u003ccode\u003eif TYPE_CHECKING:\u003c/code\u003e block.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13559\"\u003e#13559\u003c/a\u003e: Added missing [int]{.title-ref} and [float]{.title-ref} variants to the [Literal]{.title-ref} type annotation of the [type]{.title-ref} parameter in \u003ccode\u003epytest.Parser.addini\u003c/code\u003e{.interpreted-text role=\u0026quot;meth\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13563\"\u003e#13563\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now only imports \u003ccode\u003enumpy\u003c/code\u003e if NumPy is already in \u003ccode\u003esys.modules\u003c/code\u003e. This fixes unconditional import behavior introduced in [8.4.0]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13577\"\u003e#13577\u003c/a\u003e: Clarify that \u003ccode\u003epytest_generate_tests\u003c/code\u003e is discovered in test modules/classes; other hooks must be in \u003ccode\u003econftest.py\u003c/code\u003e or plugins.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributor-facing changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13480\"\u003e#13480\u003c/a\u003e: Self-testing: fixed a few test failures when run with \u003ccode\u003e-Wdefault\u003c/code\u003e or a similar override.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13547\"\u003e#13547\u003c/a\u003e: Self-testing: corrected expected message for \u003ccode\u003etest_doctest_unexpected_exception\u003c/code\u003e in Python \u003ccode\u003e3.14\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13684\"\u003e#13684\u003c/a\u003e: Make pytest's own testsuite insensitive to the presence of the \u003ccode\u003eCI\u003c/code\u003e environment variable -- by \u003ccode\u003eogrisel\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.1\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.1 (2025-06-17)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13461\"\u003e#13461\u003c/a\u003e: Corrected \u003ccode\u003e_pytest.terminal.TerminalReporter.isatty\u003c/code\u003e to support\nbeing called as a method. Before it was just a boolean which could\nbreak correct code when using \u003ccode\u003e-o log_cli=true\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13477\"\u003e#13477\u003c/a\u003e: Reintroduced \u003ccode\u003epytest.PytestReturnNotNoneWarning\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which was removed by accident in pytest [8.4]{.title-ref}.\u003c/p\u003e\n\u003cp\u003eThis warning is raised when a test functions returns a value other than \u003ccode\u003eNone\u003c/code\u003e, which is often a mistake made by beginners.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ereturn-not-none\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13497\"\u003e#13497\u003c/a\u003e: Fixed compatibility with \u003ccode\u003eTwisted 25+\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e: Fixed outdated warning about \u003ccode\u003efaulthandler\u003c/code\u003e not working on Windows.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.0\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.0 (2025-06-02)\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/bfae4224fd554d3d7f2c277a4cc092b6ec6af3ae\"\u003e\u003ccode\u003ebfae422\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/89905381a163be30ae87d62e5f750e902d750c5f\"\u003e\u003ccode\u003e8990538\u003c/code\u003e\u003c/a\u003e Fix passenv CI in tox ini and make tests insensitive to the presence of the C...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/ca676bfe005aebcb12f4146d1b0f1d2772e2cd5d\"\u003e\u003ccode\u003eca676bf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13687\"\u003e#13687\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/e63f6e51c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/975a60a63ce385a44655596e254c1899feaa53e4\"\u003e\u003ccode\u003e975a60a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13686\"\u003e#13686\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/12bde8af6...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/7723ce84b87ab08f86ddafcb342acc28ba5ec99d\"\u003e\u003ccode\u003e7723ce8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13683\"\u003e#13683\u003c/a\u003e from even-even/fix_Exeption_to_Exception_in_errorMe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b7f05680d1301e0969b30bcb3c4b27433c9ee2b7\"\u003e\u003ccode\u003eb7f0568\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13685\"\u003e#13685\u003c/a\u003e from CoretexShadow/fix/docs-pytest-generate-tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2c94c4a6948ba53440818389298157fa5d5f94cd\"\u003e\u003ccode\u003e2c94c4a\u003c/code\u003e\u003c/a\u003e add missing colon (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13640\"\u003e#13640\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13641\"\u003e#13641\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c3d7684bc01c8c48d05145a30c5211ca8656c68c\"\u003e\u003ccode\u003ec3d7684\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13606\"\u003e#13606\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/5f9938563...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/dc6e3be2ddc75a149b6d102d9b7c82ee47a00cfa\"\u003e\u003ccode\u003edc6e3be\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13605\"\u003e#13605\u003c/a\u003e from The-Compiler/training-update-2025-07\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/f87289c36c8dbe7740e3020f5546b6f8b0861ff0\"\u003e\u003ccode\u003ef87289c\u003c/code\u003e\u003c/a\u003e Fix crash with \u003ccode\u003etimes\u003c/code\u003e output style and skipped module (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13573\"\u003e#13573\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13579\"\u003e#13579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/8.3.4...8.4.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-mock` from 3.14.0 to 3.15.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-mock/releases\"\u003epytest-mock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.15.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2025-09-04\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 (EOL) is no longer supported.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/524\"\u003e#524\u003c/a\u003e: Added \u003ccode\u003espy_return_iter\u003c/code\u003e to \u003ccode\u003emocker.spy\u003c/code\u003e, which contains a duplicate of the return value of the spied method if it is an \u003ccode\u003eIterator\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.14.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/503\"\u003e#503\u003c/a\u003e: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst\"\u003epytest-mock's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.15.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2025-09-04\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 (EOL) is no longer supported.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[#524](https://github.com/pytest-dev/pytest-mock/issues/524) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/524\u0026gt;\u003c/code\u003e_: Added \u003ccode\u003espy_return_iter\u003c/code\u003e to \u003ccode\u003emocker.spy\u003c/code\u003e, which contains a duplicate of the return value of the spied method if it is an \u003ccode\u003eIterator\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.14.1 (2025-05-26)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#503](https://github.com/pytest-dev/pytest-mock/issues/503) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/503\u0026gt;\u003c/code\u003e_: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/90b29f89e2086c139a7b4fea89202faa192ee5a9\"\u003e\u003ccode\u003e90b29f8\u003c/code\u003e\u003c/a\u003e Update CHANGELOG for 3.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/53a6190b9c793f0b1801cd8b08afd58d3436bad6\"\u003e\u003ccode\u003e53a6190\u003c/code\u003e\u003c/a\u003e Drop support for Python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/5aa9e9cd7e0d25403c8d9d478bc3480bb5ca2456\"\u003e\u003ccode\u003e5aa9e9c\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003espy_return_iter\u003c/code\u003e attribute to \u003ccode\u003espy\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/524\"\u003e#524\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/dc6df75a91aad4980af1a711e42a2ade19960f36\"\u003e\u003ccode\u003edc6df75\u003c/code\u003e\u003c/a\u003e Bump pypa/gh-action-pypi-publish in /.github/workflows (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/526\"\u003e#526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/b977d83d051390c5efd91b02884236ea5eba8ae4\"\u003e\u003ccode\u003eb977d83\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/525\"\u003e#525\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/bd66c9cb8b1ffc59b4d9e42a1b413bafa3a16eac\"\u003e\u003ccode\u003ebd66c9c\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/523\"\u003e#523\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/f9e47b6e1685169972488391d8c2ba1d10e0901d\"\u003e\u003ccode\u003ef9e47b6\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 2 updates (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/521\"\u003e#521\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/3aec7677f47f6c4b89dbdee9e4a32a8fe047943f\"\u003e\u003ccode\u003e3aec767\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/522\"\u003e#522\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/e09e5be3fcaa54102006b7c01add91ac33ebf9ed\"\u003e\u003ccode\u003ee09e5be\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/520\"\u003e#520\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/ba83a70ff9c15c0b8534e7f1a7c6ba5321aea046\"\u003e\u003ccode\u003eba83a70\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/518\"\u003e#518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-mock/compare/v3.14.0...v3.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/RecordedFuture-ProfessionalServices/psengine/pull/52","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/RecordedFuture-ProfessionalServices%2Fpsengine/issues/52","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/52/packages"}},{"old_version":"1.1.1","new_version":"1.2.0","update_type":"minor","path":null,"pr_created_at":"2025-09-08T19:34:50.000Z","version_change":"1.1.1 → 1.2.0","issue":{"uuid":"3395439653","node_id":"PR_kwDOO_gais6ncyfV","number":18,"state":"open","title":"Upgrade: bump the pip-updates group across 1 directory with 17 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-08T19:34:50.000Z","updated_at":"2025-09-22T19:22:56.221Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Upgrade: bump","group_name":"pip-updates","update_count":17,"packages":[{"name":"django","old_version":"5.2.3","new_version":"5.2.6","repository_url":"https://github.com/django/django"},{"name":"psycopg","old_version":"3.2.9","new_version":"3.2.10","repository_url":"https://github.com/psycopg/psycopg"},{"name":"govuk-frontend-jinja","old_version":"3.6.0","new_version":"3.7.0","repository_url":"https://github.com/LandRegistry/govuk-frontend-jinja"},{"name":"boto3","old_version":"1.38.39","new_version":"1.40.25","repository_url":"https://github.com/boto/boto3"},{"name":"datamodel-code-generator","old_version":"0.31.1","new_version":"0.33.0","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"django-types","old_version":"0.21.0","new_version":"0.22.0","repository_url":"https://github.com/sbdchd/django-types"},{"name":"sentry-sdk","old_version":"2.30.0","new_version":"2.37.0","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"},{"name":"django-rq","old_version":"3.0.1","new_version":"3.1","repository_url":"https://github.com/rq/django-rq"},{"name":"django-simple-history","old_version":"3.8.0","new_version":"3.10.1","repository_url":"https://github.com/django-commons/django-simple-history"},{"name":"pandas","old_version":"2.3.0","new_version":"2.3.2","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"moto","old_version":"5.1.6","new_version":"5.1.12","repository_url":"https://github.com/getmoto/moto"},{"name":"freezegun","old_version":"1.5.2","new_version":"1.5.5","repository_url":"https://github.com/spulec/freezegun"},{"name":"pytest-lazy-fixtures","old_version":"1.1.4","new_version":"1.3.4","repository_url":"https://github.com/dev-petrov/pytest-lazy-fixtures"},{"name":"ruff","old_version":"0.12.0","new_version":"0.12.12","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"mypy","old_version":"1.16.1","new_version":"1.17.1","repository_url":"https://github.com/python/mypy"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-updates group with 17 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [django](https://github.com/django/django) | `5.2.3` | `5.2.6` |\n| [psycopg](https://github.com/psycopg/psycopg) | `3.2.9` | `3.2.10` |\n| [govuk-frontend-jinja](https://github.com/LandRegistry/govuk-frontend-jinja) | `3.6.0` | `3.7.0` |\n| [boto3](https://github.com/boto/boto3) | `1.38.39` | `1.40.25` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.31.1` | `0.33.0` |\n| [django-types](https://github.com/sbdchd/django-types) | `0.21.0` | `0.22.0` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.30.0` | `2.37.0` |\n| [pytest-random-order](https://github.com/jbasko/pytest-random-order) | `1.1.1` | `1.2.0` |\n| [django-rq](https://github.com/rq/django-rq) | `3.0.1` | `3.1` |\n| [django-simple-history](https://github.com/django-commons/django-simple-history) | `3.8.0` | `3.10.1` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.3.0` | `2.3.2` |\n| [moto](https://github.com/getmoto/moto) | `5.1.6` | `5.1.12` |\n| [freezegun](https://github.com/spulec/freezegun) | `1.5.2` | `1.5.5` |\n| [pytest-lazy-fixtures](https://github.com/dev-petrov/pytest-lazy-fixtures) | `1.1.4` | `1.3.4` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.12.0` | `0.12.12` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.3.0` |\n| [mypy](https://github.com/python/mypy) | `1.16.1` | `1.17.1` |\n\n\nUpdates `django` from 5.2.3 to 5.2.6\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/75c4403f07b8ad25893f7832dbe8fc6814b53b2d\"\u003e\u003ccode\u003e75c4403\u003c/code\u003e\u003c/a\u003e [5.2.x] Bumped version for 5.2.6 release.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/4c044fcc866ec226f612c475950b690b0139d243\"\u003e\u003ccode\u003e4c044fc\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed CVE-2025-57833 -- Protected FilteredRelation against SQL inject...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/e87ca3d6fa6fb12e06f9c755ecd3ebc3a528e02b\"\u003e\u003ccode\u003ee87ca3d\u003c/code\u003e\u003c/a\u003e [5.2.x] Made cosmetic edits to 5.2.6 release notes.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/ebec2c93230216f128184f5563215ad7760a7fc5\"\u003e\u003ccode\u003eebec2c9\u003c/code\u003e\u003c/a\u003e [5.2.x] Removed unused import in docs/ref/models/expressions.txt example.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/ace59cb83b87a4fdeab29424ea134e78de24fb27\"\u003e\u003ccode\u003eace59cb\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/36431\"\u003e#36431\u003c/a\u003e -- Returned tuples for multi-column ForeignObject in val...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/16a12a979989565f471ef1a2011bab59f8226f05\"\u003e\u003ccode\u003e16a12a9\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/35831\"\u003e#35831\u003c/a\u003e -- Documented the model form meta API in model form refe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/51753bc80925ecbe07d944dd22449d5ca867b9d4\"\u003e\u003ccode\u003e51753bc\u003c/code\u003e\u003c/a\u003e [5.2.x] Added stub release notes and release date for 5.2.6, 5.1.12, and 4.2.24.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/a4864551259f70e044043cf64b6925b816352156\"\u003e\u003ccode\u003ea486455\u003c/code\u003e\u003c/a\u003e [5.2.x] Corrected definition of \u0026quot;needsinfo\u0026quot; triage stage in contributing guide.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/f8e572e843b037dea9c79bcecd7b9626b2b4ceba\"\u003e\u003ccode\u003ef8e572e\u003c/code\u003e\u003c/a\u003e [5.2.x] Removed reference to flake8 file exclusions.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/9c9ed6fd7a8399113a18b979c8cd6f04cfbfa30b\"\u003e\u003ccode\u003e9c9ed6f\u003c/code\u003e\u003c/a\u003e [5.2.x] Refs \u003ca href=\"https://redirect.github.com/django/django/issues/35530\"\u003e#35530\u003c/a\u003e -- Corrected deprecation message in auth.alogin().\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/django/django/compare/5.2.3...5.2.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `psycopg` from 3.2.9 to 3.2.10\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psycopg/psycopg/blob/master/docs/news.rst\"\u003epsycopg's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e.. currentmodule:: psycopg\u003c/p\u003e\n\u003cp\u003e.. index::\nsingle: Release notes\nsingle: News\u003c/p\u003e\n\u003ch1\u003e\u003ccode\u003epsycopg\u003c/code\u003e release notes\u003c/h1\u003e\n\u003ch2\u003eFuture releases\u003c/h2\u003e\n\u003cp\u003ePsycopg 3.3.0 (unreleased)\n^^^^^^^^^^^^^^^^^^^^^^^^^^\u003c/p\u003e\n\u003cp\u003e.. rubric:: New top-level features\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd :ref:\u003ccode\u003etemplate strings queries \\\u0026lt;template-strings\u0026gt;\u003c/code\u003e (:ticket:\u003ccode\u003e[#1054](https://github.com/psycopg/psycopg/issues/1054)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eCursors are now iterators, not only iterables. This means you can call\n\u003ccode\u003enext(cur)\u003c/code\u003e to fetch the next row (:ticket:\u003ccode\u003e[#1064](https://github.com/psycopg/psycopg/issues/1064)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eCursor.results()\u003c/code\u003e to iterate over the result sets of the queries\nexecuted though \u003ccode\u003e~Cursor.executemany()\u003c/code\u003e or \u003ccode\u003e~Cursor.execute()\u003c/code\u003e\n(:ticket:\u003ccode\u003e[#1080](https://github.com/psycopg/psycopg/issues/1080)\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. rubric:: New libpq wrapper features\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003epq.PGconn.used_gssapi\u003c/code\u003e attribute and \u003ccode\u003eCapabilities.has_used_gssapi()\u003c/code\u003e\nfunction (:ticket:\u003ccode\u003e[#1138](https://github.com/psycopg/psycopg/issues/1138)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eConnectionInfo.full_protocol_version\u003c/code\u003e attribute,\n\u003ccode\u003eCapabilities.has_full_protocol_version()\u003c/code\u003e function (:ticket:\u003ccode\u003e[#1079](https://github.com/psycopg/psycopg/issues/1079)\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. rubric:: Other changes\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eDisable default GSSAPI preferential connection in the binary package\n(:ticket:\u003ccode\u003e[#1136](https://github.com/psycopg/psycopg/issues/1136)\u003c/code\u003e).\u003c/p\u003e\n\u003cp\u003e.. warning::\u003c/p\u003e\n\u003cp\u003ePlease explicitly set the gssencmode_ connection parameter or the\n:envvar:\u003ccode\u003ePGGSSENCMODE\u003c/code\u003e environment variable to interact reliably with the\nGSSAPI.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDrop support for Python 3.8 (:ticket:\u003ccode\u003e[#976](https://github.com/psycopg/psycopg/issues/976)\u003c/code\u003e) and 3.9 (:ticket:\u003ccode\u003e[#1056](https://github.com/psycopg/psycopg/issues/1056)\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eCurrent release\u003c/h2\u003e\n\u003cp\u003e.. _psycopg-3.2.10:\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/6cc2adfb45464f201bb7a15dd95189a7af16c26e\"\u003e\u003ccode\u003e6cc2adf\u003c/code\u003e\u003c/a\u003e chore: bump psycopg package version to 3.2.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/4c2fd3735c0670d63b92a7ad098fc0a0a2c7f52a\"\u003e\u003ccode\u003e4c2fd37\u003c/code\u003e\u003c/a\u003e Merge branch 'pg18-3.2' into maint-3.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/6ddad7b4bb7144b317e41ea57fcf3b720756fc8a\"\u003e\u003ccode\u003e6ddad7b\u003c/code\u003e\u003c/a\u003e docs: mention PostgreSQL v18 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/30bfdb954ea93cf92ce9a823f41ea6f67fd03d52\"\u003e\u003ccode\u003e30bfdb9\u003c/code\u003e\u003c/a\u003e ci: add PostgreSQL 18 to the test grid\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/57236b83b83cbfb588fcfcf70c1ca81c62d05a5b\"\u003e\u003ccode\u003e57236b8\u003c/code\u003e\u003c/a\u003e chore: add PostgreSQL 18 exceptions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/970a307b3d6d2b5125abf8337320aab97292f34f\"\u003e\u003ccode\u003e970a307\u003c/code\u003e\u003c/a\u003e fix: add ConnStatus.CONNECTION_AUTHENTICATING value\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/6903a92b5f9dc40e25f3a3d7ba62a4b4e739a638\"\u003e\u003ccode\u003e6903a92\u003c/code\u003e\u003c/a\u003e Merge branch 'fix-1091' into maint-3.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/43ad961c85703c0458c58eccc512ec1e1f2d9fae\"\u003e\u003ccode\u003e43ad961\u003c/code\u003e\u003c/a\u003e docs: document the changes to notifies generator\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/eac8115523d1b569e279eaec5fc31d76da25ef55\"\u003e\u003ccode\u003eeac8115\u003c/code\u003e\u003c/a\u003e fix: raise a warning when notifies generator and handlers are used together\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg/commit/5cc99d65f05844413730cdada00840bf9739e293\"\u003e\u003ccode\u003e5cc99d6\u003c/code\u003e\u003c/a\u003e fix: collect notifies only if no handler was registered\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psycopg/psycopg/compare/3.2.9...3.2.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `govuk-frontend-jinja` from 3.6.0 to 3.7.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/releases\"\u003egovuk-frontend-jinja's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.7.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for \u003ca href=\"https://github.com/alphagov/govuk-frontend/releases/tag/v5.11.1\"\u003eGOV.UK Frontend v5.11.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/blob/main/CHANGELOG.md\"\u003egovuk-frontend-jinja's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/releases/tag/3.7.0\"\u003e3.7.0\u003c/a\u003e - 14/08/2025\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for \u003ca href=\"https://github.com/alphagov/govuk-frontend/releases/tag/v5.11.1\"\u003eGOV.UK Frontend v5.11.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/60365bd8451c8dcd434f4087dbb013460b9332d2\"\u003e\u003ccode\u003e60365bd\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/LandRegistry/govuk-frontend-jinja/issues/99\"\u003e#99\u003c/a\u003e from LandRegistry/govuk-frontend-511\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/0e4e874123d1e9bad9a7b179b1a99eb3336ed076\"\u003e\u003ccode\u003e0e4e874\u003c/code\u003e\u003c/a\u003e logo tweak\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/79cebabe0b4f93e38eb4a171112157b8a791a3a8\"\u003e\u003ccode\u003e79cebab\u003c/code\u003e\u003c/a\u003e collapse on mobile\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/debcb30a2d394e6b96a36c8274c9de9c9e6c75df\"\u003e\u003ccode\u003edebcb30\u003c/code\u003e\u003c/a\u003e dependency upgrades\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/commit/b939cd53a3a19cada054c497868217cb9de0203a\"\u003e\u003ccode\u003eb939cd5\u003c/code\u003e\u003c/a\u003e bump version numbers\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/LandRegistry/govuk-frontend-jinja/compare/3.6.0...3.7.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `boto3` from 1.38.39 to 1.40.25\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/c1c60440ef00f399fbae54d6ad0b9a211d33dcb6\"\u003e\u003ccode\u003ec1c6044\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.25'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/faf7045f326ab280e80062a07f483d57f51a36a7\"\u003e\u003ccode\u003efaf7045\u003c/code\u003e\u003c/a\u003e Bumping version to 1.40.25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/041cf03a0d7186a280b29b1526bc79ca9451610c\"\u003e\u003ccode\u003e041cf03\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/d3129b62a4afde9fd5072d9dfa8233dcd1000fa7\"\u003e\u003ccode\u003ed3129b6\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.24'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/f1964795b48920af0604a95712788fcd03ac16ca\"\u003e\u003ccode\u003ef196479\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.24' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/c503159dfb5644efeb3198ffc1ad11eee0c6ecc7\"\u003e\u003ccode\u003ec503159\u003c/code\u003e\u003c/a\u003e Bumping version to 1.40.24\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/95fd165eca88bb9ae321e2d737d20b33e9ec9976\"\u003e\u003ccode\u003e95fd165\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/dd74a1e97c450cf7670cabf3a9516b5127bcffb5\"\u003e\u003ccode\u003edd74a1e\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 3.29.0 to 3.30.0 (\u003ca href=\"https://redirect.github.com/boto/boto3/issues/4605\"\u003e#4605\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/182b1adfe02c2fab6fad473afecf437b73af898c\"\u003e\u003ccode\u003e182b1ad\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.23'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/244d2f2f6789508a5456745406e1b2f40025d60f\"\u003e\u003ccode\u003e244d2f2\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.23' into develop\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.38.39...1.40.25\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `datamodel-code-generator` from 0.31.1 to 0.33.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/releases\"\u003edatamodel-code-generator's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.33.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUse Pytest \u003ccode\u003etmp_path\u003c/code\u003e fixture instead of \u003ccode\u003eTemporaryDirectory\u003c/code\u003e by \u003ca href=\"https://github.com/ilovelinux\"\u003e\u003ccode\u003e@​ilovelinux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2463\"\u003ekoxudaxi/datamodel-code-generator#2463\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRevert default date-time behaviour to respect OpenAPI/JSON Schema specifications by \u003ca href=\"https://github.com/mueslo\"\u003e\u003ccode\u003e@​mueslo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2442\"\u003ekoxudaxi/datamodel-code-generator#2442\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid mixing up configurations of different objects with the same name by \u003ca href=\"https://github.com/ilovelinux\"\u003e\u003ccode\u003e@​ilovelinux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2461\"\u003ekoxudaxi/datamodel-code-generator#2461\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix Pydantic \u003ccode\u003e@model_validator()\u003c/code\u003e usage  for Pydantic 2.12 by \u003ca href=\"https://github.com/ilovelinux\"\u003e\u003ccode\u003e@​ilovelinux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2472\"\u003ekoxudaxi/datamodel-code-generator#2472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRun the test suite daily to check breaking changes by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2479\"\u003ekoxudaxi/datamodel-code-generator#2479\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAutomatically infer CSV file type by \u003ca href=\"https://github.com/ilovelinux\"\u003e\u003ccode\u003e@​ilovelinux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2467\"\u003ekoxudaxi/datamodel-code-generator#2467\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid collapsing models when referencing a forwarding reference by \u003ca href=\"https://github.com/ilovelinux\"\u003e\u003ccode\u003e@​ilovelinux\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2465\"\u003ekoxudaxi/datamodel-code-generator#2465\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mueslo\"\u003e\u003ccode\u003e@​mueslo\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2442\"\u003ekoxudaxi/datamodel-code-generator#2442\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.32.0...0.33.0\"\u003ehttps://github.com/koxudaxi/datamodel-code-generator/compare/0.32.0...0.33.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.32.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003emodify __typename field to honor \u003ccode\u003e--use-default-kwarg\u003c/code\u003e flag by \u003ca href=\"https://github.com/rpmcginty\"\u003e\u003ccode\u003e@​rpmcginty\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2420\"\u003ekoxudaxi/datamodel-code-generator#2420\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typo in variable name by \u003ca href=\"https://github.com/eltoder\"\u003e\u003ccode\u003e@​eltoder\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2439\"\u003ekoxudaxi/datamodel-code-generator#2439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSend use_non_positive_negative_number_constrained_types to the data type manager by \u003ca href=\"https://github.com/torarvid\"\u003e\u003ccode\u003e@​torarvid\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2425\"\u003ekoxudaxi/datamodel-code-generator#2425\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow parsing non-string lists for required fields by \u003ca href=\"https://github.com/HeroGamers\"\u003e\u003ccode\u003e@​HeroGamers\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2446\"\u003ekoxudaxi/datamodel-code-generator#2446\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow including path parameters in generated models by \u003ca href=\"https://github.com/MrLoh\"\u003e\u003ccode\u003e@​MrLoh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2445\"\u003ekoxudaxi/datamodel-code-generator#2445\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePassing in treat_dot_as_module bool to Enum init function by \u003ca href=\"https://github.com/LukeAtThat\"\u003e\u003ccode\u003e@​LukeAtThat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2456\"\u003ekoxudaxi/datamodel-code-generator#2456\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: correctly handle multiline comments in Unions by \u003ca href=\"https://github.com/anor4k\"\u003e\u003ccode\u003e@​anor4k\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2454\"\u003ekoxudaxi/datamodel-code-generator#2454\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReturn Parameter and RequestBody DataTypesare  by \u003ca href=\"https://github.com/MrLoh\"\u003e\u003ccode\u003e@​MrLoh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2444\"\u003ekoxudaxi/datamodel-code-generator#2444\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rpmcginty\"\u003e\u003ccode\u003e@​rpmcginty\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2420\"\u003ekoxudaxi/datamodel-code-generator#2420\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eltoder\"\u003e\u003ccode\u003e@​eltoder\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2439\"\u003ekoxudaxi/datamodel-code-generator#2439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/torarvid\"\u003e\u003ccode\u003e@​torarvid\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2425\"\u003ekoxudaxi/datamodel-code-generator#2425\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/HeroGamers\"\u003e\u003ccode\u003e@​HeroGamers\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2446\"\u003ekoxudaxi/datamodel-code-generator#2446\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MrLoh\"\u003e\u003ccode\u003e@​MrLoh\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2445\"\u003ekoxudaxi/datamodel-code-generator#2445\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LukeAtThat\"\u003e\u003ccode\u003e@​LukeAtThat\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2456\"\u003ekoxudaxi/datamodel-code-generator#2456\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anor4k\"\u003e\u003ccode\u003e@​anor4k\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2454\"\u003ekoxudaxi/datamodel-code-generator#2454\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.31.2...0.32.0\"\u003ehttps://github.com/koxudaxi/datamodel-code-generator/compare/0.31.2...0.32.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.31.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: prevent code injection through filename in generated headers by \u003ca href=\"https://github.com/koxudaxi\"\u003e\u003ccode\u003e@​koxudaxi\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2428\"\u003ekoxudaxi/datamodel-code-generator#2428\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.31.2\"\u003ehttps://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.31.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/33f13cf31c61aa4be871add0d8dd928b28b8cfd4\"\u003e\u003ccode\u003e33f13cf\u003c/code\u003e\u003c/a\u003e Avoid collapsing models when referencing a forwarding reference (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2465\"\u003e#2465\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/400b9be526c2e466d8e82580c55ab68e89c28564\"\u003e\u003ccode\u003e400b9be\u003c/code\u003e\u003c/a\u003e Automatically infer CSV file type (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2467\"\u003e#2467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/819516d754e6f5c784a99d91cb8b5b90764707ac\"\u003e\u003ccode\u003e819516d\u003c/code\u003e\u003c/a\u003e Run the test suite daily to check breaking changes (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2479\"\u003e#2479\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/e9ffb9fdf8ac55dc7a7306674c0430adfc73b92f\"\u003e\u003ccode\u003ee9ffb9f\u003c/code\u003e\u003c/a\u003e Fix Pydantic \u003ccode\u003e@model_validator()\u003c/code\u003e usage  for Pydantic 2.12 (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2472\"\u003e#2472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/10da583f64568a1fdac426c71688dd604d3ff51d\"\u003e\u003ccode\u003e10da583\u003c/code\u003e\u003c/a\u003e Avoid mixing up configurations of different objects with the same name (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2461\"\u003e#2461\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/e30a46fac3f94cd493cb75018c496dd88119fbe5\"\u003e\u003ccode\u003ee30a46f\u003c/code\u003e\u003c/a\u003e Revert default date-time behaviour to respect OpenAPI/JSON Schema specificati...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/4d5019a7f77f4a3e74aabf2b4174c5487876f270\"\u003e\u003ccode\u003e4d5019a\u003c/code\u003e\u003c/a\u003e Use Pytest \u003ccode\u003etmp_path\u003c/code\u003e fixture instead of \u003ccode\u003eTemporaryDirectory\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2463\"\u003e#2463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/0070c1c13e5c61c705c9679db7255db1b866b18c\"\u003e\u003ccode\u003e0070c1c\u003c/code\u003e\u003c/a\u003e Return Parameter and RequestBody DataTypesare  (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2444\"\u003e#2444\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/d32cef106b47f2452fe19af0063738b1b360d9af\"\u003e\u003ccode\u003ed32cef1\u003c/code\u003e\u003c/a\u003e fix: correctly handle multiline comments in Unions, and add a test case (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2454\"\u003e#2454\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/a833f6f8b824badfa1ee43131c74c49ece99de43\"\u003e\u003ccode\u003ea833f6f\u003c/code\u003e\u003c/a\u003e Passing in treat_dot_as_module bool to Enum init function (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2456\"\u003e#2456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.33.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `django-types` from 0.21.0 to 0.22.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sbdchd/django-types/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentry-sdk` from 2.30.0 to 2.37.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/releases\"\u003esentry-sdk's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.37.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eNew Integration (BETA):\u003c/strong\u003e Add support for \u003ccode\u003elanggraph\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4727\"\u003e#4727\u003c/a\u003e) by \u003ca href=\"https://github.com/shellmayr\"\u003e\u003ccode\u003e@​shellmayr\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe can now instrument AI agents that are created with \u003ca href=\"https://www.langchain.com/langgraph\"\u003eLangGraph\u003c/a\u003e out of the box.\u003c/p\u003e\n\u003cp\u003eFor more information see the \u003ca href=\"https://docs.sentry.io/platforms/python/integrations/langgraph/\"\u003eLangGraph integrations documentation\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAI Agents: Improve rendering of input and output messages in AI agents integrations. (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4750\"\u003e#4750\u003c/a\u003e) by \u003ca href=\"https://github.com/shellmayr\"\u003e\u003ccode\u003e@​shellmayr\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAI Agents: Format span attributes in AI integrations (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4762\"\u003e#4762\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eCI: Fix celery (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4765\"\u003e#4765\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Move asyncpg under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4757\"\u003e#4757\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Move beam under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4759\"\u003e#4759\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Move boto3 tests under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4761\"\u003e#4761\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Remove openai pin and update tox (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4748\"\u003e#4748\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.36.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eNew integration:\u003c/strong\u003e Unraisable exceptions (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4733\"\u003e#4733\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eAdd the unraisable exception integration to your sentry_sdk.init call:\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.unraisablehook import UnraisablehookIntegration\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\ndsn=\u0026quot;...\u0026quot;,\u003cbr /\u003e\nintegrations=[\u003cbr /\u003e\nUnraisablehookIntegration(),\u003cbr /\u003e\n]\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003emeta: Update instructions on release process (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4755\"\u003e#4755\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etests: Move arq under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4739\"\u003e#4739\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etests: Support dashes in test suite names (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4740\"\u003e#4740\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDon't fail if there is no \u003ccode\u003e_context_manager_state\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4698\"\u003e#4698\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWrap span restoration in \u003ccode\u003e__exit__\u003c/code\u003e in \u003ccode\u003ecapture_internal_exceptions\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4719\"\u003e#4719\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Constrain types of ai_track decorator (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4745\"\u003e#4745\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eopenai_agents\u003c/code\u003e in CI (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4742\"\u003e#4742\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove old langchain test suites from ignore list (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4737\"\u003e#4737\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etests: Trigger Pytest failure when an unraisable exception occurs (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4738\"\u003e#4738\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(openai): Avoid double exit causing an unraisable exception (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4736\"\u003e#4736\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etests: Move langchain under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4734\"\u003e#4734\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etoxgen: Add variants \u0026amp; move OpenAI under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4730\"\u003e#4730\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate tox.ini (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4731\"\u003e#4731\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.35.2\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md\"\u003esentry-sdk's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.37.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eNew Integration (BETA):\u003c/strong\u003e Add support for \u003ccode\u003elanggraph\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4727\"\u003e#4727\u003c/a\u003e) by \u003ca href=\"https://github.com/shellmayr\"\u003e\u003ccode\u003e@​shellmayr\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe can now instrument AI agents that are created with \u003ca href=\"https://www.langchain.com/langgraph\"\u003eLangGraph\u003c/a\u003e out of the box.\u003c/p\u003e\n\u003cp\u003eFor more information see the \u003ca href=\"https://docs.sentry.io/platforms/python/integrations/langgraph/\"\u003eLangGraph integrations documentation\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAI Agents: Improve rendering of input and output messages in AI agents integrations. (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4750\"\u003e#4750\u003c/a\u003e) by \u003ca href=\"https://github.com/shellmayr\"\u003e\u003ccode\u003e@​shellmayr\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAI Agents: Format span attributes in AI integrations (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4762\"\u003e#4762\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eCI: Fix celery (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4765\"\u003e#4765\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Move asyncpg under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4757\"\u003e#4757\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Move beam under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4759\"\u003e#4759\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Move boto3 tests under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4761\"\u003e#4761\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Remove openai pin and update tox (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4748\"\u003e#4748\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.36.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eNew integration:\u003c/strong\u003e Unraisable exceptions (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4733\"\u003e#4733\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eAdd the unraisable exception integration to your sentry_sdk.init call:\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.unraisablehook import UnraisablehookIntegration\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\ndsn=\u0026quot;...\u0026quot;,\u003cbr /\u003e\nintegrations=[\u003cbr /\u003e\nUnraisablehookIntegration(),\u003cbr /\u003e\n]\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003emeta: Update instructions on release process (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4755\"\u003e#4755\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etests: Move arq under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4739\"\u003e#4739\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etests: Support dashes in test suite names (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4740\"\u003e#4740\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDon't fail if there is no \u003ccode\u003e_context_manager_state\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4698\"\u003e#4698\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWrap span restoration in \u003ccode\u003e__exit__\u003c/code\u003e in \u003ccode\u003ecapture_internal_exceptions\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4719\"\u003e#4719\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Constrain types of ai_track decorator (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4745\"\u003e#4745\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eopenai_agents\u003c/code\u003e in CI (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4742\"\u003e#4742\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove old langchain test suites from ignore list (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4737\"\u003e#4737\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etests: Trigger Pytest failure when an unraisable exception occurs (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4738\"\u003e#4738\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(openai): Avoid double exit causing an unraisable exception (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4736\"\u003e#4736\u003c/a\u003e) by \u003ca href=\"https://github.com/alexander-alderman-webb\"\u003e\u003ccode\u003e@​alexander-alderman-webb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etests: Move langchain under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4734\"\u003e#4734\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etoxgen: Add variants \u0026amp; move OpenAI under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4730\"\u003e#4730\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate tox.ini (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4731\"\u003e#4731\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.35.2\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/75ef769d494c45e6f8b133da22fe75dcf9da713e\"\u003e\u003ccode\u003e75ef769\u003c/code\u003e\u003c/a\u003e Updated changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/f78552480e894b7a5a152530c589d9677f81bc14\"\u003e\u003ccode\u003ef785524\u003c/code\u003e\u003c/a\u003e release: 2.37.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/dee6de1579ba37acb46af622e2892d862e9c70ef\"\u003e\u003ccode\u003edee6de1\u003c/code\u003e\u003c/a\u003e feat(agents): improve instrumentation of input messages (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4750\"\u003e#4750\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/ad3c435398d78949eda68dff66ef8eb8b4928679\"\u003e\u003ccode\u003ead3c435\u003c/code\u003e\u003c/a\u003e tests: Move boto3 tests under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4761\"\u003e#4761\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/0c0a8d8497647e40ae8b285f5a53069394b084ad\"\u003e\u003ccode\u003e0c0a8d8\u003c/code\u003e\u003c/a\u003e ci: Fix celery (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4765\"\u003e#4765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/b50f7e4a68c69caccdf29bc6b645f51c215e7ada\"\u003e\u003ccode\u003eb50f7e4\u003c/code\u003e\u003c/a\u003e Format span attributes in AI integrations (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4762\"\u003e#4762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/9711b3be884263bb34f1ae5a0f719cb9acb4b0ca\"\u003e\u003ccode\u003e9711b3b\u003c/code\u003e\u003c/a\u003e tests: Move asyncpg under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4757\"\u003e#4757\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/58a9827e1a5bb207a34651409a303bc21890fb66\"\u003e\u003ccode\u003e58a9827\u003c/code\u003e\u003c/a\u003e feat: Add LangGraph integration (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4727\"\u003e#4727\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/c378c2d8d9032a50f4371df20a1929756342b245\"\u003e\u003ccode\u003ec378c2d\u003c/code\u003e\u003c/a\u003e tests: Move beam under toxgen (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/ff9b1c37f2ccbdad39e1950dab09546b29e2d247\"\u003e\u003ccode\u003eff9b1c3\u003c/code\u003e\u003c/a\u003e tests: Remove openai pin and update tox (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4748\"\u003e#4748\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getsentry/sentry-python/compare/2.30.0...2.37.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `django-rq` from 3.0.1 to 3.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rq/django-rq/releases\"\u003edjango-rq's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e/metrics\u003c/code\u003e endpoint to expose RQ metrics in Prometheus format. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded token based authentication for the \u003ccode\u003e/metrics\u003c/code\u003e and \u003ccode\u003e/stats.json\u003c/code\u003e endpoints. Thanks \u003ca href=\"https://github.com/RasmusThing\"\u003e\u003ccode\u003e@​RasmusThing\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eMigrated Django-RQ to use Python's modern packaging standard. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eFixed an issue with setting \u003ccode\u003eresult_ttl\u003c/code\u003e via job decorators. Thanks \u003ca href=\"https://github.com/Sir-heed\"\u003e\u003ccode\u003e@​Sir-heed\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVarious admin page improvements. Thanks \u003ca href=\"https://github.com/selwin\"\u003e\u003ccode\u003e@​selwin\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/DhavalGojiya\"\u003e\u003ccode\u003e@​DhavalGojiya\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rq/django-rq/blob/master/CHANGELOG.md\"\u003edjango-rq's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003eVersion 3.1 (2025-08-02)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e/metrics\u003c/code\u003e endpoint to expose RQ metrics in Prometheus format. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded token based authentication for the \u003ccode\u003e/metrics\u003c/code\u003e and \u003ccode\u003e/stats.json\u003c/code\u003e endpoints. Thanks \u003ca href=\"https://github.com/RasmusThing\"\u003e\u003ccode\u003e@​RasmusThing\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eMigrated Django-RQ to use Python's modern packaging standard. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eFixed an issue with setting \u003ccode\u003eresult_ttl\u003c/code\u003e via job decorators. Thanks \u003ca href=\"https://github.com/Sir-heed\"\u003e\u003ccode\u003e@​Sir-heed\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVarious admin page improvements. Thanks \u003ca href=\"https://github.com/selwin\"\u003e\u003ccode\u003e@​selwin\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/DhavalGojiya\"\u003e\u003ccode\u003e@​DhavalGojiya\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/571082b7849942448ba7f34c4a0a3b88fbebaade\"\u003e\u003ccode\u003e571082b\u003c/code\u003e\u003c/a\u003e Bump version to 3.1 in pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/edd22bd2f5042feecaee8a4034784a930856137a\"\u003e\u003ccode\u003eedd22bd\u003c/code\u003e\u003c/a\u003e Bump version to 3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/f9fadb81699347bf3369053e3cd619226ca2c75d\"\u003e\u003ccode\u003ef9fadb8\u003c/code\u003e\u003c/a\u003e Change url token to header auth and add to /metrics/ aswell (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/718\"\u003e#718\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/fc9a6dee60c05cdd34530e9ce002cda982c65f71\"\u003e\u003ccode\u003efc9a6de\u003c/code\u003e\u003c/a\u003e Update packaging to use modern packaging with a pyproject.toml (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/715\"\u003e#715\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/b1e6e87d0f6da4dcc29ec5745fb4a3665bde10ad\"\u003e\u003ccode\u003eb1e6e87\u003c/code\u003e\u003c/a\u003e Update README.rst\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/429933202673712ba55d6ad49672b73bece04dfc\"\u003e\u003ccode\u003e4299332\u003c/code\u003e\u003c/a\u003e fix job decorator default ttl (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/714\"\u003e#714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/38143405218e0387ca2f4fc2cd48a0d0e7382370\"\u003e\u003ccode\u003e3814340\u003c/code\u003e\u003c/a\u003e Added sorting for deferred_jobs and scheduled_jobs views (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/713\"\u003e#713\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/399c18f3e96ea710deabe27ad64829c46f01583b\"\u003e\u003ccode\u003e399c18f\u003c/code\u003e\u003c/a\u003e fix pyright check (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/707\"\u003e#707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/ec02320dfa342a880278f6b39685047a9cccc9f4\"\u003e\u003ccode\u003eec02320\u003c/code\u003e\u003c/a\u003e [FIX] -- job status display in scheduler listing page template. (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/694\"\u003e#694\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/507b985dd65d67cbce73a1b70d0d1bcb92fc68ab\"\u003e\u003ccode\u003e507b985\u003c/code\u003e\u003c/a\u003e Bump requests from 2.32.0 to 2.32.4 in /integration_test (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/711\"\u003e#711\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rq/django-rq/compare/v3.0.1...v3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `django-simple-history` from 3.8.0 to 3.10.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/django-commons/django-simple-history/releases\"\u003edjango-simple-history's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 3.10.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/blob/3.10.1/CHANGES.rst#3101-2025-06-20\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed changed log syntax to support PyPI packaging. by \u003ca href=\"https://github.com/tim-schilling\"\u003e\u003ccode\u003e@​tim-schilling\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1499\"\u003edjango-commons/django-simple-history#1499\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.10.0...3.10.1\"\u003ehttps://github.com/django-commons/django-simple-history/compare/3.10.0...3.10.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease 3.10.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/jazzband/django-simple-history/blob/3.10.0/CHANGES.rst#3100-2025-06-20\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExclude tests from wheels by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1478\"\u003edjango-commons/django-simple-history#1478\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSwitch repo to Django Commons by \u003ca href=\"https://github.com/tim-schilling\"\u003e\u003ccode\u003e@​tim-schilling\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1429\"\u003edjango-commons/django-simple-history#1429\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for release 3.10.0 by \u003ca href=\"https://github.com/ddabble\"\u003e\u003ccode\u003e@​ddabble\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1498\"\u003edjango-commons/django-simple-history#1498\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1478\"\u003edjango-commons/django-simple-history#1478\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.9.0...3.10.0\"\u003ehttps://github.com/django-commons/django-simple-history/compare/3.9.0...3.10.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease 3.9.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/jazzband/django-simple-history/blob/3.9.0/CHANGES.rst#390-2025-01-26\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove the deprecated \u003ccode\u003esimple_history_admin_list.display_list()\u003c/code\u003e + \u003cstrong\u003eRelease 3.9.0\u003c/strong\u003e by \u003ca href=\"https://github.com/ddabble\"\u003e\u003ccode\u003e@​ddabble\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jazzband/django-simple-history/pull/1444\"\u003ejazzband/django-simple-history#1444\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jazzband/django-simple-history/compare/3.8.0...3.9.0\"\u003ehttps://github.com/jazzband/django-simple-history/compare/3.8.0...3.9.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/django-commons/django-simple-history/blob/master/CHANGES.rst\"\u003edjango-simple-history's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.10.1 (2025-06-20)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed changelog syntax to support PyPI packaging (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1499\"\u003egh-1499\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.0 (2025-06-20)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTests are no longer bundled in released wheels (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1478\"\u003egh-1478\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMove repository to the Django Commons organization (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1391\"\u003egh-1391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.9.0 (2025-01-26)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved the \u003ccode\u003esimple_history_admin_list.display_list()\u003c/code\u003e template tag that was\ndeprecated in version 3.6.0 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1444\"\u003egh-1444\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/dc569842772578558fe4a84e5937d6fc31dd735d\"\u003e\u003ccode\u003edc56984\u003c/code\u003e\u003c/a\u003e Fixed changed log syntax to support PyPI packaging. (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1499\"\u003e#1499\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/58dbb06e68f821c99128b83619a856444319fa04\"\u003e\u003ccode\u003e58dbb06\u003c/code\u003e\u003c/a\u003e Prepare for release 3.10.0 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1498\"\u003e#1498\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/bc9909f32e33f8f33dccd28934994dffb9c4f459\"\u003e\u003ccode\u003ebc9909f\u003c/code\u003e\u003c/a\u003e Switch repo to Django Commons (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1429\"\u003e#1429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/9fb7c5c30b43917eaf98ee5ef266705bd191a825\"\u003e\u003ccode\u003e9fb7c5c\u003c/code\u003e\u003c/a\u003e Bump codecov/codecov-action from 3 to 5 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1425\"\u003e#1425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/7d6b50bf6f4ccbddd75bc3685dc9cf04240176d2\"\u003e\u003ccode\u003e7d6b50b\u003c/code\u003e\u003c/a\u003e Bump coverage from 7.8.0 to 7.9.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1495\"\u003e#1495\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/8bb61757cb9563c2fd0c17e1fa22c53013c311e3\"\u003e\u003ccode\u003e8bb6175\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1482\"\u003e#1482\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/010928f2fc52acd68df41e61686ed233171530e8\"\u003e\u003ccode\u003e010928f\u003c/code\u003e\u003c/a\u003e Bump tox from 4.25.0 to 4.26.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1485\"\u003e#1485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/5721e31055b0c952daf3601b6c35bcde78cab31b\"\u003e\u003ccode\u003e5721e31\u003c/code\u003e\u003c/a\u003e Bump psycopg[binary] from 3.2.6 to 3.2.9 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1484\"\u003e#1484\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/810149708ad11a284cd581972db46142120f824a\"\u003e\u003ccode\u003e8101497\u003c/code\u003e\u003c/a\u003e Bump flake8 from 7.1.2 to 7.2.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1474\"\u003e#1474\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/626ece4082c4a7f87d14566e7a3c568043233ac5\"\u003e\u003ccode\u003e626ece4\u003c/code\u003e\u003c/a\u003e Bump coverage from 7.6.12 to 7.8.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.8.0...3.10.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` from 2.3.0 to 2.3.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pandas-dev/pandas/releases\"\u003epandas's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePandas 2.3.2\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.2.\nThis release includes some improvements and fixes to the future string data type (preview feature for the upcoming pandas 3.0). We recommend that all users upgrade to this version.\u003c/p\u003e\n\u003cp\u003eSee the \u003ca href=\"https://pandas.pydata.org/pandas-docs/version/2.3/whatsnew/v2.3.2.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.2 supports Python 3.9 and higher.\u003c/p\u003e\n\u003cp\u003eThe release will be available on the conda-forge channel:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install pandas --channel conda-forge\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr via PyPI:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython3 -m pip install --upgrade pandas\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003ePlease report any issues with the release on the \u003ca href=\"https://github.com/pandas-dev/pandas/issues\"\u003epandas issue tracker\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThanks to all the contributors who made this release possible.\u003c/p\u003e\n\u003ch2\u003ePandas 2.3.1\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.1.\nThis release includes some improvements and fixes to the future string data type (preview feature for the upcoming pandas 3.0). We recommend that all users upgrade to this version.\u003c/p\u003e\n\u003cp\u003eSee the \u003ca href=\"https://pandas.pydata.org/pandas-docs/version/2.3.1/whatsnew/v2.3.1.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.1 supports Python 3.9 and higher.\u003c/p\u003e\n\u003cp\u003eThe release will be available on the conda-forge channel:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install pandas --channel conda-forge\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr via PyPI:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython3 -m pip install --upgrade pandas\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003ePlease report any issues with the release on the \u003ca href=\"https://github.com/pandas-dev/pandas/issues\"\u003epandas issue tracker\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThanks to all the contributors who made this release possible.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/4665c10899bc413b639194f6fb8665a5c70f7db5\"\u003e\u003ccode\u003e4665c10\u003c/code\u003e\u003c/a\u003e RLS: 2.3.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/633c68b91808441eba7d73b630a82b713ba19da8\"\u003e\u003ccode\u003e633c68b\u003c/code\u003e\u003c/a\u003e DOC: fix syntax in whatsnew file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/456ad4702cb017aab36e2d09a4029b1b085198f5\"\u003e\u003ccode\u003e456ad47\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62152\"\u003e#62152\u003c/a\u003e on branch 2.3.x (DOC: prepare 2.3.2 whatsnew notes for rel...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/6cae6444444ed7943ceffbd5990cd8249dd5b47c\"\u003e\u003ccode\u003e6cae644\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] DOC: move and reword whatsnew note for replace fix (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/57865\"\u003eGH-57865\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/a91c50a58c372cddf104fd60241c7284bbf8fc80\"\u003e\u003ccode\u003ea91c50a\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62147\"\u003e#62147\u003c/a\u003e on branch 2.3.x (DOC: correct and rewrite string migration...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/f7a2cfdf2ed08016167ae6c5e577c54949a849b2\"\u003e\u003ccode\u003ef7a2cfd\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG/DEPR: logical operation with bool and string (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/61995\"\u003e#61995\u003c/a\u003e) (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/7981a43db4339826a3ce5020e9b1b931e604e5bd\"\u003e\u003ccode\u003e7981a43\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62124\"\u003e#62124\u003c/a\u003e on branch 2.3.x (CI/BLD: don't use strict xfail for '%m.%Y...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/fafbcbd03d1721830f4df8255abdab341db2a583\"\u003e\u003ccode\u003efafbcbd\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG(CoW): also raise for chained assignment for .at / .iat (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/3ac64a714886d917ca24ba637a85c4aaf563fc1b\"\u003e\u003ccode\u003e3ac64a7\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: Fix Series.str.contains with compiled regex on Arrow st...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/1f2dc4fd8a2503773b6f90cb5e8cc5c3172c3c11\"\u003e\u003ccode\u003e1f2dc4f\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: fix Series.str.fullmatch() and Series.str.match() with ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pandas-dev/pandas/compare/v2.3.0...v2.3.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `moto` from 5.1.6 to 5.1.12\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getmoto/moto/blob/master/CHANGELOG.md\"\u003emoto's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.1.12\u003c/h2\u003e\n\u003cp\u003eDocker Digest for 5.1.12: \u003cem\u003esha256:e1cf8b624019e6eba25cb5b37efdf95a463fc24691978540a1c7008b7d02fda0\u003c/em\u003e\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGeneral:\n    * Removed support for OpsWorks, now that AWS has also deprecated this service.\n      https://docs.aws.amazon.com/opsworks/latest/userguide/stacks-eol-faqs.html\n\u003cp\u003eNew Methods:\n* Glue:\n* batch_get_workflows()\n* create_workflow()\n* delete_workflow()\n* get_workflow()\n* get_workflow_run()\n* get_workflow_runs()\n* get_workflow_run_properties()\n* list_workflows()\n* put_workflow_run_properties()\n* start_workflow_run()\n* stop_workflow_run()\n* update_workflow()\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e* IOT:\n    * add_thing_to_billing_group()\n    * create_billing_group()\n    * delete_billing_group()\n    * describe_billing_group()\n    * list_billing_groups()\n    * list_things_in_billing_group()\n    * remove_thing_from_billing_group()\n    * update_billing_group()\n\n* SES:\n    * clone_receipt_rule_set()\n\n* SSM:\n    * create_data_source()\n    * deregister_patch_baseline_for_patch_group()\n    * delete_data_source()\n    * describe_data_source()\n    * get_patch_baseline_for_patch_group()\n    * list_data_sources()\n    * list_tags_for_resource()\n    * register_patch_baseline_for_patch_group()\n    * update_data_source()\n    * tag_resource()\n    * untag_resource()\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eMiscellaneous:\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/981d6417b828412406eeba70045cb6be98612ec3\"\u003e\u003ccode\u003e981d641\u003c/code\u003e\u003c/a\u003e Pre-Release: Up Version Number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/9def14736ea0d75dcfdeebdf0a5fc8046f64566d\"\u003e\u003ccode\u003e9def147\u003c/code\u003e\u003c/a\u003e Admin: Prep release 5.1.12 (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9270\"\u003e#9270\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/ea94b4054296549662f61979cc69e859574a3272\"\u003e\u003ccode\u003eea94b40\u003c/code\u003e\u003c/a\u003e chore: update SSM default parameters (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9269\"\u003e#9269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/8ce36f7b8565f607fb16da9a70a59599b2d29b9d\"\u003e\u003ccode\u003e8ce36f7\u003c/code\u003e\u003c/a\u003e chore: update EMR Instance Types (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9266\"\u003e#9266\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/2d358ba575948a086c0f1078679db893d127e0e3\"\u003e\u003ccode\u003e2d358ba\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Types (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9268\"\u003e#9268\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/e35b280819341bd4e0c5a51d0c2132527717b94d\"\u003e\u003ccode\u003ee35b280\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Offerings (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9267\"\u003e#9267\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/6c16d2d0aef0facc991997cd4abd2621959bafb2\"\u003e\u003ccode\u003e6c16d2d\u003c/code\u003e\u003c/a\u003e [DirectConnect] Updating ARNs to match AWS (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9265\"\u003e#9265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/0e24869fc946ce3e907e80bdc6096eac586d38c6\"\u003e\u003ccode\u003e0e24869\u003c/code\u003e\u003c/a\u003e SSM: register/deregister/get patch group (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9259\"\u003e#9259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/a82fc4950da62a87c1fa2d8ed543a0c327c298cd\"\u003e\u003ccode\u003ea82fc49\u003c/code\u003e\u003c/a\u003e SES: Enhancements/Validations around CreateReceiptRule action (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9249\"\u003e#9249\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/020c0f7b7d63394f7c636b86512d3ecc8df4a506\"\u003e\u003ccode\u003e020c0f7\u003c/code\u003e\u003c/a\u003e [EC2] Adds attributes to elastic network interface association response (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9261\"\u003e#9261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getmoto/moto/compare/5.1.6...5.1.12\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `freezegun` from 1.5.2 to 1.5.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spulec/freezegun/blob/master/CHANGELOG\"\u003efreezegun's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.5.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAllow parametrized arguments called 'func' (Broken in 1.5.4)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Ability to yield fixtures (broken in 1.5.3)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix compatibility with pytest 8.4.0 when using fixtures\u003c/li\u003e\n\u003cli\u003eAdd (back) class-decorator overload to guarantee Pytype understands it\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/c9bf52c5aa12ea1b5b8647a136a92504ea071f2f\"\u003e\u003ccode\u003ec9bf52c\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/0f2bd7ed8b420da73372f4cbb0207b777caa66e9\"\u003e\u003ccode\u003e0f2bd7e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/582\"\u003e#582\u003c/a\u003e from spulec/fixture-called-func\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/a6080557cbcbe4891843934c1334430bb1c5ead7\"\u003e\u003ccode\u003ea608055\u003c/code\u003e\u003c/a\u003e Allow parametrized arguments with name 'func'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/2bb47113a5f9f290d26630c92732e58f49557179\"\u003e\u003ccode\u003e2bb4711\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/7599eeea16b8f206e881892dc104128a5b36de82\"\u003e\u003ccode\u003e7599eee\u003c/code\u003e\u003c/a\u003e Add 1.5.4 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/0d00e7ddd9ad33fc63fbed29af17853b18bc3c61\"\u003e\u003ccode\u003e0d00e7d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/579\"\u003e#579\u003c/a\u003e from zsh8/decorate_generator\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/10c93f2d6c98f82e54470b05144cd0f17d3e1b46\"\u003e\u003ccode\u003e10c93f2\u003c/code\u003e\u003c/a\u003e fix: preserve functionality in pytest yield fixtures\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/d2e0a00addb0653b0cf3be65f8fa7137c7e3bda1\"\u003e\u003ccode\u003ed2e0a00\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/6229e27d27ec61c4c55d7006db7ede6f16d7280a\"\u003e\u003ccode\u003e6229e27\u003c/code\u003e\u003c/a\u003e Add 1.5.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/3111775d6e484f55a85030c626180b592adef569\"\u003e\u003ccode\u003e3111775\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/576\"\u003e#576\u003c/a\u003e from spulec/support-fixtures-pytest-840\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spulec/freezegun/compare/1.5.2...1.5.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-lazy-fixtures` from 1.1.4 to 1.3.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/releases\"\u003epytest-lazy-fixtures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.3.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/checkout from 4 to 5 in the github-actions group by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/45\"\u003edev-petrov/pytest-lazy-fixtures#45\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix fixture classes support by \u003ca href=\"https://github.com/dev-petrov\"\u003e\u003ccode\u003e@​dev-petrov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/48\"\u003edev-petrov/pytest-lazy-fixtures#48\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.3.3...1.3.4\"\u003ehttps://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.3.3...1.3.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.3.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix replace same object by \u003ca href=\"https://github.com/dev-petrov\"\u003e\u003ccode\u003e@​dev-petrov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/44\"\u003edev-petrov/pytest-lazy-fixtures#44\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.3.2...1.3.3\"\u003ehttps://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.3.2...1.3.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.3.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix nested fixtures collection by \u003ca href=\"https://github.com/dev-petrov\"\u003e\u003ccode\u003e@​dev-petrov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/42\"\u003edev-petrov/pytest-lazy-fixtures#42\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.3.1...1.3.2\"\u003ehttps://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.3.1...1.3.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.3.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix collect_fixtures by \u003ca href=\"https://github.com/dev-petrov\"\u003e\u003ccode\u003e@​dev-petrov\u003c/code\u003e\u003c/a\u003e in \u003c...\n\n_Description has been truncated_","html_url":"https://github.com/Ed-BW/consult-demo/pull/18","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ed-BW%2Fconsult-demo/issues/18","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/18/packages"}},{"old_version":"1.1.1","new_version":"1.2.0","update_type":"minor","path":null,"pr_created_at":"2025-09-04T14:30:33.000Z","version_change":"1.1.1 → 1.2.0","issue":{"uuid":"3384057979","node_id":"PR_kwDOOQGkKM6m4CG3","number":45,"state":"open","title":"😨 Bump the runtime-minors group with 4 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":12,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-09-04T14:30:33.000Z","updated_at":"2025-09-15T09:35:42.957Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"😨 Bump","group_name":"runtime-minors","update_count":4,"packages":[{"name":"pytest","old_version":"8.3.4","new_version":"8.4.1","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"6.0.0","new_version":"6.2.1","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"}],"path":null,"ecosystem":"pip"},"body":"Bumps the runtime-minors group with 4 updates: [pytest](https://github.com/pytest-dev/pytest), [pytest-cov](https://github.com/pytest-dev/pytest-cov), [pytest-mock](https://github.com/pytest-dev/pytest-mock) and [pytest-random-order](https://github.com/jbasko/pytest-random-order).\n\nUpdates `pytest` from 8.3.4 to 8.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.4.1\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.1 (2025-06-17)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13461\"\u003e#13461\u003c/a\u003e: Corrected \u003ccode\u003e_pytest.terminal.TerminalReporter.isatty\u003c/code\u003e to support\nbeing called as a method. Before it was just a boolean which could\nbreak correct code when using \u003ccode\u003e-o log_cli=true\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13477\"\u003e#13477\u003c/a\u003e: Reintroduced \u003ccode\u003epytest.PytestReturnNotNoneWarning\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which was removed by accident in pytest [8.4]{.title-ref}.\u003c/p\u003e\n\u003cp\u003eThis warning is raised when a test functions returns a value other than \u003ccode\u003eNone\u003c/code\u003e, which is often a mistake made by beginners.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ereturn-not-none\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13497\"\u003e#13497\u003c/a\u003e: Fixed compatibility with \u003ccode\u003eTwisted 25+\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e: Fixed outdated warning about \u003ccode\u003efaulthandler\u003c/code\u003e not working on Windows.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.0\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.0 (2025-06-02)\u003c/h1\u003e\n\u003ch2\u003eRemovals and backward incompatible breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11372\"\u003e#11372\u003c/a\u003e: Async tests will now fail, instead of warning+skipping, if you don't have any suitable plugin installed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12346\"\u003e#12346\u003c/a\u003e: Tests will now fail, instead of raising a warning, if they return any value other than None.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12874\"\u003e#12874\u003c/a\u003e: We dropped support for Python 3.8 following its end of life (2024-10-07).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12960\"\u003e#12960\u003c/a\u003e: Test functions containing a yield now cause an explicit error. They have not been run since pytest 4.0, and were previously marked as an expected failure and deprecation warning.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ethe docs \u0026lt;yield tests deprecated\u0026gt;\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDeprecations (removal in next major release)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10839\"\u003e#10839\u003c/a\u003e: Requesting an asynchronous fixture without a [pytest_fixture_setup]{.title-ref} hook that resolves it will now give a DeprecationWarning. This most commonly happens if a sync test requests an async fixture. This should have no effect on a majority of users with async tests or fixtures using async pytest plugins, but may affect non-standard hook setups or \u003ccode\u003eautouse=True\u003c/code\u003e. For guidance on how to work around this warning see \u003ccode\u003esync-test-async-fixture\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11538\"\u003e#11538\u003c/a\u003e: Added \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} as an equivalent to \u003ccode\u003epytest.raises\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} for expecting \u003ccode\u003eExceptionGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;exc\u0026quot;}. Also adds \u003ccode\u003epytest.RaisesExc\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which is now the logic behind \u003ccode\u003epytest.raises\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and used as parameter to \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;}. \u003ccode\u003eRaisesGroup\u003c/code\u003e includes the ability to specify multiple different expected exceptions, the structure of nested exception groups, and flags for emulating \u003ccode\u003eexcept* \u0026lt;except_star\u0026gt;\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}. See \u003ccode\u003eassert-matching-exception-groups\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} and docstrings for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12081\"\u003e#12081\u003c/a\u003e: Added \u003ccode\u003ecapteesys\u003c/code\u003e{.interpreted-text role=\u0026quot;fixture\u0026quot;} to capture AND pass output to next handler set by \u003ccode\u003e--capture=\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12504\"\u003e#12504\u003c/a\u003e: \u003ccode\u003epytest.mark.xfail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now accepts \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} for the \u003ccode\u003eraises\u003c/code\u003e parameter when you expect an exception group. You can also pass a \u003ccode\u003epytest.RaisesExc\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} if you e.g. want to make use of the \u003ccode\u003echeck\u003c/code\u003e parameter.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12713\"\u003e#12713\u003c/a\u003e: New [--force-short-summary]{.title-ref} option to force condensed summary output regardless of verbosity level.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/8d99211f0ce3927eb7ee579f7b4f969da06dc787\"\u003e\u003ccode\u003e8d99211\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/5dc5880715633c97310c0593f0ae356de27fa933\"\u003e\u003ccode\u003e5dc5880\u003c/code\u003e\u003c/a\u003e docs: update pytest.ini addopts example to use separate -p entries (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13529\"\u003e#13529\u003c/a\u003e) (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/d0c7ed0bfae5a5f1f9153cd1e464a421d701e925\"\u003e\u003ccode\u003ed0c7ed0\u003c/code\u003e\u003c/a\u003e Reintroduce PytestReturnNotNoneWarning (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13495\"\u003e#13495\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13527\"\u003e#13527\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/a1b3a7879589eb437e4fd97c169b228c3ed58c63\"\u003e\u003ccode\u003ea1b3a78\u003c/code\u003e\u003c/a\u003e Fix compatibility with Twisted 25 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13502\"\u003e#13502\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13531\"\u003e#13531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/4c161aba8ecaab9940040702369025595d26564c\"\u003e\u003ccode\u003e4c161ab\u003c/code\u003e\u003c/a\u003e pytester: avoid unraisableexception gc collects in inline runs to speed up te...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/a86ee09291f913b36fdeec14c42356515b91c979\"\u003e\u003ccode\u003ea86ee09\u003c/code\u003e\u003c/a\u003e Fix typo in parametrize.rst (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13514\"\u003e#13514\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13516\"\u003e#13516\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/1a0581b0227fa07afd1f2c4c6215aec3862cf1ab\"\u003e\u003ccode\u003e1a0581b\u003c/code\u003e\u003c/a\u003e Remove outdated warning about faulthandler_timeout on Windows (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13493\"\u003e#13493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/4e631a71484c2fa49e3fd9f884546af411a4888d\"\u003e\u003ccode\u003e4e631a7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13486\"\u003e#13486\u003c/a\u003e from hosmir/fixtypo (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13487\"\u003e#13487\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b49745ec529f06edfbbe531b766839763b2be3c2\"\u003e\u003ccode\u003eb49745e\u003c/code\u003e\u003c/a\u003e fix: support TerminalReporter.isatty being called (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13462\"\u003e#13462\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13483\"\u003e#13483\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/cc5ceed916d0c63696da33c67e035917194a4e87\"\u003e\u003ccode\u003ecc5ceed\u003c/code\u003e\u003c/a\u003e RELEASING: remove pytest mailing list (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13472\"\u003e#13472\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13473\"\u003e#13473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/8.3.4...8.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-cov` from 6.0.0 to 6.2.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-cov/blob/master/CHANGELOG.rst\"\u003epytest-cov's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.2.1 (2025-06-12)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded a version requirement for pytest's pluggy dependency (1.2.0, released 2023-06-21) that has the required new-style hookwrapper API.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemoved deprecated license classifier (packaging).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDisabled coverage warnings in two more situations where they have no value:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u0026quot;module-not-measured\u0026quot; in workers\u003c/li\u003e\n\u003cli\u003e\u0026quot;already-imported\u0026quot; in subprocesses\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.2.0 (2025-06-11)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe plugin now adds 3 rules in the filter warnings configuration to prevent common coverage warnings being raised as obscure errors::\u003c/p\u003e\n\u003cp\u003edefault:unclosed database in \u0026lt;sqlite3.Connection object at:ResourceWarning\nonce::PytestCovWarning\nonce::CoverageWarning\u003c/p\u003e\n\u003cp\u003eThis fixes most of the bad interactions that are occurring on pytest 8.4 with \u003ccode\u003efilterwarnings=error\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThe plugin will check if there already matching rules for the 3 categories\n(\u003ccode\u003eResourceWarning\u003c/code\u003e, \u003ccode\u003ePytestCovWarning\u003c/code\u003e, \u003ccode\u003eCoverageWarning\u003c/code\u003e) and message (\u003ccode\u003eunclosed database in \u0026lt;sqlite3.Connection object at\u003c/code\u003e) before adding the filters.\u003c/p\u003e\n\u003cp\u003eThis means you can have this in your pytest configuration for complete oblivion (not recommended, if that is not clear)::\u003c/p\u003e\n\u003cp\u003efilterwarnings = [\n\u0026quot;error\u0026quot;,\n\u0026quot;ignore:unclosed database in \u0026lt;sqlite3.Connection object at:ResourceWarning\u0026quot;,\n\u0026quot;ignore::PytestCovWarning\u0026quot;,\n\u0026quot;ignore::CoverageWarning\u0026quot;,\n]\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.1.1 (2025-04-05)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed breakage that occurs when \u003ccode\u003e--cov-context\u003c/code\u003e and the \u003ccode\u003eno_cover\u003c/code\u003e marker are used together.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.1.0 (2025-04-01)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eChange terminal output to use full width lines for the coverage header.\nContributed by Tsvika Shapira in \u003ccode\u003e[#678](https://github.com/pytest-dev/pytest-cov/issues/678) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/678\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eRemoved unnecessary CovFailUnderWarning. Fixes \u003ccode\u003e[#675](https://github.com/pytest-dev/pytest-cov/issues/675) \u0026lt;https://github.com/pytest-dev/pytest-cov/issues/675\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eFixed the term report not using the precision specified via \u003ccode\u003e--cov-precision\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/55dbe43f04f839b760ea346e560276d641998c77\"\u003e\u003ccode\u003e55dbe43\u003c/code\u003e\u003c/a\u003e Bump version: 6.2.0 → 6.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d17e9b765e9832e70fe8101daa2f5f42ce447cc2\"\u003e\u003ccode\u003ed17e9b7\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/8964ab7595dd10748cad66376289476049340ea4\"\u003e\u003ccode\u003e8964ab7\u003c/code\u003e\u003c/a\u003e Add a note for this warning disable.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/e932e41e50f37d03a4d600084411661bc1f08ab8\"\u003e\u003ccode\u003ee932e41\u003c/code\u003e\u003c/a\u003e Prevent unimported warnings @ pytest-xdist workers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/573379ba34539db32cb3a43222f33b7c304af34a\"\u003e\u003ccode\u003e573379b\u003c/code\u003e\u003c/a\u003e Bring pytest-cov's suprocess management in line with coverage's process_start...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f1884e854f2687ccfe36747a11e7f3352f168f90\"\u003e\u003ccode\u003ef1884e8\u003c/code\u003e\u003c/a\u003e Fix xdist pin.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/512c6699010cc0d8145f1f926d876cafba840015\"\u003e\u003ccode\u003e512c669\u003c/code\u003e\u003c/a\u003e Added minium version requirements for pluggin (for new-style hookwrappers). P...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/629ba644a56148d09fe0f2c20602681bc20027a7\"\u003e\u003ccode\u003e629ba64\u003c/code\u003e\u003c/a\u003e Remove deprecated license classifier.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/dca5723086a00e8c145a84761b0ce810a8079892\"\u003e\u003ccode\u003edca5723\u003c/code\u003e\u003c/a\u003e Bump version: 6.1.1 → 6.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f69166a08444db4736c611cdc7746eeac9a2f158\"\u003e\u003ccode\u003ef69166a\u003c/code\u003e\u003c/a\u003e Also trigger the sqlite warning.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v6.0.0...v6.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-mock` from 3.14.0 to 3.14.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-mock/releases\"\u003epytest-mock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.14.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/503\"\u003e#503\u003c/a\u003e: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst\"\u003epytest-mock's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.14.1 (2025-05-26)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#503](https://github.com/pytest-dev/pytest-mock/issues/503) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/503\u0026gt;\u003c/code\u003e_: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/34dd61aa459520e096c70eb8a573700fc17c5de8\"\u003e\u003ccode\u003e34dd61a\u003c/code\u003e\u003c/a\u003e Release 3.14.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/299adb96640a51a48b5af9a69064b9edd7a9fe90\"\u003e\u003ccode\u003e299adb9\u003c/code\u003e\u003c/a\u003e Add support for Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/503\"\u003e#503\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/f5fcef726a8ba4a54cd138321ae9771648a0bc8a\"\u003e\u003ccode\u003ef5fcef7\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/504\"\u003e#504\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/bae64d8c8ef44a7075d63f1d7f6ac36b76b61ce4\"\u003e\u003ccode\u003ebae64d8\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/502\"\u003e#502\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/824f334cc4b39eb05c0093fc43411ada3fdc8300\"\u003e\u003ccode\u003e824f334\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/501\"\u003e#501\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/db1add63034430d66835c78992c0ed9b1e331cfd\"\u003e\u003ccode\u003edb1add6\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/500\"\u003e#500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/48ac8746b6587457becf31d1272947de6d65e0d0\"\u003e\u003ccode\u003e48ac874\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/499\"\u003e#499\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/fe7ad9aab6a8e15e5762d5bdc85402249f2ca7ef\"\u003e\u003ccode\u003efe7ad9a\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/498\"\u003e#498\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/7857e608242aeb3d4b771296ee41d258b1a13838\"\u003e\u003ccode\u003e7857e60\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/497\"\u003e#497\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/a8b97ea2ca86e9cfa553e395cf20352a881d8eaf\"\u003e\u003ccode\u003ea8b97ea\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/496\"\u003e#496\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-mock/compare/v3.14.0...v3.14.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/RecordedFuture-ProfessionalServices/psengine/pull/45","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/RecordedFuture-ProfessionalServices%2Fpsengine/issues/45","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/45/packages"}},{"old_version":"1.1.1","new_version":"1.2.0","update_type":"minor","path":null,"pr_created_at":"2025-08-25T15:00:13.000Z","version_change":"1.1.1 → 1.2.0","issue":{"uuid":"3352198207","node_id":"PR_kwDOOQGkKM6lO5PA","number":35,"state":"open","title":"😨 Bump pytest-random-order from 1.1.1 to 1.2.0","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":12,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-08-25T15:00:13.000Z","updated_at":"2025-09-04T14:49:34.599Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"😨 Bump","packages":[{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"}],"path":null,"ecosystem":"pip"},"body":"Bumps [pytest-random-order](https://github.com/jbasko/pytest-random-order) from 1.1.1 to 1.2.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=pytest-random-order\u0026package-manager=pip\u0026previous-version=1.1.1\u0026new-version=1.2.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/RecordedFuture-ProfessionalServices/psengine/pull/35","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/RecordedFuture-ProfessionalServices%2Fpsengine/issues/35","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/35/packages"}},{"old_version":"1.1.1","new_version":"1.2.0","update_type":"minor","path":null,"pr_created_at":"2025-08-12T02:41:28.000Z","version_change":"1.1.1 → 1.2.0","issue":{"uuid":"2737465239","node_id":"PR_kwDOO_gais6jKmeX","number":14,"state":"closed","title":"Upgrade: bump the pip-updates group across 1 directory with 15 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-08-18T20:54:44.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-08-12T02:41:28.000Z","updated_at":"2025-08-18T20:54:44.000Z","time_to_close":583996,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Upgrade: bump","group_name":"pip-updates","update_count":15,"packages":[{"name":"django","old_version":"5.2.3","new_version":"5.2.5","repository_url":"https://github.com/django/django"},{"name":"boto3","old_version":"1.38.39","new_version":"1.40.6","repository_url":"https://github.com/boto/boto3"},{"name":"datamodel-code-generator","old_version":"0.31.1","new_version":"0.32.0","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"django-types","old_version":"0.21.0","new_version":"0.22.0","repository_url":"https://github.com/sbdchd/django-types"},{"name":"sentry-sdk","old_version":"2.30.0","new_version":"2.34.1","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"},{"name":"django-rq","old_version":"3.0.1","new_version":"3.1","repository_url":"https://github.com/rq/django-rq"},{"name":"django-simple-history","old_version":"3.8.0","new_version":"3.10.1","repository_url":"https://github.com/django-commons/django-simple-history"},{"name":"pandas","old_version":"2.3.0","new_version":"2.3.1","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"moto","old_version":"5.1.6","new_version":"5.1.9","repository_url":"https://github.com/getmoto/moto"},{"name":"freezegun","old_version":"1.5.2","new_version":"1.5.5","repository_url":"https://github.com/spulec/freezegun"},{"name":"pytest-lazy-fixtures","old_version":"1.1.4","new_version":"1.3.2","repository_url":"https://github.com/dev-petrov/pytest-lazy-fixtures"},{"name":"ruff","old_version":"0.12.0","new_version":"0.12.8","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"mypy","old_version":"1.16.1","new_version":"1.17.1","repository_url":"https://github.com/python/mypy"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-updates group with 15 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [django](https://github.com/django/django) | `5.2.3` | `5.2.5` |\n| [boto3](https://github.com/boto/boto3) | `1.38.39` | `1.40.6` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.31.1` | `0.32.0` |\n| [django-types](https://github.com/sbdchd/django-types) | `0.21.0` | `0.22.0` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.30.0` | `2.34.1` |\n| [pytest-random-order](https://github.com/jbasko/pytest-random-order) | `1.1.1` | `1.2.0` |\n| [django-rq](https://github.com/rq/django-rq) | `3.0.1` | `3.1` |\n| [django-simple-history](https://github.com/django-commons/django-simple-history) | `3.8.0` | `3.10.1` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.3.0` | `2.3.1` |\n| [moto](https://github.com/getmoto/moto) | `5.1.6` | `5.1.9` |\n| [freezegun](https://github.com/spulec/freezegun) | `1.5.2` | `1.5.5` |\n| [pytest-lazy-fixtures](https://github.com/dev-petrov/pytest-lazy-fixtures) | `1.1.4` | `1.3.2` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.12.0` | `0.12.8` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.3.0` |\n| [mypy](https://github.com/python/mypy) | `1.16.1` | `1.17.1` |\n\n\nUpdates `django` from 5.2.3 to 5.2.5\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/a3b1107a4955bdd994908efb4c6e1d03c281e69f\"\u003e\u003ccode\u003ea3b1107\u003c/code\u003e\u003c/a\u003e [5.2.x] Bumped version for 5.2.5 release.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/0489f54e8b047374f0b83fe77695976edcf8c118\"\u003e\u003ccode\u003e0489f54\u003c/code\u003e\u003c/a\u003e [5.2.x] Added release date for 5.2.5.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/a9c7d4b703759e9903dd92899dd8ac662007baf3\"\u003e\u003ccode\u003ea9c7d4b\u003c/code\u003e\u003c/a\u003e [5.2.x] Refs \u003ca href=\"https://redirect.github.com/django/django/issues/36485\"\u003e#36485\u003c/a\u003e -- Grouped docs checks under a unified make check target.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/5ad6d43cd9ae05d3575f9e7bb1cb488bce5d905d\"\u003e\u003ccode\u003e5ad6d43\u003c/code\u003e\u003c/a\u003e [5.2.x] Refs \u003ca href=\"https://redirect.github.com/django/django/issues/34140\"\u003e#34140\u003c/a\u003e -- Added dedicated code block formatting section in docs/...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/bdc3f9e3508fc144c5e9710f5b672cc41f6e742d\"\u003e\u003ccode\u003ebdc3f9e\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/36530\"\u003e#36530\u003c/a\u003e -- Extended fields.E347 to check for ManyToManyField inv...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/f01ceae477a71a1c244c332e1b53a9499e484874\"\u003e\u003ccode\u003ef01ceae\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/36535\"\u003e#36535\u003c/a\u003e -- Ensured compatibility with docutils 0.19 through 0.22.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/5ca58ce3d0d254752caa19e96055f54feadd5582\"\u003e\u003ccode\u003e5ca58ce\u003c/code\u003e\u003c/a\u003e [5.2.x] Corrected assertNumQueries() example in docs/topics/testing/tools.txt.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/b3bb7230e1225861b5c1f08931f2d82c2b04133a\"\u003e\u003ccode\u003eb3bb723\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/34871\"\u003e#34871\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/django/django/issues/36518\"\u003e#36518\u003c/a\u003e -- Implemented unresolved lookups expression rep...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/e5ccb69bc3da407ab2b0477c0cc5db27c7207225\"\u003e\u003ccode\u003ee5ccb69\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/36198\"\u003e#36198\u003c/a\u003e -- Implemented unresolved transform expression replacement.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/5aefd005fc3dd35be6e9e4a24f9c2bc92b69df3b\"\u003e\u003ccode\u003e5aefd00\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed writer_name deprecation warning in docutils 0.22+.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/django/django/compare/5.2.3...5.2.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `boto3` from 1.38.39 to 1.40.6\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/ee92fbdbe80096a044380aac34d18cb938cd81ce\"\u003e\u003ccode\u003eee92fbd\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.6'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/f0a5be5eab86ed388453c8d50079bdbe4a833d32\"\u003e\u003ccode\u003ef0a5be5\u003c/code\u003e\u003c/a\u003e Bumping version to 1.40.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/3773cf3cf53699361eb5957e69f6b9ed55147afe\"\u003e\u003ccode\u003e3773cf3\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/a91e94d0eb70af4c3522803a1f884e581f65a361\"\u003e\u003ccode\u003ea91e94d\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.5'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/d8747bb9f002a6872c803b4b692a37e5ea1214b1\"\u003e\u003ccode\u003ed8747bb\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.5' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/4a3fa2dd03e7fc92697226e9df59e02c8b071980\"\u003e\u003ccode\u003e4a3fa2d\u003c/code\u003e\u003c/a\u003e Bumping version to 1.40.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/fcb006fac415e7ed3b78dbc85b421f5716b8c59d\"\u003e\u003ccode\u003efcb006f\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/b7bfc9012fc327f160183856bf98bf0a8c7e3b05\"\u003e\u003ccode\u003eb7bfc90\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.4'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/4d4ddba9b17a10c3aae952733de9a943eee59b90\"\u003e\u003ccode\u003e4d4ddba\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.40.4' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/a092acc541e8eddc358c400419bde06e4e4fcc33\"\u003e\u003ccode\u003ea092acc\u003c/code\u003e\u003c/a\u003e Bumping version to 1.40.4\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.38.39...1.40.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `datamodel-code-generator` from 0.31.1 to 0.32.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/releases\"\u003edatamodel-code-generator's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.32.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003emodify __typename field to honor \u003ccode\u003e--use-default-kwarg\u003c/code\u003e flag by \u003ca href=\"https://github.com/rpmcginty\"\u003e\u003ccode\u003e@​rpmcginty\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2420\"\u003ekoxudaxi/datamodel-code-generator#2420\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typo in variable name by \u003ca href=\"https://github.com/eltoder\"\u003e\u003ccode\u003e@​eltoder\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2439\"\u003ekoxudaxi/datamodel-code-generator#2439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSend use_non_positive_negative_number_constrained_types to the data type manager by \u003ca href=\"https://github.com/torarvid\"\u003e\u003ccode\u003e@​torarvid\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2425\"\u003ekoxudaxi/datamodel-code-generator#2425\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow parsing non-string lists for required fields by \u003ca href=\"https://github.com/HeroGamers\"\u003e\u003ccode\u003e@​HeroGamers\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2446\"\u003ekoxudaxi/datamodel-code-generator#2446\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow including path parameters in generated models by \u003ca href=\"https://github.com/MrLoh\"\u003e\u003ccode\u003e@​MrLoh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2445\"\u003ekoxudaxi/datamodel-code-generator#2445\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePassing in treat_dot_as_module bool to Enum init function by \u003ca href=\"https://github.com/LukeAtThat\"\u003e\u003ccode\u003e@​LukeAtThat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2456\"\u003ekoxudaxi/datamodel-code-generator#2456\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: correctly handle multiline comments in Unions by \u003ca href=\"https://github.com/anor4k\"\u003e\u003ccode\u003e@​anor4k\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2454\"\u003ekoxudaxi/datamodel-code-generator#2454\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReturn Parameter and RequestBody DataTypesare  by \u003ca href=\"https://github.com/MrLoh\"\u003e\u003ccode\u003e@​MrLoh\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2444\"\u003ekoxudaxi/datamodel-code-generator#2444\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rpmcginty\"\u003e\u003ccode\u003e@​rpmcginty\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2420\"\u003ekoxudaxi/datamodel-code-generator#2420\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eltoder\"\u003e\u003ccode\u003e@​eltoder\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2439\"\u003ekoxudaxi/datamodel-code-generator#2439\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/torarvid\"\u003e\u003ccode\u003e@​torarvid\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2425\"\u003ekoxudaxi/datamodel-code-generator#2425\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/HeroGamers\"\u003e\u003ccode\u003e@​HeroGamers\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2446\"\u003ekoxudaxi/datamodel-code-generator#2446\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MrLoh\"\u003e\u003ccode\u003e@​MrLoh\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2445\"\u003ekoxudaxi/datamodel-code-generator#2445\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LukeAtThat\"\u003e\u003ccode\u003e@​LukeAtThat\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2456\"\u003ekoxudaxi/datamodel-code-generator#2456\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anor4k\"\u003e\u003ccode\u003e@​anor4k\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2454\"\u003ekoxudaxi/datamodel-code-generator#2454\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.31.2...0.32.0\"\u003ehttps://github.com/koxudaxi/datamodel-code-generator/compare/0.31.2...0.32.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.31.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: prevent code injection through filename in generated headers by \u003ca href=\"https://github.com/koxudaxi\"\u003e\u003ccode\u003e@​koxudaxi\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2428\"\u003ekoxudaxi/datamodel-code-generator#2428\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.31.2\"\u003ehttps://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.31.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/0070c1c13e5c61c705c9679db7255db1b866b18c\"\u003e\u003ccode\u003e0070c1c\u003c/code\u003e\u003c/a\u003e Return Parameter and RequestBody DataTypesare  (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2444\"\u003e#2444\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/d32cef106b47f2452fe19af0063738b1b360d9af\"\u003e\u003ccode\u003ed32cef1\u003c/code\u003e\u003c/a\u003e fix: correctly handle multiline comments in Unions, and add a test case (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2454\"\u003e#2454\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/a833f6f8b824badfa1ee43131c74c49ece99de43\"\u003e\u003ccode\u003ea833f6f\u003c/code\u003e\u003c/a\u003e Passing in treat_dot_as_module bool to Enum init function (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2456\"\u003e#2456\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/82b28d922d45d1e802001da646d0788e5ace9764\"\u003e\u003ccode\u003e82b28d9\u003c/code\u003e\u003c/a\u003e Allow including path parameters in generated models (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2445\"\u003e#2445\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/ec84e8e4e0a648f370d1571319ad2688f04e124a\"\u003e\u003ccode\u003eec84e8e\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2449\"\u003e#2449\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/2ccc4815958899b67e7ed61ed9d4dc67aa9e506c\"\u003e\u003ccode\u003e2ccc481\u003c/code\u003e\u003c/a\u003e Allow parsing non-string lists for required fields (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2446\"\u003e#2446\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/a34acbfad2043178e14de1a7068a8ec3784caf43\"\u003e\u003ccode\u003ea34acbf\u003c/code\u003e\u003c/a\u003e Send use_non_positive_negative_number_constrained_types to the datamodel (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2425\"\u003e#2425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/482ca6ac4315ea517e461296ffca443df72651ac\"\u003e\u003ccode\u003e482ca6a\u003c/code\u003e\u003c/a\u003e Fix typo in variable name (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2439\"\u003e#2439\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/5881f391140fbea444cdcaabaadd0b1b1b6b6550\"\u003e\u003ccode\u003e5881f39\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2430\"\u003e#2430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/75f4241a8daae73774ffa0b830535bf68bf0226e\"\u003e\u003ccode\u003e75f4241\u003c/code\u003e\u003c/a\u003e modify __typename field to honor \u003ccode\u003e--use-default-kwarg\u003c/code\u003e flag (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2420\"\u003e#2420\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.32.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `django-types` from 0.21.0 to 0.22.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sbdchd/django-types/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentry-sdk` from 2.30.0 to 2.34.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/releases\"\u003esentry-sdk's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.34.1\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Make sure Span data in AI instrumentations is always a primitive data type (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4643\"\u003e#4643\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Typo in CHANGELOG.md (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4640\"\u003e#4640\u003c/a\u003e) by \u003ca href=\"https://github.com/jgillard\"\u003e\u003ccode\u003e@​jgillard\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eConsiderably raise \u003ccode\u003eDEFAULT_MAX_VALUE_LENGTH\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4632\"\u003e#4632\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe have increased the string trimming limit considerably, allowing you to see more data\nwithout it being truncated. Note that this might, in rare cases, result in issue regrouping,\nfor example if you're capturing message events with very long messages (longer than the\ndefault 1024 characters/bytes).\u003c/p\u003e\n\u003cp\u003eIf you want to adjust the limit, you can set a\n\u003ca href=\"https://docs.sentry.io/platforms/python/configuration/options/#max_value_length\"\u003e\u003ccode\u003emax_value_length\u003c/code\u003e\u003c/a\u003e\nin your \u003ccode\u003esentry_sdk.init()\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eOpenAI\u003c/code\u003e integration update (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4612\"\u003e#4612\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003eOpenAIIntegration\u003c/code\u003e now supports \u003ca href=\"https://platform.openai.com/docs/api-reference/responses\"\u003eOpenAI Responses API\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe data captured will also show up in the new \u003ca href=\"https://docs.sentry.io/product/insights/agents/dashboard/\"\u003eAI Agents Dashboard\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis works out of the box, nothing to do on your side.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExpose \u003ccode\u003eset_transaction_name\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4634\"\u003e#4634\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix(Celery): Latency should be in milliseconds, not seconds (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4637\"\u003e#4637\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix(Django): Treat \u003ccode\u003edjango.template.context.BasicContext\u003c/code\u003e as sequence in serializer (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4621\"\u003e#4621\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix(Huggingface): Fix \u003ccode\u003ehuggingface_hub\u003c/code\u003e CI tests. (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4619\"\u003e#4619\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: Ignore deliberate thread exception warnings (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4611\"\u003e#4611\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: Socket tests to not use example.com (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4627\"\u003e#4627\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: Threading run patch (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4610\"\u003e#4610\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Simplify celery double patching test (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4626\"\u003e#4626\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Remove remote example.com calls (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4622\"\u003e#4622\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: tox.ini update (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4635\"\u003e#4635\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Update tox (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4609\"\u003e#4609\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.33.2\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eref(spotlight): Do not import \u003ccode\u003esentry_sdk.spotlight\u003c/code\u003e unless enabled (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4607\"\u003e#4607\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eref(gnu-integration): update clickhouse stacktrace parsing (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4598\"\u003e#4598\u003c/a\u003e) by \u003ca href=\"https://github.com/MeredithAnya\"\u003e\u003ccode\u003e@​MeredithAnya\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.33.1\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix(integrations): allow explicit op parameter in \u003ccode\u003eai_track\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4597\"\u003e#4597\u003c/a\u003e) by \u003ca href=\"https://github.com/mshavliuk\"\u003e\u003ccode\u003e@​mshavliuk\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md\"\u003esentry-sdk's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.34.1\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Make sure Span data in AI instrumentations is always a primitive data type (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4643\"\u003e#4643\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Typo in CHANGELOG.md (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4640\"\u003e#4640\u003c/a\u003e) by \u003ca href=\"https://github.com/jgillard\"\u003e\u003ccode\u003e@​jgillard\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eConsiderably raise \u003ccode\u003eDEFAULT_MAX_VALUE_LENGTH\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4632\"\u003e#4632\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe have increased the string trimming limit considerably, allowing you to see more data\nwithout it being truncated. Note that this might, in rare cases, result in issue regrouping,\nfor example if you're capturing message events with very long messages (longer than the\ndefault 1024 characters/bytes).\u003c/p\u003e\n\u003cp\u003eIf you want to adjust the limit, you can set a\n\u003ca href=\"https://docs.sentry.io/platforms/python/configuration/options/#max_value_length\"\u003e\u003ccode\u003emax_value_length\u003c/code\u003e\u003c/a\u003e\nin your \u003ccode\u003esentry_sdk.init()\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eOpenAI\u003c/code\u003e integration update (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4612\"\u003e#4612\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003eOpenAIIntegration\u003c/code\u003e now supports \u003ca href=\"https://platform.openai.com/docs/api-reference/responses\"\u003eOpenAI Responses API\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe data captured will also show up in the new \u003ca href=\"https://docs.sentry.io/product/insights/agents/dashboard/\"\u003eAI Agents Dashboard\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis works out of the box, nothing to do on your side.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExpose \u003ccode\u003eset_transaction_name\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4634\"\u003e#4634\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix(Celery): Latency should be in milliseconds, not seconds (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4637\"\u003e#4637\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix(Django): Treat \u003ccode\u003edjango.template.context.BasicContext\u003c/code\u003e as sequence in serializer (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4621\"\u003e#4621\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix(Huggingface): Fix \u003ccode\u003ehuggingface_hub\u003c/code\u003e CI tests. (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4619\"\u003e#4619\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: Ignore deliberate thread exception warnings (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4611\"\u003e#4611\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: Socket tests to not use example.com (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4627\"\u003e#4627\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: Threading run patch (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4610\"\u003e#4610\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Simplify celery double patching test (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4626\"\u003e#4626\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Remove remote example.com calls (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4622\"\u003e#4622\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: tox.ini update (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4635\"\u003e#4635\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eTests: Update tox (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4609\"\u003e#4609\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.33.2\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eref(spotlight): Do not import \u003ccode\u003esentry_sdk.spotlight\u003c/code\u003e unless enabled (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4607\"\u003e#4607\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eref(gnu-integration): update clickhouse stacktrace parsing (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4598\"\u003e#4598\u003c/a\u003e) by \u003ca href=\"https://github.com/MeredithAnya\"\u003e\u003ccode\u003e@​MeredithAnya\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.33.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/9276f2a150c1d0f831d54959b8dc7b138cd50bb6\"\u003e\u003ccode\u003e9276f2a\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/a71ef66d37aa77316713c9e312891009727d55fe\"\u003e\u003ccode\u003ea71ef66\u003c/code\u003e\u003c/a\u003e release: 2.34.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/38b570a467c9633c8c28c8486433038c1a19fdda\"\u003e\u003ccode\u003e38b570a\u003c/code\u003e\u003c/a\u003e Span data is always be a primitive data type (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4643\"\u003e#4643\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/bab6215b1f8b6992c0343992601896adc1963897\"\u003e\u003ccode\u003ebab6215\u003c/code\u003e\u003c/a\u003e Fix typo in CHANGELOG.md (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4640\"\u003e#4640\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/c273f677290efcdd5afda19c14ad9d97ea2bd11f\"\u003e\u003ccode\u003ec273f67\u003c/code\u003e\u003c/a\u003e Merge branch 'release/2.34.0'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/72766a79acf6df132f62584bd6ef4ac47904c155\"\u003e\u003ccode\u003e72766a7\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/e1848d4f33039f04b77caf43d3d2444a18ac2dac\"\u003e\u003ccode\u003ee1848d4\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/e84f6f30682e0b14e5a2ab575d96c686894c5aaa\"\u003e\u003ccode\u003ee84f6f3\u003c/code\u003e\u003c/a\u003e release: 2.34.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/4f9d326c86477052aa30230393497a20edb17da4\"\u003e\u003ccode\u003e4f9d326\u003c/code\u003e\u003c/a\u003e Considerably raise \u003ccode\u003eDEFAULT_MAX_VALUE_LENGTH\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4632\"\u003e#4632\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/fd7dca446da0815e1491a5ec2acdb67e630646fd\"\u003e\u003ccode\u003efd7dca4\u003c/code\u003e\u003c/a\u003e fix(celery): Latency should be in milliseconds, not seconds (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4637\"\u003e#4637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getsentry/sentry-python/compare/2.30.0...2.34.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `django-rq` from 3.0.1 to 3.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rq/django-rq/releases\"\u003edjango-rq's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e/metrics\u003c/code\u003e endpoint to expose RQ metrics in Prometheus format. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded token based authentication for the \u003ccode\u003e/metrics\u003c/code\u003e and \u003ccode\u003e/stats.json\u003c/code\u003e endpoints. Thanks \u003ca href=\"https://github.com/RasmusThing\"\u003e\u003ccode\u003e@​RasmusThing\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eMigrated Django-RQ to use Python's modern packaging standard. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eFixed an issue with setting \u003ccode\u003eresult_ttl\u003c/code\u003e via job decorators. Thanks \u003ca href=\"https://github.com/Sir-heed\"\u003e\u003ccode\u003e@​Sir-heed\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVarious admin page improvements. Thanks \u003ca href=\"https://github.com/selwin\"\u003e\u003ccode\u003e@​selwin\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/DhavalGojiya\"\u003e\u003ccode\u003e@​DhavalGojiya\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rq/django-rq/blob/master/CHANGELOG.md\"\u003edjango-rq's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003eVersion 3.1 (2025-08-02)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e/metrics\u003c/code\u003e endpoint to expose RQ metrics in Prometheus format. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eAdded token based authentication for the \u003ccode\u003e/metrics\u003c/code\u003e and \u003ccode\u003e/stats.json\u003c/code\u003e endpoints. Thanks \u003ca href=\"https://github.com/RasmusThing\"\u003e\u003ccode\u003e@​RasmusThing\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eMigrated Django-RQ to use Python's modern packaging standard. Thanks \u003ca href=\"https://github.com/terencehonles\"\u003e\u003ccode\u003e@​terencehonles\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eFixed an issue with setting \u003ccode\u003eresult_ttl\u003c/code\u003e via job decorators. Thanks \u003ca href=\"https://github.com/Sir-heed\"\u003e\u003ccode\u003e@​Sir-heed\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eVarious admin page improvements. Thanks \u003ca href=\"https://github.com/selwin\"\u003e\u003ccode\u003e@​selwin\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/DhavalGojiya\"\u003e\u003ccode\u003e@​DhavalGojiya\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/571082b7849942448ba7f34c4a0a3b88fbebaade\"\u003e\u003ccode\u003e571082b\u003c/code\u003e\u003c/a\u003e Bump version to 3.1 in pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/edd22bd2f5042feecaee8a4034784a930856137a\"\u003e\u003ccode\u003eedd22bd\u003c/code\u003e\u003c/a\u003e Bump version to 3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/f9fadb81699347bf3369053e3cd619226ca2c75d\"\u003e\u003ccode\u003ef9fadb8\u003c/code\u003e\u003c/a\u003e Change url token to header auth and add to /metrics/ aswell (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/718\"\u003e#718\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/fc9a6dee60c05cdd34530e9ce002cda982c65f71\"\u003e\u003ccode\u003efc9a6de\u003c/code\u003e\u003c/a\u003e Update packaging to use modern packaging with a pyproject.toml (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/715\"\u003e#715\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/b1e6e87d0f6da4dcc29ec5745fb4a3665bde10ad\"\u003e\u003ccode\u003eb1e6e87\u003c/code\u003e\u003c/a\u003e Update README.rst\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/429933202673712ba55d6ad49672b73bece04dfc\"\u003e\u003ccode\u003e4299332\u003c/code\u003e\u003c/a\u003e fix job decorator default ttl (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/714\"\u003e#714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/38143405218e0387ca2f4fc2cd48a0d0e7382370\"\u003e\u003ccode\u003e3814340\u003c/code\u003e\u003c/a\u003e Added sorting for deferred_jobs and scheduled_jobs views (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/713\"\u003e#713\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/399c18f3e96ea710deabe27ad64829c46f01583b\"\u003e\u003ccode\u003e399c18f\u003c/code\u003e\u003c/a\u003e fix pyright check (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/707\"\u003e#707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/ec02320dfa342a880278f6b39685047a9cccc9f4\"\u003e\u003ccode\u003eec02320\u003c/code\u003e\u003c/a\u003e [FIX] -- job status display in scheduler listing page template. (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/694\"\u003e#694\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rq/django-rq/commit/507b985dd65d67cbce73a1b70d0d1bcb92fc68ab\"\u003e\u003ccode\u003e507b985\u003c/code\u003e\u003c/a\u003e Bump requests from 2.32.0 to 2.32.4 in /integration_test (\u003ca href=\"https://redirect.github.com/rq/django-rq/issues/711\"\u003e#711\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rq/django-rq/compare/v3.0.1...v3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `django-simple-history` from 3.8.0 to 3.10.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/django-commons/django-simple-history/releases\"\u003edjango-simple-history's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 3.10.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/blob/3.10.1/CHANGES.rst#3101-2025-06-20\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed changed log syntax to support PyPI packaging. by \u003ca href=\"https://github.com/tim-schilling\"\u003e\u003ccode\u003e@​tim-schilling\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1499\"\u003edjango-commons/django-simple-history#1499\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.10.0...3.10.1\"\u003ehttps://github.com/django-commons/django-simple-history/compare/3.10.0...3.10.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease 3.10.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/jazzband/django-simple-history/blob/3.10.0/CHANGES.rst#3100-2025-06-20\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExclude tests from wheels by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1478\"\u003edjango-commons/django-simple-history#1478\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSwitch repo to Django Commons by \u003ca href=\"https://github.com/tim-schilling\"\u003e\u003ccode\u003e@​tim-schilling\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1429\"\u003edjango-commons/django-simple-history#1429\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for release 3.10.0 by \u003ca href=\"https://github.com/ddabble\"\u003e\u003ccode\u003e@​ddabble\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1498\"\u003edjango-commons/django-simple-history#1498\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1478\"\u003edjango-commons/django-simple-history#1478\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.9.0...3.10.0\"\u003ehttps://github.com/django-commons/django-simple-history/compare/3.9.0...3.10.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease 3.9.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/jazzband/django-simple-history/blob/3.9.0/CHANGES.rst#390-2025-01-26\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove the deprecated \u003ccode\u003esimple_history_admin_list.display_list()\u003c/code\u003e + \u003cstrong\u003eRelease 3.9.0\u003c/strong\u003e by \u003ca href=\"https://github.com/ddabble\"\u003e\u003ccode\u003e@​ddabble\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jazzband/django-simple-history/pull/1444\"\u003ejazzband/django-simple-history#1444\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jazzband/django-simple-history/compare/3.8.0...3.9.0\"\u003ehttps://github.com/jazzband/django-simple-history/compare/3.8.0...3.9.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/django-commons/django-simple-history/blob/master/CHANGES.rst\"\u003edjango-simple-history's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.10.1 (2025-06-20)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed changelog syntax to support PyPI packaging (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1499\"\u003egh-1499\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.0 (2025-06-20)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTests are no longer bundled in released wheels (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1478\"\u003egh-1478\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMove repository to the Django Commons organization (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1391\"\u003egh-1391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.9.0 (2025-01-26)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved the \u003ccode\u003esimple_history_admin_list.display_list()\u003c/code\u003e template tag that was\ndeprecated in version 3.6.0 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1444\"\u003egh-1444\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/dc569842772578558fe4a84e5937d6fc31dd735d\"\u003e\u003ccode\u003edc56984\u003c/code\u003e\u003c/a\u003e Fixed changed log syntax to support PyPI packaging. (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1499\"\u003e#1499\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/58dbb06e68f821c99128b83619a856444319fa04\"\u003e\u003ccode\u003e58dbb06\u003c/code\u003e\u003c/a\u003e Prepare for release 3.10.0 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1498\"\u003e#1498\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/bc9909f32e33f8f33dccd28934994dffb9c4f459\"\u003e\u003ccode\u003ebc9909f\u003c/code\u003e\u003c/a\u003e Switch repo to Django Commons (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1429\"\u003e#1429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/9fb7c5c30b43917eaf98ee5ef266705bd191a825\"\u003e\u003ccode\u003e9fb7c5c\u003c/code\u003e\u003c/a\u003e Bump codecov/codecov-action from 3 to 5 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1425\"\u003e#1425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/7d6b50bf6f4ccbddd75bc3685dc9cf04240176d2\"\u003e\u003ccode\u003e7d6b50b\u003c/code\u003e\u003c/a\u003e Bump coverage from 7.8.0 to 7.9.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1495\"\u003e#1495\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/8bb61757cb9563c2fd0c17e1fa22c53013c311e3\"\u003e\u003ccode\u003e8bb6175\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1482\"\u003e#1482\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/010928f2fc52acd68df41e61686ed233171530e8\"\u003e\u003ccode\u003e010928f\u003c/code\u003e\u003c/a\u003e Bump tox from 4.25.0 to 4.26.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1485\"\u003e#1485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/5721e31055b0c952daf3601b6c35bcde78cab31b\"\u003e\u003ccode\u003e5721e31\u003c/code\u003e\u003c/a\u003e Bump psycopg[binary] from 3.2.6 to 3.2.9 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1484\"\u003e#1484\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/810149708ad11a284cd581972db46142120f824a\"\u003e\u003ccode\u003e8101497\u003c/code\u003e\u003c/a\u003e Bump flake8 from 7.1.2 to 7.2.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1474\"\u003e#1474\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/626ece4082c4a7f87d14566e7a3c568043233ac5\"\u003e\u003ccode\u003e626ece4\u003c/code\u003e\u003c/a\u003e Bump coverage from 7.6.12 to 7.8.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.8.0...3.10.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` from 2.3.0 to 2.3.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pandas-dev/pandas/releases\"\u003epandas's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePandas 2.3.1\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.1.\nThis release includes some improvements and fixes to the future string data type (preview feature for the upcoming pandas 3.0). We recommend that all users upgrade to this version.\u003c/p\u003e\n\u003cp\u003eSee the \u003ca href=\"https://pandas.pydata.org/pandas-docs/version/2.3.1/whatsnew/v2.3.1.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.1 supports Python 3.9 and higher.\u003c/p\u003e\n\u003cp\u003eThe release will be available on the conda-forge channel:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install pandas --channel conda-forge\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr via PyPI:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython3 -m pip install --upgrade pandas\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003ePlease report any issues with the release on the \u003ca href=\"https://github.com/pandas-dev/pandas/issues\"\u003epandas issue tracker\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThanks to all the contributors who made this release possible.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/c888af6d0bb674932007623c0867e1fbd4bdc2c6\"\u003e\u003ccode\u003ec888af6\u003c/code\u003e\u003c/a\u003e RLS: 2.3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/6aea30263edd6817a3ce609c263bd33ce59e5f0a\"\u003e\u003ccode\u003e6aea302\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/61794\"\u003e#61794\u003c/a\u003e on branch 2.3.x (DOC: prepare 2.3.1 whatsnew notes for rel...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/a160ae615fc72e709f3244314f2432706c685355\"\u003e\u003ccode\u003ea160ae6\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG[string]: incorrect index downcast in DataFrame.join (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/61\"\u003e#61\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/cf5db68cd1496339802f9b7694ab67913e9fb62b\"\u003e\u003ccode\u003ecf5db68\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] TST: update expected dtype for sum of decimals with pyarrow ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/50ad136c5e91b4cf00216bc55028711635e66169\"\u003e\u003ccode\u003e50ad136\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/61795\"\u003e#61795\u003c/a\u003e on branch 2.3.x (DOC: add section about upcoming pandas 3....\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/6c762f32575ad3cafe35a4483f8a84ece9e38d5d\"\u003e\u003ccode\u003e6c762f3\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/61770\"\u003e#61770\u003c/a\u003e on branch 2.3.x (BUG: Fix unpickling of string dtypes of l...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/fd99ef70c981fbdd3a5adb8ab3587d369b494353\"\u003e\u003ccode\u003efd99ef7\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/61705\"\u003e#61705\u003c/a\u003e on branch 2.3.x (DOC: add pandas 3.0 migration guide for t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/4e5237db60942cb09f6252ef9f79086704128f41\"\u003e\u003ccode\u003e4e5237d\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] CI: clean up wheel build workarounds now that Cython 3.1.0 i...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/4d42cd8e7e90a21b61a0f55cd07a21b40b30a599\"\u003e\u003ccode\u003e4d42cd8\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;[2.3.x] DEPS: Drop Python 3.9 (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/60792\"\u003e#60792\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/61755\"\u003e#61755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/5d32ae99292f3d5c770b65912c8b113fafb2db57\"\u003e\u003ccode\u003e5d32ae9\u003c/code\u003e\u003c/a\u003e BLD: Build wheels for 3.9 and musllinux-aarch64 for pandas 2.3 (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/61569\"\u003e#61569\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pandas-dev/pandas/compare/v2.3.0...v2.3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `moto` from 5.1.6 to 5.1.9\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getmoto/moto/blob/master/CHANGELOG.md\"\u003emoto's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.1.9\u003c/h2\u003e\n\u003cp\u003eDocker Digest for 5.1.9: \u003cem\u003esha256:1fae2f297efbd05522835fec12c20ae88cb4734e1c4c2b9297ddc3063858dcc4\u003c/em\u003e\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGeneral:\n    * Docker Image is now based on Python 3.13.\n      Various improvements have been made to reduce the total image size from 792MB to 523MB.\n    * A large number of services have been refactored to streamline the generation of API responses, and to ensure that the format is equivalent to AWS'.\n      This should not have any impact - but please let us know if you run into problems.\n\u003cp\u003eMiscellaneous:\n* CloudFormation: ChangeSets now no longer throw an error if the change set is created without the UsePreviousTemplate argument\n* CloudFormation: ChangeSets now also look at default parameters, instead of always expecting a parameter to be provided\n* EC2: describe_images() now supports the 'source-instance-id'-filter\n* Logs: describe_destinations() no longer treats the DestinationNamePrefix-parameter as mandatory\n* ResourceGroupsTaggingAPI: get_resources() now supports ECS: TaskDefinition resources\n* S3: Object notifications (to Lambda/SNS/SQS/etc) now send an URL-encoded key name\u003c/p\u003e\n\u003cp\u003eNew Methods:\n* Athena:\n* create_capacity_reservation()\n* get_capacity_reservation()\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e* ElastiCache:\n    * create_replication_group()\n    * describe_replication_groups()\n\n* EMR:\n    * list_release_labels()\n    * list_supported_instance_types()\n\n* RDS:\n    * create_db_shard_group\n    * describe_db_cluster_parameters()\n    * describe_db_shard_groups()\n    * modify_db_cluster_parameter_group()\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e5.1.8\u003c/h2\u003e\n\u003cp\u003eDocker Digest for 5.1.8: sha256:b5d4a53fc2eefd264b3bfabfc40aa3a883c68c7751d738d490f4e6f2d0191f53\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew Methods:\n\u003cpre\u003e\u003ccode\u003e* Connect-Campaigns:\n    * get_campaign_state()\n    * list_campaigns()\n    * list_tags_for_resource()\n    * pause_campaign()\n    * resume_campaign()\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/6ab7c2e6cc92a6024721869ce95d6679d27d7337\"\u003e\u003ccode\u003e6ab7c2e\u003c/code\u003e\u003c/a\u003e Pre-Release: Up Version Number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/bf89b89af9a4f9181c5a5baa091df17b577e154e\"\u003e\u003ccode\u003ebf89b89\u003c/code\u003e\u003c/a\u003e Prep release 5.1.9 (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9109\"\u003e#9109\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/e6bf4d7b86d8b3866a1141466b015e3ab0e3c14d\"\u003e\u003ccode\u003ee6bf4d7\u003c/code\u003e\u003c/a\u003e Route53: fix create and delete same record multiple times (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9105\"\u003e#9105\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/3f657e502ec8e9a7d88541337e8a4f665bbb18e0\"\u003e\u003ccode\u003e3f657e5\u003c/code\u003e\u003c/a\u003e EC2: integrate AMI responses with core serializer (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9108\"\u003e#9108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/6023a9a697e4ab3cf90fc390d81ce830a8ea4f83\"\u003e\u003ccode\u003e6023a9a\u003c/code\u003e\u003c/a\u003e STS: integrate with core response serializer (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9107\"\u003e#9107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/d37a4364bc1371951b7288d5ca0c78514797262c\"\u003e\u003ccode\u003ed37a436\u003c/code\u003e\u003c/a\u003e chore: update SSM default parameters (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9106\"\u003e#9106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/c3e2fc54b24dbaedc470dc1a2efaa99ae168f35a\"\u003e\u003ccode\u003ec3e2fc5\u003c/code\u003e\u003c/a\u003e ElastiCache: integrate with core response serializer (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9101\"\u003e#9101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/327a1fadee6c84c7483b5e375528c01499d8662d\"\u003e\u003ccode\u003e327a1fa\u003c/code\u003e\u003c/a\u003e [Athena] Add athena capacity reservation endpoint support (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9071\"\u003e#9071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/45da615564087efe620d9a88ca3d03baaf1e8b68\"\u003e\u003ccode\u003e45da615\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Types (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9104\"\u003e#9104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/d7f0dc735d2e038c6461e6db0f914cba22cc5194\"\u003e\u003ccode\u003ed7f0dc7\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Offerings (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9103\"\u003e#9103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getmoto/moto/compare/5.1.6...5.1.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `freezegun` from 1.5.2 to 1.5.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spulec/freezegun/blob/master/CHANGELOG\"\u003efreezegun's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.5.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAllow parametrized arguments called 'func' (Broken in 1.5.4)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Ability to yield fixtures (broken in 1.5.3)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix compatibility with pytest 8.4.0 when using fixtures\u003c/li\u003e\n\u003cli\u003eAdd (back) class-decorator overload to guarantee Pytype understands it\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/c9bf52c5aa12ea1b5b8647a136a92504ea071f2f\"\u003e\u003ccode\u003ec9bf52c\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/0f2bd7ed8b420da73372f4cbb0207b777caa66e9\"\u003e\u003ccode\u003e0f2bd7e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/582\"\u003e#582\u003c/a\u003e from spulec/fixture-called-func\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/a6080557cbcbe4891843934c1334430bb1c5ead7\"\u003e\u003ccode\u003ea608055\u003c/code\u003e\u003c/a\u003e Allow parametrized arguments with name 'func'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/2bb47113a5f9f290d26630c92732e58f49557179\"\u003e\u003ccode\u003e2bb4711\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/7599eeea16b8f206e881892dc104128a5b36de82\"\u003e\u003ccode\u003e7599eee\u003c/code\u003e\u003c/a\u003e Add 1.5.4 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/0d00e7ddd9ad33fc63fbed29af17853b18bc3c61\"\u003e\u003ccode\u003e0d00e7d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/579\"\u003e#579\u003c/a\u003e from zsh8/decorate_generator\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/10c93f2d6c98f82e54470b05144cd0f17d3e1b46\"\u003e\u003ccode\u003e10c93f2\u003c/code\u003e\u003c/a\u003e fix: preserve functionality in pytest yield fixtures\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/d2e0a00addb0653b0cf3be65f8fa7137c7e3bda1\"\u003e\u003ccode\u003ed2e0a00\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/6229e27d27ec61c4c55d7006db7ede6f16d7280a\"\u003e\u003ccode\u003e6229e27\u003c/code\u003e\u003c/a\u003e Add 1.5.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/3111775d6e484f55a85030c626180b592adef569\"\u003e\u003ccode\u003e3111775\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/576\"\u003e#576\u003c/a\u003e from spulec/support-fixtures-pytest-840\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spulec/freezegun/compare/1.5.2...1.5.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-lazy-fixtures` from 1.1.4 to 1.3.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/releases\"\u003epytest-lazy-fixtures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.3.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix nested fixtures collection by \u003ca href=\"https://github.com/dev-petrov\"\u003e\u003ccode\u003e@​dev-petrov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/42\"\u003edev-petrov/pytest-lazy-fixtures#42\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.3.1...1.3.2\"\u003ehttps://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.3.1...1.3.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.3.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix collect_fixtures by \u003ca href=\"https://github.com/dev-petrov\"\u003e\u003ccode\u003e@​dev-petrov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/41\"\u003edev-petrov/pytest-lazy-fixtures#41\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.3.0...1.3.1\"\u003ehttps://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.3.0...1.3.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.3.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deadfixtures support by \u003ca href=\"https://github.com/dev-petrov\"\u003e\u003ccode\u003e@​dev-petrov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/40\"\u003edev-petrov/pytest-lazy-fixtures#40\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.2.0...1.3.0\"\u003ehttps://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.2.0...1.3.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMigrate to uv, add taskfile by \u003ca href=\"https://github.com/dev-petrov\"\u003e\u003ccode\u003e@​dev-petrov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/35\"\u003edev-petrov/pytest-lazy-fixtures#35\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump astral-sh/setup-uv from 5 to 6 in the github-actions group by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/36\"\u003edev-petrov/pytest-lazy-fixtures#36\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eremove .python-version, add matrix to ci-test.yml, change requires-py… by \u003ca href=\"https://github.com/johnmakarov\"\u003e\u003ccode\u003e@​johnmakarov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/38\"\u003edev-petrov/pytest-lazy-fixtures#38\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003estyle: improve comprehensions by \u003ca href=\"https://github.com/jakubbortlik\"\u003e\u003ccode\u003e@​jakubbortlik\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/39\"\u003edev-petrov/pytest-lazy-fixtures#39\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/johnmakarov\"\u003e\u003ccode\u003e@​johnmakarov\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/38\"\u003edev-petrov/pytest-lazy-fixtures#38\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jakubbortlik\"\u003e\u003ccode\u003e@​jakubbortlik\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/pull/39\"\u003edev-petrov/pytest-lazy-fixtures#39\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.1.4...1.2.0\"\u003ehttps://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.1.4...1.2.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/commit/4955f0471b6dc41360c954587dff2d8658d33cbe\"\u003e\u003ccode\u003e4955f04\u003c/code\u003e\u003c/a\u003e Fix nested fixtures collection (\u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/issues/42\"\u003e#42\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/commit/9f65b4d0ba5f0fc3f343e9c506b86f47c3e0c333\"\u003e\u003ccode\u003e9f65b4d\u003c/code\u003e\u003c/a\u003e Fix collect_fixtures (\u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/issues/41\"\u003e#41\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/commit/a070dc479aa16ba80f41767163851fce7b4a755d\"\u003e\u003ccode\u003ea070dc4\u003c/code\u003e\u003c/a\u003e Update README.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/commit/8828fd46119065599a7be5330dab736cbe90ad27\"\u003e\u003ccode\u003e8828fd4\u003c/code\u003e\u003c/a\u003e Add pytest-deadfixtures support (\u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/issues/40\"\u003e#40\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/commit/d505b0e8ac9fe7b62b6430e60c3e9530389bb9d3\"\u003e\u003ccode\u003ed505b0e\u003c/code\u003e\u003c/a\u003e Fix hatchling build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/commit/20925caea92514e06040c5f27280f4e32bdf01be\"\u003e\u003ccode\u003e20925ca\u003c/code\u003e\u003c/a\u003e Fix publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/commit/dcc0dbfe12e5026dee0fae92529d27a28f5f6654\"\u003e\u003ccode\u003edcc0dbf\u003c/code\u003e\u003c/a\u003e style: improve comprehensions (\u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/issues/39\"\u003e#39\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/commit/0c45eaa83be698f86e0f1425d9c8e8b9b993f9ea\"\u003e\u003ccode\u003e0c45eaa\u003c/code\u003e\u003c/a\u003e remove .python-version, add matrix to ci-test.yml, change requires-python (\u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/issues/38\"\u003e#38\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/commit/64bbd989f15c3b251f77b76d18f58c5f3e09c476\"\u003e\u003ccode\u003e64bbd98\u003c/code\u003e\u003c/a\u003e Bump astral-sh/setup-uv from 5 to 6 in the github-actions group (\u003ca href=\"https://redirect.github.com/dev-petrov/pytest-lazy-fixtures/issues/36\"\u003e#36\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/commit/269c89fbec03d910b099a412722a9526d59590ca\"\u003e\u003ccode\u003e269c89f\u003c/code\u003e\u003c/a\u003e Fix taskfile\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/dev-petrov/pytest-lazy-fixtures/compare/1.1.4...1.3.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.12.0 to 0.12.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.8\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Expand \u003ccode\u003ePTH201\u003c/code\u003e to check all \u003ccode\u003ePurePath\u003c/code\u003e subclasses (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19440\"\u003e#19440\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-blind-except\u003c/code\u003e] Change \u003ccode\u003eBLE001\u003c/code\u003e to correctly parse exception tuples (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19747\"\u003e#19747\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Exclude \u003ccode\u003etyping.cast\u003c/code\u003e from \u003ccode\u003eEM101\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19656\"\u003e#19656\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix raw string handling in \u003ccode\u003eSIM905\u003c/code\u003e for embedded quotes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19591\"\u003e#19591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-import-conventions\u003c/code\u003e] Avoid false positives for NFKC-normalized \u003ccode\u003e__debug__\u003c/code\u003e import aliases in \u003ccode\u003eICN001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19411\"\u003e#19411\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eisort\u003c/code\u003e] Fix syntax error after docstring ending with backslash (\u003ccode\u003eI002\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19505\"\u003e#19505\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLC0207\u003c/code\u003e fixes as unsafe when \u003ccode\u003e*args\u003c/code\u003e unpacking is present (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19679\"\u003e#19679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Prevent infinite loop with \u003ccode\u003eI002\u003c/code\u003e (\u003ccode\u003eUP010\u003c/code\u003e, \u003ccode\u003eUP035\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19413\"\u003e#19413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Parenthesize generator expressions in f-strings (\u003ccode\u003eRUF010\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19434\"\u003e#19434\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eeradicate\u003c/code\u003e] Don't flag \u003ccode\u003epyrefly\u003c/code\u003e pragmas as unused code (\u003ccode\u003eERA001\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19731\"\u003e#19731\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReplace \u0026quot;associative\u0026quot; with \u0026quot;commutative\u0026quot; in docs for \u003ccode\u003eRUF036\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19706\"\u003e#19706\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix copy and line separator colors in dark mode (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19630\"\u003e#19630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix link to \u003ccode\u003etyping\u003c/code\u003e documentation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19648\"\u003e#19648\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Make more examples error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19695\"\u003e#19695\u003c/a\u003e,\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19673\"\u003e#19673\u003c/a\u003e,\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19672\"\u003e#19672\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eInclude column numbers in GitLab output format (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19708\"\u003e#19708\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlways expand tabs to four spaces in diagnostics (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19618\"\u003e#19618\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate pre-commit's \u003ccode\u003eruff\u003c/code\u003e id (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19654\"\u003e#19654\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexWaygood\"\u003e\u003ccode\u003e@​AlexWaygood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi\"\u003e\u003ccode\u003e@​BurntSushi\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MatthewMckee4\"\u003e\u003ccode\u003e@​MatthewMckee4\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MeGaGiGaGon\"\u003e\u003ccode\u003e@​MeGaGiGaGon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MichaReiser\"\u003e\u003ccode\u003e@​MichaReiser\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/UnboundVariable\"\u003e\u003ccode\u003e@​UnboundVariable\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cristian64\"\u003e\u003ccode\u003e@​cristian64\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/danparizher\"\u003e\u003ccode\u003e@​danparizher\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcreager\"\u003e\u003ccode\u003e@​dcreager\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/deliro\"\u003e\u003ccode\u003e@​deliro\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dhruvmanila\"\u003e\u003ccode\u003e@​dhruvmanila\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/harshil21\"\u003e\u003ccode\u003e@​harshil21\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hunterhogan\"\u003e\u003ccode\u003e@​hunterhogan\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.8\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Expand \u003ccode\u003ePTH201\u003c/code\u003e to check all \u003ccode\u003ePurePath\u003c/code\u003e subclasses (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19440\"\u003e#19440\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-blind-except\u003c/code\u003e] Change \u003ccode\u003eBLE001\u003c/code\u003e to correctly parse exception tuples (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19747\"\u003e#19747\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Exclude \u003ccode\u003etyping.cast\u003c/code\u003e from \u003ccode\u003eEM101\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19656\"\u003e#19656\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix raw string handling in \u003ccode\u003eSIM905\u003c/code\u003e for embedded quotes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19591\"\u003e#19591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-import-conventions\u003c/code\u003e] Avoid false positives for NFKC-normalized \u003ccode\u003e__debug__\u003c/code\u003e import aliases in \u003ccode\u003eICN001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19411\"\u003e#19411\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eisort\u003c/code\u003e] Fix syntax error after docstring ending with backslash (\u003ccode\u003eI002\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19505\"\u003e#19505\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLC0207\u003c/code\u003e fixes as unsafe when \u003ccode\u003e*args\u003c/code\u003e unpacking is present (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19679\"\u003e#19679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Prevent infinite loop with \u003ccode\u003eI002\u003c/code\u003e (\u003ccode\u003eUP010\u003c/code\u003e, \u003ccode\u003eUP035\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19413\"\u003e#19413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Parenthesize generator expressions in f-strings (\u003ccode\u003eRUF010\u003c/code\u003e) (\u003ca href=\"h...\n\n_Description has been truncated_","html_url":"https://github.com/Ed-BW/consult-demo/pull/14","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ed-BW%2Fconsult-demo/issues/14","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/14/packages"}},{"old_version":"1.1.1","new_version":"1.2.0","update_type":"minor","path":null,"pr_created_at":"2025-08-05T04:32:00.000Z","version_change":"1.1.1 → 1.2.0","issue":{"uuid":"2719830901","node_id":"PR_kwDOCG8vVc6iHVN1","number":2582,"state":"closed","title":"Bump the dev-dependencies group across 1 directory with 9 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-08-25T22:40:35.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-08-05T04:32:00.000Z","updated_at":"2025-08-25T22:40:35.000Z","time_to_close":1793315,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"dev-dependencies","update_count":9,"packages":[{"name":"diffoscope","old_version":"296","new_version":"303"},{"name":"mypy","old_version":"1.16.0","new_version":"1.17.1","repository_url":"https://github.com/python/mypy"},{"name":"pytest","old_version":"8.3.5","new_version":"8.4.1","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"6.1.1","new_version":"6.2.1","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-qt","old_version":"4.4.0","new_version":"4.5.0","repository_url":"https://github.com/pytest-dev/pytest-qt"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"},{"name":"translate-toolkit","old_version":"3.15.2","new_version":"3.15.6","repository_url":"https://github.com/translate/translate"},{"name":"types-python-dateutil","old_version":"2.9.0.20250516","new_version":"2.9.0.20250708","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-setuptools","old_version":"80.9.0.20250529","new_version":"80.9.0.20250801","repository_url":"https://github.com/typeshed-internal/stub_uploader"}],"path":null,"ecosystem":"pip"},"body":"Bumps the dev-dependencies group with 9 updates in the /client directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [diffoscope](https://diffoscope.org/) | `296` | `303` |\n| [mypy](https://github.com/python/mypy) | `1.16.0` | `1.17.1` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `8.4.1` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `6.1.1` | `6.2.1` |\n| [pytest-qt](https://github.com/pytest-dev/pytest-qt) | `4.4.0` | `4.5.0` |\n| [pytest-random-order](https://github.com/jbasko/pytest-random-order) | `1.1.1` | `1.2.0` |\n| [translate-toolkit](https://github.com/translate/translate) | `3.15.2` | `3.15.6` |\n| [types-python-dateutil](https://github.com/typeshed-internal/stub_uploader) | `2.9.0.20250516` | `2.9.0.20250708` |\n| [types-setuptools](https://github.com/typeshed-internal/stub_uploader) | `80.9.0.20250529` | `80.9.0.20250801` |\n\n\nUpdates `diffoscope` from 296 to 303\n\nUpdates `mypy` from 1.16.0 to 1.17.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python/mypy/blob/master/CHANGELOG.md\"\u003emypy's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003eMypy 1.17.1\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRetain \u003ccode\u003eNone\u003c/code\u003e as constraints bottom if no bottoms were provided (Stanislav Terliakov, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/19485\"\u003e19485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u0026quot;ignored exception in \u003ccode\u003ehasattr\u003c/code\u003e\u0026quot; in dmypy (Stanislav Terliakov, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/19428\"\u003e19428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent a crash when InitVar is redefined with a method in a subclass (Stanislav Terliakov, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/19453\"\u003e19453\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAcknowledgements\u003c/h3\u003e\n\u003cp\u003eThanks to all mypy contributors who contributed to this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAlexey Makridenko\u003c/li\u003e\n\u003cli\u003eBrian Schubert\u003c/li\u003e\n\u003cli\u003eChad Dombrova\u003c/li\u003e\n\u003cli\u003eChainfire\u003c/li\u003e\n\u003cli\u003eCharlie Denton\u003c/li\u003e\n\u003cli\u003eCharulata\u003c/li\u003e\n\u003cli\u003eChristoph Tyralla\u003c/li\u003e\n\u003cli\u003eCoolCat467\u003c/li\u003e\n\u003cli\u003eDonal Burns\u003c/li\u003e\n\u003cli\u003eGuy Wilson\u003c/li\u003e\n\u003cli\u003eIvan Levkivskyi\u003c/li\u003e\n\u003cli\u003ejohnthagen\u003c/li\u003e\n\u003cli\u003eJukka Lehtosalo\u003c/li\u003e\n\u003cli\u003eŁukasz Kwieciński\u003c/li\u003e\n\u003cli\u003eMarc Mueller\u003c/li\u003e\n\u003cli\u003eMichael J. Sullivan\u003c/li\u003e\n\u003cli\u003eMikhail Golubev\u003c/li\u003e\n\u003cli\u003eSebastian Rittau\u003c/li\u003e\n\u003cli\u003eShantanu\u003c/li\u003e\n\u003cli\u003eStanislav Terliakov\u003c/li\u003e\n\u003cli\u003ewyattscarpenter\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eI’d also like to thank my employer, Dropbox, for supporting mypy development.\u003c/p\u003e\n\u003ch2\u003eMypy 1.16\u003c/h2\u003e\n\u003cp\u003eWe’ve just uploaded mypy 1.16 to the Python Package Index (\u003ca href=\"https://pypi.org/project/mypy/\"\u003ePyPI\u003c/a\u003e).\nMypy is a static type checker for Python. This release includes new features and bug fixes.\nYou can install it as follows:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython3 -m pip install -U mypy\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eYou can read the full documentation for this release on \u003ca href=\"http://mypy.readthedocs.io\"\u003eRead the Docs\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eDifferent Property Getter and Setter Types\u003c/h3\u003e\n\u003cp\u003eMypy now supports using different types for a property getter and setter:\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eclass A:\n    _value: int\n\u0026lt;/tr\u0026gt;\u0026lt;/table\u0026gt; \n\u003c/code\u003e\u003c/pre\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/acb29831e286bbccde37c03bc75381f40a5fdc9e\"\u003e\u003ccode\u003eacb2983\u003c/code\u003e\u003c/a\u003e Bump version to 1.17.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/933c913fbe6d2fbf277ff8d6b2f2298f0f84be64\"\u003e\u003ccode\u003e933c913\u003c/code\u003e\u003c/a\u003e Retain \u003ccode\u003eNone\u003c/code\u003e as constraints bottom if no bottoms were provided (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19485\"\u003e#19485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/5f4428f0286df58169d2f34f4f86561ad617538b\"\u003e\u003ccode\u003e5f4428f\u003c/code\u003e\u003c/a\u003e Fix \u0026quot;ignored exception in \u003ccode\u003ehasattr\u003c/code\u003e\u0026quot; in dmypy (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19428\"\u003e#19428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/88fdeaae0abc92d605fc475fd153b4ad5b239310\"\u003e\u003ccode\u003e88fdeaa\u003c/code\u003e\u003c/a\u003e Prevent a crash when InitVar is redefined with a method in a subclass (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19453\"\u003e#19453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/e44d14f8e52a8890d08726ee753c8754edefd649\"\u003e\u003ccode\u003ee44d14f\u003c/code\u003e\u003c/a\u003e Bump version to 1.17.1+dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/0260991f6b055110c3df36bd5539d4f4489bf153\"\u003e\u003ccode\u003e0260991\u003c/code\u003e\u003c/a\u003e Update version string\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/3901aa2f9523ce55e08d94c1716028d840398753\"\u003e\u003ccode\u003e3901aa2\u003c/code\u003e\u003c/a\u003e Updates to 1.17 changelog (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19436\"\u003e#19436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/7d133961a7e759aab84223bf8038b9489daaa93c\"\u003e\u003ccode\u003e7d13396\u003c/code\u003e\u003c/a\u003e Initial changelog for 1.17 release (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19427\"\u003e#19427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/a182dec997b418b925fe0c28575c50debba0bb3a\"\u003e\u003ccode\u003ea182dec\u003c/code\u003e\u003c/a\u003e Combine the revealed types of multiple iteration steps in a more robust manne...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/ab4fd57d45b7f81cf281b17b7d3697ac9f79bc15\"\u003e\u003ccode\u003eab4fd57\u003c/code\u003e\u003c/a\u003e Improve the handling of \u0026quot;iteration dependent\u0026quot; errors and notes in finally cla...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python/mypy/compare/v1.16.0...v1.17.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 8.3.5 to 8.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.4.1\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.1 (2025-06-17)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13461\"\u003e#13461\u003c/a\u003e: Corrected \u003ccode\u003e_pytest.terminal.TerminalReporter.isatty\u003c/code\u003e to support\nbeing called as a method. Before it was just a boolean which could\nbreak correct code when using \u003ccode\u003e-o log_cli=true\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13477\"\u003e#13477\u003c/a\u003e: Reintroduced \u003ccode\u003epytest.PytestReturnNotNoneWarning\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which was removed by accident in pytest [8.4]{.title-ref}.\u003c/p\u003e\n\u003cp\u003eThis warning is raised when a test functions returns a value other than \u003ccode\u003eNone\u003c/code\u003e, which is often a mistake made by beginners.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ereturn-not-none\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13497\"\u003e#13497\u003c/a\u003e: Fixed compatibility with \u003ccode\u003eTwisted 25+\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e: Fixed outdated warning about \u003ccode\u003efaulthandler\u003c/code\u003e not working on Windows.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.0\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.0 (2025-06-02)\u003c/h1\u003e\n\u003ch2\u003eRemovals and backward incompatible breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11372\"\u003e#11372\u003c/a\u003e: Async tests will now fail, instead of warning+skipping, if you don't have any suitable plugin installed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12346\"\u003e#12346\u003c/a\u003e: Tests will now fail, instead of raising a warning, if they return any value other than None.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12874\"\u003e#12874\u003c/a\u003e: We dropped support for Python 3.8 following its end of life (2024-10-07).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12960\"\u003e#12960\u003c/a\u003e: Test functions containing a yield now cause an explicit error. They have not been run since pytest 4.0, and were previously marked as an expected failure and deprecation warning.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ethe docs \u0026lt;yield tests deprecated\u0026gt;\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDeprecations (removal in next major release)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10839\"\u003e#10839\u003c/a\u003e: Requesting an asynchronous fixture without a [pytest_fixture_setup]{.title-ref} hook that resolves it will now give a DeprecationWarning. This most commonly happens if a sync test requests an async fixture. This should have no effect on a majority of users with async tests or fixtures using async pytest plugins, but may affect non-standard hook setups or \u003ccode\u003eautouse=True\u003c/code\u003e. For guidance on how to work around this warning see \u003ccode\u003esync-test-async-fixture\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11538\"\u003e#11538\u003c/a\u003e: Added \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} as an equivalent to \u003ccode\u003epytest.raises\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} for expecting \u003ccode\u003eExceptionGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;exc\u0026quot;}. Also adds \u003ccode\u003epytest.RaisesExc\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which is now the logic behind \u003ccode\u003epytest.raises\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and used as parameter to \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;}. \u003ccode\u003eRaisesGroup\u003c/code\u003e includes the ability to specify multiple different expected exceptions, the structure of nested exception groups, and flags for emulating \u003ccode\u003eexcept* \u0026lt;except_star\u0026gt;\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}. See \u003ccode\u003eassert-matching-exception-groups\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} and docstrings for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12081\"\u003e#12081\u003c/a\u003e: Added \u003ccode\u003ecapteesys\u003c/code\u003e{.interpreted-text role=\u0026quot;fixture\u0026quot;} to capture AND pass output to next handler set by \u003ccode\u003e--capture=\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12504\"\u003e#12504\u003c/a\u003e: \u003ccode\u003epytest.mark.xfail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now accepts \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} for the \u003ccode\u003eraises\u003c/code\u003e parameter when you expect an exception group. You can also pass a \u003ccode\u003epytest.RaisesExc\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} if you e.g. want to make use of the \u003ccode\u003echeck\u003c/code\u003e parameter.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12713\"\u003e#12713\u003c/a\u003e: New [--force-short-summary]{.title-ref} option to force condensed summary output regardless of verbosity level.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/8d99211f0ce3927eb7ee579f7b4f969da06dc787\"\u003e\u003ccode\u003e8d99211\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/5dc5880715633c97310c0593f0ae356de27fa933\"\u003e\u003ccode\u003e5dc5880\u003c/code\u003e\u003c/a\u003e docs: update pytest.ini addopts example to use separate -p entries (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13529\"\u003e#13529\u003c/a\u003e) (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/d0c7ed0bfae5a5f1f9153cd1e464a421d701e925\"\u003e\u003ccode\u003ed0c7ed0\u003c/code\u003e\u003c/a\u003e Reintroduce PytestReturnNotNoneWarning (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13495\"\u003e#13495\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13527\"\u003e#13527\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/a1b3a7879589eb437e4fd97c169b228c3ed58c63\"\u003e\u003ccode\u003ea1b3a78\u003c/code\u003e\u003c/a\u003e Fix compatibility with Twisted 25 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13502\"\u003e#13502\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13531\"\u003e#13531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/4c161aba8ecaab9940040702369025595d26564c\"\u003e\u003ccode\u003e4c161ab\u003c/code\u003e\u003c/a\u003e pytester: avoid unraisableexception gc collects in inline runs to speed up te...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/a86ee09291f913b36fdeec14c42356515b91c979\"\u003e\u003ccode\u003ea86ee09\u003c/code\u003e\u003c/a\u003e Fix typo in parametrize.rst (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13514\"\u003e#13514\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13516\"\u003e#13516\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/1a0581b0227fa07afd1f2c4c6215aec3862cf1ab\"\u003e\u003ccode\u003e1a0581b\u003c/code\u003e\u003c/a\u003e Remove outdated warning about faulthandler_timeout on Windows (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13493\"\u003e#13493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/4e631a71484c2fa49e3fd9f884546af411a4888d\"\u003e\u003ccode\u003e4e631a7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13486\"\u003e#13486\u003c/a\u003e from hosmir/fixtypo (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13487\"\u003e#13487\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b49745ec529f06edfbbe531b766839763b2be3c2\"\u003e\u003ccode\u003eb49745e\u003c/code\u003e\u003c/a\u003e fix: support TerminalReporter.isatty being called (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13462\"\u003e#13462\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13483\"\u003e#13483\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/cc5ceed916d0c63696da33c67e035917194a4e87\"\u003e\u003ccode\u003ecc5ceed\u003c/code\u003e\u003c/a\u003e RELEASING: remove pytest mailing list (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13472\"\u003e#13472\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13473\"\u003e#13473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/8.3.5...8.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-cov` from 6.1.1 to 6.2.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-cov/blob/master/CHANGELOG.rst\"\u003epytest-cov's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.2.1 (2025-06-12)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded a version requirement for pytest's pluggy dependency (1.2.0, released 2023-06-21) that has the required new-style hookwrapper API.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemoved deprecated license classifier (packaging).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDisabled coverage warnings in two more situations where they have no value:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u0026quot;module-not-measured\u0026quot; in workers\u003c/li\u003e\n\u003cli\u003e\u0026quot;already-imported\u0026quot; in subprocesses\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.2.0 (2025-06-11)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe plugin now adds 3 rules in the filter warnings configuration to prevent common coverage warnings being raised as obscure errors::\u003c/p\u003e\n\u003cp\u003edefault:unclosed database in \u0026lt;sqlite3.Connection object at:ResourceWarning\nonce::PytestCovWarning\nonce::CoverageWarning\u003c/p\u003e\n\u003cp\u003eThis fixes most of the bad interactions that are occurring on pytest 8.4 with \u003ccode\u003efilterwarnings=error\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThe plugin will check if there already matching rules for the 3 categories\n(\u003ccode\u003eResourceWarning\u003c/code\u003e, \u003ccode\u003ePytestCovWarning\u003c/code\u003e, \u003ccode\u003eCoverageWarning\u003c/code\u003e) and message (\u003ccode\u003eunclosed database in \u0026lt;sqlite3.Connection object at\u003c/code\u003e) before adding the filters.\u003c/p\u003e\n\u003cp\u003eThis means you can have this in your pytest configuration for complete oblivion (not recommended, if that is not clear)::\u003c/p\u003e\n\u003cp\u003efilterwarnings = [\n\u0026quot;error\u0026quot;,\n\u0026quot;ignore:unclosed database in \u0026lt;sqlite3.Connection object at:ResourceWarning\u0026quot;,\n\u0026quot;ignore::PytestCovWarning\u0026quot;,\n\u0026quot;ignore::CoverageWarning\u0026quot;,\n]\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/55dbe43f04f839b760ea346e560276d641998c77\"\u003e\u003ccode\u003e55dbe43\u003c/code\u003e\u003c/a\u003e Bump version: 6.2.0 → 6.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d17e9b765e9832e70fe8101daa2f5f42ce447cc2\"\u003e\u003ccode\u003ed17e9b7\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/8964ab7595dd10748cad66376289476049340ea4\"\u003e\u003ccode\u003e8964ab7\u003c/code\u003e\u003c/a\u003e Add a note for this warning disable.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/e932e41e50f37d03a4d600084411661bc1f08ab8\"\u003e\u003ccode\u003ee932e41\u003c/code\u003e\u003c/a\u003e Prevent unimported warnings @ pytest-xdist workers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/573379ba34539db32cb3a43222f33b7c304af34a\"\u003e\u003ccode\u003e573379b\u003c/code\u003e\u003c/a\u003e Bring pytest-cov's suprocess management in line with coverage's process_start...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f1884e854f2687ccfe36747a11e7f3352f168f90\"\u003e\u003ccode\u003ef1884e8\u003c/code\u003e\u003c/a\u003e Fix xdist pin.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/512c6699010cc0d8145f1f926d876cafba840015\"\u003e\u003ccode\u003e512c669\u003c/code\u003e\u003c/a\u003e Added minium version requirements for pluggin (for new-style hookwrappers). P...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/629ba644a56148d09fe0f2c20602681bc20027a7\"\u003e\u003ccode\u003e629ba64\u003c/code\u003e\u003c/a\u003e Remove deprecated license classifier.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/dca5723086a00e8c145a84761b0ce810a8079892\"\u003e\u003ccode\u003edca5723\u003c/code\u003e\u003c/a\u003e Bump version: 6.1.1 → 6.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f69166a08444db4736c611cdc7746eeac9a2f158\"\u003e\u003ccode\u003ef69166a\u003c/code\u003e\u003c/a\u003e Also trigger the sqlite warning.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v6.1.1...v6.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-qt` from 4.4.0 to 4.5.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-qt/blob/master/CHANGELOG.rst\"\u003epytest-qt's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.5.0 (2025-07-01)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded official support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eDropped support for EOL Python 3.8.\u003c/li\u003e\n\u003cli\u003eDropped support for EOL PySide 2.\u003c/li\u003e\n\u003cli\u003eType annotations are now provided. Note that because the Qt library used is defined at runtime, Qt classes are currently annotated as \u003ccode\u003eAny\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eFixed PySide6 exceptions / warnings about being unable to disconnect signals\nwith \u003ccode\u003eqtbot.waitSignal\u003c/code\u003e (\u003ccode\u003e[#552](https://github.com/pytest-dev/pytest-qt/issues/552)\u003c/code\u003e\u003cem\u003e, \u003ccode\u003e[#558](https://github.com/pytest-dev/pytest-qt/issues/558)\u003c/code\u003e\u003c/em\u003e).\u003c/li\u003e\n\u003cli\u003eReduced the likelyhood of trouble when using \u003ccode\u003eqtbot.waitSignal(s)\u003c/code\u003e and\n\u003ccode\u003eqtbot.waitCallback\u003c/code\u003e where the signal/callback is emitted from a non-main\nthread. In theory, more problems remain and this isn't a proper fix yet. In\npractice, it seems impossible to provoke any problems in pytest-qt's testsuite.\n(\u003ccode\u003e[#586](https://github.com/pytest-dev/pytest-qt/issues/586)\u003c/code\u003e_)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e..  _\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/552\"\u003e#552\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/552\"\u003epytest-dev/pytest-qt#552\u003c/a\u003e\n..  _\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/558\"\u003e#558\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/558\"\u003epytest-dev/pytest-qt#558\u003c/a\u003e\n..  _\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/586\"\u003e#586\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/586\"\u003epytest-dev/pytest-qt#586\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/372ab6853bdbecea0883d5486409dcaa16062eba\"\u003e\u003ccode\u003e372ab68\u003c/code\u003e\u003c/a\u003e Release 4.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/71939a789c4ba87d2436d2a9fc9c8374b589561d\"\u003e\u003ccode\u003e71939a7\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/609\"\u003e#609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/8b2c0cbf02a64a0e63ef84668a01e6a166150455\"\u003e\u003ccode\u003e8b2c0cb\u003c/code\u003e\u003c/a\u003e fix wrong type ignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/1fd7324429b9f886d0eb06c11812f83b28b0b951\"\u003e\u003ccode\u003e1fd7324\u003c/code\u003e\u003c/a\u003e pytest dependency for mypy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/645dc83cb25caa837b2441073709ced5b0fc2f3b\"\u003e\u003ccode\u003e645dc83\u003c/code\u003e\u003c/a\u003e remove deprecated annotations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/84c653d3e2b292c7236dbe892a5ce83fc899b6b7\"\u003e\u003ccode\u003e84c653d\u003c/code\u003e\u003c/a\u003e remove already default config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/43b4147b258d7e9fe9dbea9e451cc2e610e58e9a\"\u003e\u003ccode\u003e43b4147\u003c/code\u003e\u003c/a\u003e Update qtbot.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/1626a636038fb41038de0e864392fdaec79f5105\"\u003e\u003ccode\u003e1626a63\u003c/code\u003e\u003c/a\u003e Update qtbot.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/a365e0ee9fd2e72d6dee02e7809f4121d0c8ce67\"\u003e\u003ccode\u003ea365e0e\u003c/code\u003e\u003c/a\u003e Update setup.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/7993efe352198451b4bdcbd44dacd6a1354c21d0\"\u003e\u003ccode\u003e7993efe\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.rst\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-qt/compare/4.4.0...4.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `translate-toolkit` from 3.15.2 to 3.15.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/translate/translate/releases\"\u003etranslate-toolkit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.15.6\u003c/h2\u003e\n\u003cp\u003eThe major changes in this release are:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for upcoming changes in the PO format (see \u003ca href=\"https://lists.gnu.org/archive/html/bug-gettext/2025-06/msg00018.html\"\u003ehttps://lists.gnu.org/archive/html/bug-gettext/2025-06/msg00018.html\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompatibility with lxml 6\u003c/li\u003e\n\u003cli\u003eConverters support multiple \u003ccode\u003e--input\u003c/code\u003e parameters\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eRead the full \u003ca href=\"https://docs.translatehouse.org/projects/translate-toolkit/en/latest/releases/3.15.6.html\"\u003eRelease notes\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003e3.15.5\u003c/h2\u003e\n\u003cp\u003eThe major changes in this release are:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Compose Multiplatform Resources\u003c/li\u003e\n\u003cli\u003eAdded language definition for Toki Pona\u003c/li\u003e\n\u003cli\u003eFixed publishing issues in the 3.15.4 release\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eRead the full \u003ca href=\"https://docs.translatehouse.org/projects/translate-toolkit/en/latest/releases/3.15.5.html\"\u003eRelease notes\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003e3.15.4\u003c/h2\u003e\n\u003cp\u003eThis release was yanked because it was built wrongly.\u003c/p\u003e\n\u003ch2\u003e3.15.3\u003c/h2\u003e\n\u003cp\u003eThe major changes in this release are:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImprovements to TBX, Android, and MO formats.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eRead the full \u003ca href=\"https://docs.translatehouse.org/projects/translate-toolkit/en/latest/releases/3.15.3.html\"\u003eRelease notes\u003c/a\u003e for more details.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/458a385f0fe1248b02e8afe2e1991dd2d331ba87\"\u003e\u003ccode\u003e458a385\u003c/code\u003e\u003c/a\u003e chore: release 3.15.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/cb210d0525321e75b98db8bc4c80096add18607e\"\u003e\u003ccode\u003ecb210d0\u003c/code\u003e\u003c/a\u003e feat(po): support for #= as new flags in PO file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/b152396f5430d7539e6d1871a532a78347f06970\"\u003e\u003ccode\u003eb152396\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency pytest-xdist to v3.8.0 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5630\"\u003e#5630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/f0482dc9eefc617fc9cd9c054b19c2dc3cd3bdb3\"\u003e\u003ccode\u003ef0482dc\u003c/code\u003e\u003c/a\u003e fix(deps): update dependency lxml to v6 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5624\"\u003e#5624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/3f9b17473b05daa21d429d6de9831bcc0e741651\"\u003e\u003ccode\u003e3f9b174\u003c/code\u003e\u003c/a\u003e feat: include xml.xsd for linting xliff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/50ef6304455fccd985453250140b4b88913a29f3\"\u003e\u003ccode\u003e50ef630\u003c/code\u003e\u003c/a\u003e chore(deps): update ncipollo/release-action action to v1.18.0 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5627\"\u003e#5627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/4a781fd97e70a24f3fc7c075ff3206af6ad96937\"\u003e\u003ccode\u003e4a781fd\u003c/code\u003e\u003c/a\u003e chore(deps): update ncipollo/release-action action to v1.17.0 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5626\"\u003e#5626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/a4e67d528eb4ea2ac2e6fa3f5ab4416bb45d3f22\"\u003e\u003ccode\u003ea4e67d5\u003c/code\u003e\u003c/a\u003e chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.12.1 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5625\"\u003e#5625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/16726cf2bbd0e1cc29cb0e2fe728d8045cbfe168\"\u003e\u003ccode\u003e16726cf\u003c/code\u003e\u003c/a\u003e chore(deps): update pre-commit hook macisamuele/language-formatters-pre-commi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/2235850f37a089857799e11d65a6aeb8f597ba9e\"\u003e\u003ccode\u003e2235850\u003c/code\u003e\u003c/a\u003e chore(deps): update astral-sh/setup-uv action to v6.3.1 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5622\"\u003e#5622\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/translate/translate/compare/3.15.2...3.15.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `types-python-dateutil` from 2.9.0.20250516 to 2.9.0.20250708\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/typeshed-internal/stub_uploader/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `types-setuptools` from 80.9.0.20250529 to 80.9.0.20250801\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/typeshed-internal/stub_uploader/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/freedomofpress/securedrop-client/pull/2582","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/freedomofpress%2Fsecuredrop-client/issues/2582","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2582/packages"}},{"old_version":"1.1.1","new_version":"1.2.0","update_type":"minor","path":null,"pr_created_at":"2025-08-01T02:00:14.000Z","version_change":"1.1.1 → 1.2.0","issue":{"uuid":"2711714387","node_id":"PR_kwDOCnUW4M6hoXpT","number":1342,"state":"closed","title":"Bump pytest-random-order from 1.1.1 to 1.2.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-08-01T13:52:09.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-08-01T02:00:14.000Z","updated_at":"2025-08-01T13:52:09.000Z","time_to_close":42715,"merged_at":"2025-08-01T13:52:09.000Z","merged_by":"VGPReys","closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"}],"path":null,"ecosystem":"pip"},"body":"Bumps [pytest-random-order](https://github.com/jbasko/pytest-random-order) from 1.1.1 to 1.2.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=pytest-random-order\u0026package-manager=pip\u0026previous-version=1.1.1\u0026new-version=1.2.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/haddocking/haddock3/pull/1342","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/haddocking%2Fhaddock3/issues/1342","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1342/packages"}},{"old_version":"1.1.1","new_version":"1.2.0","update_type":"minor","path":null,"pr_created_at":"2025-07-07T23:38:45.000Z","version_change":"1.1.1 → 1.2.0","issue":{"uuid":"2648125664","node_id":"PR_kwDOCG8vVc6d1zDg","number":2522,"state":"closed","title":"chore(deps-dev): bump the dev-dependencies group across 1 directory with 7 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-07-10T16:44:21.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-07-07T23:38:45.000Z","updated_at":"2025-07-10T16:44:21.000Z","time_to_close":234336,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev): bump","group_name":"dev-dependencies","update_count":7,"packages":[{"name":"diffoscope","old_version":"296","new_version":"300"},{"name":"mypy","old_version":"1.16.0","new_version":"1.16.1","repository_url":"https://github.com/python/mypy"},{"name":"pytest","old_version":"8.3.5","new_version":"8.4.1","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"6.1.1","new_version":"6.2.1","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-qt","old_version":"4.4.0","new_version":"4.5.0","repository_url":"https://github.com/pytest-dev/pytest-qt"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"},{"name":"translate-toolkit","old_version":"3.15.2","new_version":"3.15.6","repository_url":"https://github.com/translate/translate"}],"path":null,"ecosystem":"pip"},"body":"Bumps the dev-dependencies group with 7 updates in the /client directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [diffoscope](https://diffoscope.org/) | `296` | `300` |\n| [mypy](https://github.com/python/mypy) | `1.16.0` | `1.16.1` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `8.4.1` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `6.1.1` | `6.2.1` |\n| [pytest-qt](https://github.com/pytest-dev/pytest-qt) | `4.4.0` | `4.5.0` |\n| [pytest-random-order](https://github.com/jbasko/pytest-random-order) | `1.1.1` | `1.2.0` |\n| [translate-toolkit](https://github.com/translate/translate) | `3.15.2` | `3.15.6` |\n\n\nUpdates `diffoscope` from 296 to 300\n\nUpdates `mypy` from 1.16.0 to 1.16.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/68b8fa097d080c92d30a429bc74de8acd56caf85\"\u003e\u003ccode\u003e68b8fa0\u003c/code\u003e\u003c/a\u003e Bump version to 1.16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/e253eded9c887630f3f5404c4b9f73f13570476a\"\u003e\u003ccode\u003ee253ede\u003c/code\u003e\u003c/a\u003e Single underscore is not a sunder (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19273\"\u003e#19273\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/9fb5ff66c51bd971d7a6b1260cc0ec9f1b82cc06\"\u003e\u003ccode\u003e9fb5ff6\u003c/code\u003e\u003c/a\u003e Fix properties with setters after deleters (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19248\"\u003e#19248\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/c20fd7838338cd65d6c7c6e252eda85996cfc98e\"\u003e\u003ccode\u003ec20fd78\u003c/code\u003e\u003c/a\u003e Handle assignment of bound methods in class bodies (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19233\"\u003e#19233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/c86480ce51e4bb6db21f4b3f0b3ec8833aafc8ce\"\u003e\u003ccode\u003ec86480c\u003c/code\u003e\u003c/a\u003e Tighten metaclass \u003cstrong\u003ecall\u003c/strong\u003e handling in protocols (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19191\"\u003e#19191\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/cb3c6ec6a7aaa96a0e26768a946ac63ea14115f2\"\u003e\u003ccode\u003ecb3c6ec\u003c/code\u003e\u003c/a\u003e Fix crash on partial type used as context (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19216\"\u003e#19216\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/c39f5e73c47182e51c5d8d488f7cc7301257c974\"\u003e\u003ccode\u003ec39f5e7\u003c/code\u003e\u003c/a\u003e [mypyc] Fixing condition for handling user-defined \u003cstrong\u003edel\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19188\"\u003e#19188\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/0a4f28431faa18e59d35bc269cb0ea6c00810653\"\u003e\u003ccode\u003e0a4f284\u003c/code\u003e\u003c/a\u003e Fix crash on invalid property inside its own body (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19208\"\u003e#19208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/9b079f6592740a51c0e629728eeb0324ad85126f\"\u003e\u003ccode\u003e9b079f6\u003c/code\u003e\u003c/a\u003e Bump version to 1.16.1+dev\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/python/mypy/compare/v1.16.0...v1.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 8.3.5 to 8.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.4.1\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.1 (2025-06-17)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13461\"\u003e#13461\u003c/a\u003e: Corrected \u003ccode\u003e_pytest.terminal.TerminalReporter.isatty\u003c/code\u003e to support\nbeing called as a method. Before it was just a boolean which could\nbreak correct code when using \u003ccode\u003e-o log_cli=true\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13477\"\u003e#13477\u003c/a\u003e: Reintroduced \u003ccode\u003epytest.PytestReturnNotNoneWarning\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which was removed by accident in pytest [8.4]{.title-ref}.\u003c/p\u003e\n\u003cp\u003eThis warning is raised when a test functions returns a value other than \u003ccode\u003eNone\u003c/code\u003e, which is often a mistake made by beginners.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ereturn-not-none\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13497\"\u003e#13497\u003c/a\u003e: Fixed compatibility with \u003ccode\u003eTwisted 25+\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e: Fixed outdated warning about \u003ccode\u003efaulthandler\u003c/code\u003e not working on Windows.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.0\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.0 (2025-06-02)\u003c/h1\u003e\n\u003ch2\u003eRemovals and backward incompatible breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11372\"\u003e#11372\u003c/a\u003e: Async tests will now fail, instead of warning+skipping, if you don't have any suitable plugin installed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12346\"\u003e#12346\u003c/a\u003e: Tests will now fail, instead of raising a warning, if they return any value other than None.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12874\"\u003e#12874\u003c/a\u003e: We dropped support for Python 3.8 following its end of life (2024-10-07).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12960\"\u003e#12960\u003c/a\u003e: Test functions containing a yield now cause an explicit error. They have not been run since pytest 4.0, and were previously marked as an expected failure and deprecation warning.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ethe docs \u0026lt;yield tests deprecated\u0026gt;\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDeprecations (removal in next major release)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10839\"\u003e#10839\u003c/a\u003e: Requesting an asynchronous fixture without a [pytest_fixture_setup]{.title-ref} hook that resolves it will now give a DeprecationWarning. This most commonly happens if a sync test requests an async fixture. This should have no effect on a majority of users with async tests or fixtures using async pytest plugins, but may affect non-standard hook setups or \u003ccode\u003eautouse=True\u003c/code\u003e. For guidance on how to work around this warning see \u003ccode\u003esync-test-async-fixture\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11538\"\u003e#11538\u003c/a\u003e: Added \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} as an equivalent to \u003ccode\u003epytest.raises\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} for expecting \u003ccode\u003eExceptionGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;exc\u0026quot;}. Also adds \u003ccode\u003epytest.RaisesExc\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which is now the logic behind \u003ccode\u003epytest.raises\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and used as parameter to \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;}. \u003ccode\u003eRaisesGroup\u003c/code\u003e includes the ability to specify multiple different expected exceptions, the structure of nested exception groups, and flags for emulating \u003ccode\u003eexcept* \u0026lt;except_star\u0026gt;\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}. See \u003ccode\u003eassert-matching-exception-groups\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} and docstrings for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12081\"\u003e#12081\u003c/a\u003e: Added \u003ccode\u003ecapteesys\u003c/code\u003e{.interpreted-text role=\u0026quot;fixture\u0026quot;} to capture AND pass output to next handler set by \u003ccode\u003e--capture=\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12504\"\u003e#12504\u003c/a\u003e: \u003ccode\u003epytest.mark.xfail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now accepts \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} for the \u003ccode\u003eraises\u003c/code\u003e parameter when you expect an exception group. You can also pass a \u003ccode\u003epytest.RaisesExc\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} if you e.g. want to make use of the \u003ccode\u003echeck\u003c/code\u003e parameter.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12713\"\u003e#12713\u003c/a\u003e: New [--force-short-summary]{.title-ref} option to force condensed summary output regardless of verbosity level.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/8d99211f0ce3927eb7ee579f7b4f969da06dc787\"\u003e\u003ccode\u003e8d99211\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/5dc5880715633c97310c0593f0ae356de27fa933\"\u003e\u003ccode\u003e5dc5880\u003c/code\u003e\u003c/a\u003e docs: update pytest.ini addopts example to use separate -p entries (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13529\"\u003e#13529\u003c/a\u003e) (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/d0c7ed0bfae5a5f1f9153cd1e464a421d701e925\"\u003e\u003ccode\u003ed0c7ed0\u003c/code\u003e\u003c/a\u003e Reintroduce PytestReturnNotNoneWarning (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13495\"\u003e#13495\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13527\"\u003e#13527\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/a1b3a7879589eb437e4fd97c169b228c3ed58c63\"\u003e\u003ccode\u003ea1b3a78\u003c/code\u003e\u003c/a\u003e Fix compatibility with Twisted 25 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13502\"\u003e#13502\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13531\"\u003e#13531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/4c161aba8ecaab9940040702369025595d26564c\"\u003e\u003ccode\u003e4c161ab\u003c/code\u003e\u003c/a\u003e pytester: avoid unraisableexception gc collects in inline runs to speed up te...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/a86ee09291f913b36fdeec14c42356515b91c979\"\u003e\u003ccode\u003ea86ee09\u003c/code\u003e\u003c/a\u003e Fix typo in parametrize.rst (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13514\"\u003e#13514\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13516\"\u003e#13516\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/1a0581b0227fa07afd1f2c4c6215aec3862cf1ab\"\u003e\u003ccode\u003e1a0581b\u003c/code\u003e\u003c/a\u003e Remove outdated warning about faulthandler_timeout on Windows (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13493\"\u003e#13493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/4e631a71484c2fa49e3fd9f884546af411a4888d\"\u003e\u003ccode\u003e4e631a7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13486\"\u003e#13486\u003c/a\u003e from hosmir/fixtypo (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13487\"\u003e#13487\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b49745ec529f06edfbbe531b766839763b2be3c2\"\u003e\u003ccode\u003eb49745e\u003c/code\u003e\u003c/a\u003e fix: support TerminalReporter.isatty being called (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13462\"\u003e#13462\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13483\"\u003e#13483\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/cc5ceed916d0c63696da33c67e035917194a4e87\"\u003e\u003ccode\u003ecc5ceed\u003c/code\u003e\u003c/a\u003e RELEASING: remove pytest mailing list (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13472\"\u003e#13472\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13473\"\u003e#13473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/8.3.5...8.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-cov` from 6.1.1 to 6.2.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-cov/blob/master/CHANGELOG.rst\"\u003epytest-cov's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.2.1 (2025-06-12)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded a version requirement for pytest's pluggy dependency (1.2.0, released 2023-06-21) that has the required new-style hookwrapper API.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemoved deprecated license classifier (packaging).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDisabled coverage warnings in two more situations where they have no value:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u0026quot;module-not-measured\u0026quot; in workers\u003c/li\u003e\n\u003cli\u003e\u0026quot;already-imported\u0026quot; in subprocesses\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.2.0 (2025-06-11)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe plugin now adds 3 rules in the filter warnings configuration to prevent common coverage warnings being raised as obscure errors::\u003c/p\u003e\n\u003cp\u003edefault:unclosed database in \u0026lt;sqlite3.Connection object at:ResourceWarning\nonce::PytestCovWarning\nonce::CoverageWarning\u003c/p\u003e\n\u003cp\u003eThis fixes most of the bad interactions that are occurring on pytest 8.4 with \u003ccode\u003efilterwarnings=error\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThe plugin will check if there already matching rules for the 3 categories\n(\u003ccode\u003eResourceWarning\u003c/code\u003e, \u003ccode\u003ePytestCovWarning\u003c/code\u003e, \u003ccode\u003eCoverageWarning\u003c/code\u003e) and message (\u003ccode\u003eunclosed database in \u0026lt;sqlite3.Connection object at\u003c/code\u003e) before adding the filters.\u003c/p\u003e\n\u003cp\u003eThis means you can have this in your pytest configuration for complete oblivion (not recommended, if that is not clear)::\u003c/p\u003e\n\u003cp\u003efilterwarnings = [\n\u0026quot;error\u0026quot;,\n\u0026quot;ignore:unclosed database in \u0026lt;sqlite3.Connection object at:ResourceWarning\u0026quot;,\n\u0026quot;ignore::PytestCovWarning\u0026quot;,\n\u0026quot;ignore::CoverageWarning\u0026quot;,\n]\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/55dbe43f04f839b760ea346e560276d641998c77\"\u003e\u003ccode\u003e55dbe43\u003c/code\u003e\u003c/a\u003e Bump version: 6.2.0 → 6.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d17e9b765e9832e70fe8101daa2f5f42ce447cc2\"\u003e\u003ccode\u003ed17e9b7\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/8964ab7595dd10748cad66376289476049340ea4\"\u003e\u003ccode\u003e8964ab7\u003c/code\u003e\u003c/a\u003e Add a note for this warning disable.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/e932e41e50f37d03a4d600084411661bc1f08ab8\"\u003e\u003ccode\u003ee932e41\u003c/code\u003e\u003c/a\u003e Prevent unimported warnings @ pytest-xdist workers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/573379ba34539db32cb3a43222f33b7c304af34a\"\u003e\u003ccode\u003e573379b\u003c/code\u003e\u003c/a\u003e Bring pytest-cov's suprocess management in line with coverage's process_start...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f1884e854f2687ccfe36747a11e7f3352f168f90\"\u003e\u003ccode\u003ef1884e8\u003c/code\u003e\u003c/a\u003e Fix xdist pin.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/512c6699010cc0d8145f1f926d876cafba840015\"\u003e\u003ccode\u003e512c669\u003c/code\u003e\u003c/a\u003e Added minium version requirements for pluggin (for new-style hookwrappers). P...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/629ba644a56148d09fe0f2c20602681bc20027a7\"\u003e\u003ccode\u003e629ba64\u003c/code\u003e\u003c/a\u003e Remove deprecated license classifier.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/dca5723086a00e8c145a84761b0ce810a8079892\"\u003e\u003ccode\u003edca5723\u003c/code\u003e\u003c/a\u003e Bump version: 6.1.1 → 6.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f69166a08444db4736c611cdc7746eeac9a2f158\"\u003e\u003ccode\u003ef69166a\u003c/code\u003e\u003c/a\u003e Also trigger the sqlite warning.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v6.1.1...v6.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-qt` from 4.4.0 to 4.5.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-qt/blob/master/CHANGELOG.rst\"\u003epytest-qt's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.5.0 (2025-07-01)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded official support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eDropped support for EOL Python 3.8.\u003c/li\u003e\n\u003cli\u003eDropped support for EOL PySide 2.\u003c/li\u003e\n\u003cli\u003eType annotations are now provided. Note that because the Qt library used is defined at runtime, Qt classes are currently annotated as \u003ccode\u003eAny\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eFixed PySide6 exceptions / warnings about being unable to disconnect signals\nwith \u003ccode\u003eqtbot.waitSignal\u003c/code\u003e (\u003ccode\u003e[#552](https://github.com/pytest-dev/pytest-qt/issues/552)\u003c/code\u003e\u003cem\u003e, \u003ccode\u003e[#558](https://github.com/pytest-dev/pytest-qt/issues/558)\u003c/code\u003e\u003c/em\u003e).\u003c/li\u003e\n\u003cli\u003eReduced the likelyhood of trouble when using \u003ccode\u003eqtbot.waitSignal(s)\u003c/code\u003e and\n\u003ccode\u003eqtbot.waitCallback\u003c/code\u003e where the signal/callback is emitted from a non-main\nthread. In theory, more problems remain and this isn't a proper fix yet. In\npractice, it seems impossible to provoke any problems in pytest-qt's testsuite.\n(\u003ccode\u003e[#586](https://github.com/pytest-dev/pytest-qt/issues/586)\u003c/code\u003e_)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e..  _\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/552\"\u003e#552\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/552\"\u003epytest-dev/pytest-qt#552\u003c/a\u003e\n..  _\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/558\"\u003e#558\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/558\"\u003epytest-dev/pytest-qt#558\u003c/a\u003e\n..  _\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/586\"\u003e#586\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/586\"\u003epytest-dev/pytest-qt#586\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/372ab6853bdbecea0883d5486409dcaa16062eba\"\u003e\u003ccode\u003e372ab68\u003c/code\u003e\u003c/a\u003e Release 4.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/71939a789c4ba87d2436d2a9fc9c8374b589561d\"\u003e\u003ccode\u003e71939a7\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-qt/issues/609\"\u003e#609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/8b2c0cbf02a64a0e63ef84668a01e6a166150455\"\u003e\u003ccode\u003e8b2c0cb\u003c/code\u003e\u003c/a\u003e fix wrong type ignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/1fd7324429b9f886d0eb06c11812f83b28b0b951\"\u003e\u003ccode\u003e1fd7324\u003c/code\u003e\u003c/a\u003e pytest dependency for mypy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/645dc83cb25caa837b2441073709ced5b0fc2f3b\"\u003e\u003ccode\u003e645dc83\u003c/code\u003e\u003c/a\u003e remove deprecated annotations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/84c653d3e2b292c7236dbe892a5ce83fc899b6b7\"\u003e\u003ccode\u003e84c653d\u003c/code\u003e\u003c/a\u003e remove already default config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/43b4147b258d7e9fe9dbea9e451cc2e610e58e9a\"\u003e\u003ccode\u003e43b4147\u003c/code\u003e\u003c/a\u003e Update qtbot.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/1626a636038fb41038de0e864392fdaec79f5105\"\u003e\u003ccode\u003e1626a63\u003c/code\u003e\u003c/a\u003e Update qtbot.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/a365e0ee9fd2e72d6dee02e7809f4121d0c8ce67\"\u003e\u003ccode\u003ea365e0e\u003c/code\u003e\u003c/a\u003e Update setup.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-qt/commit/7993efe352198451b4bdcbd44dacd6a1354c21d0\"\u003e\u003ccode\u003e7993efe\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.rst\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-qt/compare/4.4.0...4.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `translate-toolkit` from 3.15.2 to 3.15.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/translate/translate/releases\"\u003etranslate-toolkit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.15.6\u003c/h2\u003e\n\u003cp\u003eThe major changes in this release are:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for upcoming changes in the PO format (see \u003ca href=\"https://lists.gnu.org/archive/html/bug-gettext/2025-06/msg00018.html\"\u003ehttps://lists.gnu.org/archive/html/bug-gettext/2025-06/msg00018.html\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompatibility with lxml 6\u003c/li\u003e\n\u003cli\u003eConverters support multiple \u003ccode\u003e--input\u003c/code\u003e parameters\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eRead the full \u003ca href=\"https://docs.translatehouse.org/projects/translate-toolkit/en/latest/releases/3.15.6.html\"\u003eRelease notes\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003e3.15.5\u003c/h2\u003e\n\u003cp\u003eThe major changes in this release are:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Compose Multiplatform Resources\u003c/li\u003e\n\u003cli\u003eAdded language definition for Toki Pona\u003c/li\u003e\n\u003cli\u003eFixed publishing issues in the 3.15.4 release\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eRead the full \u003ca href=\"https://docs.translatehouse.org/projects/translate-toolkit/en/latest/releases/3.15.5.html\"\u003eRelease notes\u003c/a\u003e for more details.\u003c/p\u003e\n\u003ch2\u003e3.15.4\u003c/h2\u003e\n\u003cp\u003eThis release was yanked because it was built wrongly.\u003c/p\u003e\n\u003ch2\u003e3.15.3\u003c/h2\u003e\n\u003cp\u003eThe major changes in this release are:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImprovements to TBX, Android, and MO formats.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eRead the full \u003ca href=\"https://docs.translatehouse.org/projects/translate-toolkit/en/latest/releases/3.15.3.html\"\u003eRelease notes\u003c/a\u003e for more details.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/458a385f0fe1248b02e8afe2e1991dd2d331ba87\"\u003e\u003ccode\u003e458a385\u003c/code\u003e\u003c/a\u003e chore: release 3.15.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/cb210d0525321e75b98db8bc4c80096add18607e\"\u003e\u003ccode\u003ecb210d0\u003c/code\u003e\u003c/a\u003e feat(po): support for #= as new flags in PO file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/b152396f5430d7539e6d1871a532a78347f06970\"\u003e\u003ccode\u003eb152396\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency pytest-xdist to v3.8.0 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5630\"\u003e#5630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/f0482dc9eefc617fc9cd9c054b19c2dc3cd3bdb3\"\u003e\u003ccode\u003ef0482dc\u003c/code\u003e\u003c/a\u003e fix(deps): update dependency lxml to v6 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5624\"\u003e#5624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/3f9b17473b05daa21d429d6de9831bcc0e741651\"\u003e\u003ccode\u003e3f9b174\u003c/code\u003e\u003c/a\u003e feat: include xml.xsd for linting xliff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/50ef6304455fccd985453250140b4b88913a29f3\"\u003e\u003ccode\u003e50ef630\u003c/code\u003e\u003c/a\u003e chore(deps): update ncipollo/release-action action to v1.18.0 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5627\"\u003e#5627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/4a781fd97e70a24f3fc7c075ff3206af6ad96937\"\u003e\u003ccode\u003e4a781fd\u003c/code\u003e\u003c/a\u003e chore(deps): update ncipollo/release-action action to v1.17.0 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5626\"\u003e#5626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/a4e67d528eb4ea2ac2e6fa3f5ab4416bb45d3f22\"\u003e\u003ccode\u003ea4e67d5\u003c/code\u003e\u003c/a\u003e chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.12.1 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5625\"\u003e#5625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/16726cf2bbd0e1cc29cb0e2fe728d8045cbfe168\"\u003e\u003ccode\u003e16726cf\u003c/code\u003e\u003c/a\u003e chore(deps): update pre-commit hook macisamuele/language-formatters-pre-commi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/translate/translate/commit/2235850f37a089857799e11d65a6aeb8f597ba9e\"\u003e\u003ccode\u003e2235850\u003c/code\u003e\u003c/a\u003e chore(deps): update astral-sh/setup-uv action to v6.3.1 (\u003ca href=\"https://redirect.github.com/translate/translate/issues/5622\"\u003e#5622\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/translate/translate/compare/3.15.2...3.15.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/freedomofpress/securedrop-client/pull/2522","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/freedomofpress%2Fsecuredrop-client/issues/2522","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2522/packages"}},{"old_version":"1.1.1","new_version":"1.2.0","update_type":"minor","path":null,"pr_created_at":"2025-07-07T22:08:39.000Z","version_change":"1.1.1 → 1.2.0","issue":{"uuid":"2647978577","node_id":"PR_kwDOO_gais6d1PJR","number":8,"state":"open","title":"Upgrade: bump the pip-updates group across 1 directory with 8 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-07-07T22:08:39.000Z","updated_at":"2025-07-07T22:08:40.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Upgrade: bump","group_name":"pip-updates","update_count":8,"packages":[{"name":"django","old_version":"5.2.3","new_version":"5.2.4","repository_url":"https://github.com/django/django"},{"name":"boto3","old_version":"1.38.39","new_version":"1.39.3","repository_url":"https://github.com/boto/boto3"},{"name":"datamodel-code-generator","old_version":"0.31.1","new_version":"0.31.2","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"sentry-sdk","old_version":"2.30.0","new_version":"2.32.0","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"},{"name":"django-simple-history","old_version":"3.8.0","new_version":"3.10.1","repository_url":"https://github.com/django-commons/django-simple-history"},{"name":"moto","old_version":"5.1.6","new_version":"5.1.8","repository_url":"https://github.com/getmoto/moto"},{"name":"ruff","old_version":"0.12.0","new_version":"0.12.2","repository_url":"https://github.com/astral-sh/ruff"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-updates group with 8 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [django](https://github.com/django/django) | `5.2.3` | `5.2.4` |\n| [boto3](https://github.com/boto/boto3) | `1.38.39` | `1.39.3` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.31.1` | `0.31.2` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.30.0` | `2.32.0` |\n| [pytest-random-order](https://github.com/jbasko/pytest-random-order) | `1.1.1` | `1.2.0` |\n| [django-simple-history](https://github.com/django-commons/django-simple-history) | `3.8.0` | `3.10.1` |\n| [moto](https://github.com/getmoto/moto) | `5.1.6` | `5.1.8` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.12.0` | `0.12.2` |\n\n\nUpdates `django` from 5.2.3 to 5.2.4\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/c941d0deec0ea08a30670be0fac879f2372f071b\"\u003e\u003ccode\u003ec941d0d\u003c/code\u003e\u003c/a\u003e [5.2.x] Bumped version for 5.2.4 release.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/47a618d45c6e40dd59f4cdd46fd5fc7d11626f6d\"\u003e\u003ccode\u003e47a618d\u003c/code\u003e\u003c/a\u003e Fixed AttributeError for enterContext() on Python \u0026lt; 3.11.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/a150160c9fc6ba6220f1e63863b03e7f7978b747\"\u003e\u003ccode\u003ea150160\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/36464\"\u003e#36464\u003c/a\u003e -- Fixed \u0026quot;__in\u0026quot; tuple lookup on backends lacking native ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/db5da3c91c3122300680c4e7200a463273a5351e\"\u003e\u003ccode\u003edb5da3c\u003c/code\u003e\u003c/a\u003e [5.2.x] Clarified that only latest dependency versions are valid for security...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/359af3779a66281361aff50629c25e81fcfec048\"\u003e\u003ccode\u003e359af37\u003c/code\u003e\u003c/a\u003e [5.2.x] Added guidance on AI-assisted security reports to docs/internals/secu...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/1d89691c7481fbcef6a7bc396e41a651372c1cf3\"\u003e\u003ccode\u003e1d89691\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/36453\"\u003e#36453\u003c/a\u003e -- Made When.condition resolve with for_save=False.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/4de4edf2c05cc80c514c989db480f2fe23ad5ee2\"\u003e\u003ccode\u003e4de4edf\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/36447\"\u003e#36447\u003c/a\u003e -- Selected preferred media type based on quality.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/f5cc6a888b60e0f79415cdd206cedbcc441eed82\"\u003e\u003ccode\u003ef5cc6a8\u003c/code\u003e\u003c/a\u003e [5.2.x] Corrected jsonfield fieldlookup references.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/538616136be0f9c29f9122984a29e2c0a316958d\"\u003e\u003ccode\u003e5386161\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/36463\"\u003e#36463\u003c/a\u003e -- Fixed grammar in docs/intro/contributing.txt.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/django/commit/e3b2370795d8373c62b799b7c9fa3fef1c0a2bb1\"\u003e\u003ccode\u003ee3b2370\u003c/code\u003e\u003c/a\u003e [5.2.x] Fixed \u003ca href=\"https://redirect.github.com/django/django/issues/36454\"\u003e#36454\u003c/a\u003e -- Fixed typo in docs/intro/tutorial08.txt.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/django/django/compare/5.2.3...5.2.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `boto3` from 1.38.39 to 1.39.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/0e651f9c495df0b19c2de4d3fa572f6f88c38bbd\"\u003e\u003ccode\u003e0e651f9\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.39.3'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/910c8bca827ef2889b86bd2f1e037ac448653b3b\"\u003e\u003ccode\u003e910c8bc\u003c/code\u003e\u003c/a\u003e Bumping version to 1.39.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/579757ae9f9128a3bcb12d536981c09f92bfe36b\"\u003e\u003ccode\u003e579757a\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/0eec555e89ffbe3b34b8246c47c7d275c2220a51\"\u003e\u003ccode\u003e0eec555\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.39.2'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/0dca55060bc4c1ab1c76b85b9fcad6c981ca3484\"\u003e\u003ccode\u003e0dca550\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.39.2' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/7605794add34bd7dee5cf968a3014c873d865937\"\u003e\u003ccode\u003e7605794\u003c/code\u003e\u003c/a\u003e Bumping version to 1.39.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/f37d23b5aff77158a3a65f066d4c905cafa77e5b\"\u003e\u003ccode\u003ef37d23b\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/25a2ebae8632df7ad4e265a6c08c2a9b38f4418c\"\u003e\u003ccode\u003e25a2eba\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.39.1'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/663f92d964923b1576905b7a7800b88fe71d98d7\"\u003e\u003ccode\u003e663f92d\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.39.1' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/ed51302c69bb324d8a8244997895248972a46f7f\"\u003e\u003ccode\u003eed51302\u003c/code\u003e\u003c/a\u003e Bumping version to 1.39.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.38.39...1.39.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `datamodel-code-generator` from 0.31.1 to 0.31.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/releases\"\u003edatamodel-code-generator's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.31.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: prevent code injection through filename in generated headers by \u003ca href=\"https://github.com/koxudaxi\"\u003e\u003ccode\u003e@​koxudaxi\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2428\"\u003ekoxudaxi/datamodel-code-generator#2428\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.31.2\"\u003ehttps://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.31.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/5553dd2c8ef503a3010433f7f24f2179efe76fea\"\u003e\u003ccode\u003e5553dd2\u003c/code\u003e\u003c/a\u003e fix: prevent code injection through filename in generated headers (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2428\"\u003e#2428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.31.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentry-sdk` from 2.30.0 to 2.32.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/releases\"\u003esentry-sdk's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(sessions): Add top-level start- and end session methods (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4474\"\u003e#4474\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(openai-agents): Set tool span to failed if an error is raised in the tool (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4527\"\u003e#4527\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(integrations/ray): Correctly pass keyword arguments to ray.remote function (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4430\"\u003e#4430\u003c/a\u003e) by \u003ca href=\"https://github.com/svartalf\"\u003e\u003ccode\u003e@​svartalf\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Make \u003ccode\u003espan_map\u003c/code\u003e an instance variable (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4476\"\u003e#4476\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Ensure no duplicate \u003ccode\u003eSentryLangchainCallback\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4485\"\u003e#4485\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(Litestar): Apply \u003ccode\u003efailed_request_status_codes\u003c/code\u003e to exceptions raised in middleware (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4074\"\u003e#4074\u003c/a\u003e) by \u003ca href=\"https://github.com/vrslev\"\u003e\u003ccode\u003e@​vrslev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.31.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eNew Integration (BETA):\u003c/strong\u003e Add support for \u003ccode\u003eopenai-agents\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4437\"\u003e#4437\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe can now instrument AI agents that are created with the \u003ca href=\"https://openai.github.io/openai-agents-python/\"\u003eOpenAI Agents SDK\u003c/a\u003e out of the box.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.openai_agents import OpenAIAgentsIntegration\n\u003ch1\u003eAdd the OpenAIAgentsIntegration to your sentry_sdk.init call:\u003c/h1\u003e\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\ndsn=\u0026quot;...\u0026quot;,\u003cbr /\u003e\nintegrations=[\u003cbr /\u003e\nOpenAIAgentsIntegration(),\u003cbr /\u003e\n]\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eFor more information see the \u003ca href=\"https://docs.sentry.io/platforms/python/integrations/openai-agents/\"\u003eOpenAI Agents integrations documentation\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eLogs: Add support for \u003ccode\u003edict\u003c/code\u003e arguments (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4478\"\u003e#4478\u003c/a\u003e) by \u003ca href=\"https://github.com/AbhiPrasad\"\u003e\u003ccode\u003e@​AbhiPrasad\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Cursor generated rules (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4493\"\u003e#4493\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGreatly simplify Langchain integrations \u003ccode\u003e_wrap_configure\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4479\"\u003e#4479\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Remove tracerite pin (almost) (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4504\"\u003e#4504\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(profiling): Ensure profiler thread exits when needed (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4497\"\u003e#4497\u003c/a\u003e) by \u003ca href=\"https://github.com/Zylphrex\"\u003e\u003ccode\u003e@​Zylphrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Do not install newest \u003ccode\u003etracerite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4494\"\u003e#4494\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(scope): Handle token reset \u003ccode\u003eLookupError\u003c/code\u003es gracefully (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4481\"\u003e#4481\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Tox update (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4509\"\u003e#4509\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Upper bound on fakeredis on old Python versions (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4482\"\u003e#4482\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Regenerate tox (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4457\"\u003e#4457\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md\"\u003esentry-sdk's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(sessions): Add top-level start- and end session methods (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4474\"\u003e#4474\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(openai-agents): Set tool span to failed if an error is raised in the tool (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4527\"\u003e#4527\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(integrations/ray): Correctly pass keyword arguments to ray.remote function (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4430\"\u003e#4430\u003c/a\u003e) by \u003ca href=\"https://github.com/svartalf\"\u003e\u003ccode\u003e@​svartalf\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Make \u003ccode\u003espan_map\u003c/code\u003e an instance variable (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4476\"\u003e#4476\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Ensure no duplicate \u003ccode\u003eSentryLangchainCallback\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4485\"\u003e#4485\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(Litestar): Apply \u003ccode\u003efailed_request_status_codes\u003c/code\u003e to exceptions raised in middleware (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4074\"\u003e#4074\u003c/a\u003e) by \u003ca href=\"https://github.com/vrslev\"\u003e\u003ccode\u003e@​vrslev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.31.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eNew Integration (BETA):\u003c/strong\u003e Add support for \u003ccode\u003eopenai-agents\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4437\"\u003e#4437\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe can now instrument AI agents that are created with the \u003ca href=\"https://openai.github.io/openai-agents-python/\"\u003eOpenAI Agents SDK\u003c/a\u003e out of the box.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.openai_agents import OpenAIAgentsIntegration\n\u003ch1\u003eAdd the OpenAIAgentsIntegration to your sentry_sdk.init call:\u003c/h1\u003e\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\ndsn=\u0026quot;...\u0026quot;,\u003cbr /\u003e\nintegrations=[\u003cbr /\u003e\nOpenAIAgentsIntegration(),\u003cbr /\u003e\n]\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eFor more information see the \u003ca href=\"https://docs.sentry.io/platforms/python/integrations/openai-agents/\"\u003eOpenAI Agents integrations documentation\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eLogs: Add support for \u003ccode\u003edict\u003c/code\u003e arguments (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4478\"\u003e#4478\u003c/a\u003e) by \u003ca href=\"https://github.com/AbhiPrasad\"\u003e\u003ccode\u003e@​AbhiPrasad\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Cursor generated rules (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4493\"\u003e#4493\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGreatly simplify Langchain integrations \u003ccode\u003e_wrap_configure\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4479\"\u003e#4479\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Remove tracerite pin (almost) (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4504\"\u003e#4504\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(profiling): Ensure profiler thread exits when needed (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4497\"\u003e#4497\u003c/a\u003e) by \u003ca href=\"https://github.com/Zylphrex\"\u003e\u003ccode\u003e@​Zylphrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Do not install newest \u003ccode\u003etracerite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4494\"\u003e#4494\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(scope): Handle token reset \u003ccode\u003eLookupError\u003c/code\u003es gracefully (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4481\"\u003e#4481\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Tox update (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4509\"\u003e#4509\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Upper bound on fakeredis on old Python versions (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4482\"\u003e#4482\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Regenerate tox (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4457\"\u003e#4457\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/4b022dc731aa10e8cdb1cc8342c06374b226b6f4\"\u003e\u003ccode\u003e4b022dc\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into release/2.32.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/2634a523b3416748cf952bc517641594b9b40bac\"\u003e\u003ccode\u003e2634a52\u003c/code\u003e\u003c/a\u003e Pin zope.event (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4531\"\u003e#4531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/c815a3245d10e45bebee5b47292deec438a4d4d2\"\u003e\u003ccode\u003ec815a32\u003c/code\u003e\u003c/a\u003e updated changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/bca8816ac1f84fe4304682bd6de173fbf0c005a3\"\u003e\u003ccode\u003ebca8816\u003c/code\u003e\u003c/a\u003e release: 2.32.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/546ce1f71023b651860d6b576024b9d93b4c9ab8\"\u003e\u003ccode\u003e546ce1f\u003c/code\u003e\u003c/a\u003e Set tool span to failed if an error is raised in the tool (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4527\"\u003e#4527\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/ab2e3f08b600b22a95c3313eddd66f733e2d133c\"\u003e\u003ccode\u003eab2e3f0\u003c/code\u003e\u003c/a\u003e fix(integrations/ray): Correctly pass keyword arguments to ray.remote functio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/7804260fbf3ed8f797af95d2c0bdfcfeb85b0605\"\u003e\u003ccode\u003e7804260\u003c/code\u003e\u003c/a\u003e fix(langchain): Make \u003ccode\u003espan_map\u003c/code\u003e an instance variable (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4476\"\u003e#4476\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/0a2d8585f18f1d135d1f04624b702ef46fd119bb\"\u003e\u003ccode\u003e0a2d858\u003c/code\u003e\u003c/a\u003e fix(langchain): Ensure no duplicate \u003ccode\u003eSentryLangchainCallback\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4485\"\u003e#4485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/dae02180dfb095cdbd8ed7e81544ef048482d70b\"\u003e\u003ccode\u003edae0218\u003c/code\u003e\u003c/a\u003e fix(Litestar): Apply \u003ccode\u003efailed_request_status_codes\u003c/code\u003e to exceptions raised in mi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/65d31af4ff9b93cddf12d043fe9d631e3c6c85a4\"\u003e\u003ccode\u003e65d31af\u003c/code\u003e\u003c/a\u003e Merge branch 'release/2.31.0'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getsentry/sentry-python/compare/2.30.0...2.32.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `django-simple-history` from 3.8.0 to 3.10.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/django-commons/django-simple-history/releases\"\u003edjango-simple-history's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 3.10.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/blob/3.10.1/CHANGES.rst#3101-2025-06-20\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed changed log syntax to support PyPI packaging. by \u003ca href=\"https://github.com/tim-schilling\"\u003e\u003ccode\u003e@​tim-schilling\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1499\"\u003edjango-commons/django-simple-history#1499\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.10.0...3.10.1\"\u003ehttps://github.com/django-commons/django-simple-history/compare/3.10.0...3.10.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease 3.10.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/jazzband/django-simple-history/blob/3.10.0/CHANGES.rst#3100-2025-06-20\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExclude tests from wheels by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1478\"\u003edjango-commons/django-simple-history#1478\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSwitch repo to Django Commons by \u003ca href=\"https://github.com/tim-schilling\"\u003e\u003ccode\u003e@​tim-schilling\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1429\"\u003edjango-commons/django-simple-history#1429\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for release 3.10.0 by \u003ca href=\"https://github.com/ddabble\"\u003e\u003ccode\u003e@​ddabble\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1498\"\u003edjango-commons/django-simple-history#1498\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1478\"\u003edjango-commons/django-simple-history#1478\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.9.0...3.10.0\"\u003ehttps://github.com/django-commons/django-simple-history/compare/3.9.0...3.10.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease 3.9.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/jazzband/django-simple-history/blob/3.9.0/CHANGES.rst#390-2025-01-26\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove the deprecated \u003ccode\u003esimple_history_admin_list.display_list()\u003c/code\u003e + \u003cstrong\u003eRelease 3.9.0\u003c/strong\u003e by \u003ca href=\"https://github.com/ddabble\"\u003e\u003ccode\u003e@​ddabble\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jazzband/django-simple-history/pull/1444\"\u003ejazzband/django-simple-history#1444\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jazzband/django-simple-history/compare/3.8.0...3.9.0\"\u003ehttps://github.com/jazzband/django-simple-history/compare/3.8.0...3.9.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/django-commons/django-simple-history/blob/master/CHANGES.rst\"\u003edjango-simple-history's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.10.1 (2025-06-20)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed changelog syntax to support PyPI packaging (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1499\"\u003egh-1499\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.0 (2025-06-20)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTests are no longer bundled in released wheels (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1478\"\u003egh-1478\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMove repository to the Django Commons organization (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1391\"\u003egh-1391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.9.0 (2025-01-26)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved the \u003ccode\u003esimple_history_admin_list.display_list()\u003c/code\u003e template tag that was\ndeprecated in version 3.6.0 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1444\"\u003egh-1444\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/dc569842772578558fe4a84e5937d6fc31dd735d\"\u003e\u003ccode\u003edc56984\u003c/code\u003e\u003c/a\u003e Fixed changed log syntax to support PyPI packaging. (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1499\"\u003e#1499\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/58dbb06e68f821c99128b83619a856444319fa04\"\u003e\u003ccode\u003e58dbb06\u003c/code\u003e\u003c/a\u003e Prepare for release 3.10.0 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1498\"\u003e#1498\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/bc9909f32e33f8f33dccd28934994dffb9c4f459\"\u003e\u003ccode\u003ebc9909f\u003c/code\u003e\u003c/a\u003e Switch repo to Django Commons (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1429\"\u003e#1429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/9fb7c5c30b43917eaf98ee5ef266705bd191a825\"\u003e\u003ccode\u003e9fb7c5c\u003c/code\u003e\u003c/a\u003e Bump codecov/codecov-action from 3 to 5 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1425\"\u003e#1425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/7d6b50bf6f4ccbddd75bc3685dc9cf04240176d2\"\u003e\u003ccode\u003e7d6b50b\u003c/code\u003e\u003c/a\u003e Bump coverage from 7.8.0 to 7.9.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1495\"\u003e#1495\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/8bb61757cb9563c2fd0c17e1fa22c53013c311e3\"\u003e\u003ccode\u003e8bb6175\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1482\"\u003e#1482\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/010928f2fc52acd68df41e61686ed233171530e8\"\u003e\u003ccode\u003e010928f\u003c/code\u003e\u003c/a\u003e Bump tox from 4.25.0 to 4.26.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1485\"\u003e#1485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/5721e31055b0c952daf3601b6c35bcde78cab31b\"\u003e\u003ccode\u003e5721e31\u003c/code\u003e\u003c/a\u003e Bump psycopg[binary] from 3.2.6 to 3.2.9 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1484\"\u003e#1484\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/810149708ad11a284cd581972db46142120f824a\"\u003e\u003ccode\u003e8101497\u003c/code\u003e\u003c/a\u003e Bump flake8 from 7.1.2 to 7.2.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1474\"\u003e#1474\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/626ece4082c4a7f87d14566e7a3c568043233ac5\"\u003e\u003ccode\u003e626ece4\u003c/code\u003e\u003c/a\u003e Bump coverage from 7.6.12 to 7.8.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.8.0...3.10.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `moto` from 5.1.6 to 5.1.8\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getmoto/moto/blob/master/CHANGELOG.md\"\u003emoto's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eMoto Changelog\u003c/h1\u003e\n\u003ch2\u003e5.1.7\u003c/h2\u003e\n\u003cp\u003eDocker Digest for 5.1.7: \u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew Methods:\n\u003cpre\u003e\u003ccode\u003e* Connect-Campaigns:\n    * get_campaign_state()\n    * list_campaigns()\n    * list_tags_for_resource()\n    * pause_campaign()\n    * resume_campaign()\n    * start_campaign()\n    * stop_campaign()\n    * tag_resource()\n    * untag_resource()\n\n* ECS:\n    * delete_task_definitions()\n\n* ElastiCache:\n    * create_cache_subnet_group()\n    * describe_cache_subnet_groups()\n\n* RAM:\n    * list_permissions()\n    * list_resource_types()\n\n* RDS:\n    * create_blue_green_deployment()\n    * delete_blue_green_deployment()\n    * describe_blue_green_deployments()\n    * switchover_blue_green_deployment()\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eMiscellaneous:\n* Athena: get_query_execution() now returns some additional attributes: 'ResultReuseConfiguration', 'Status.CompletionDateTime', 'Status.ServicePreProcessingTimeInMillis', 'Status.ResultReuseInformation'\n* DynamoDB: query() now validates that all attributes in the KeyConditionExpression are actually keys\n* DynamoDB: update_item() now validates unused ExpressionAttributeNames/ExpressionAttributeValues\n* EC2: modify_vpc_attribute() now correctly handles the EnableDnsHostnames-attribute\n* ECS: list_task_definitions() now supports the status-parameter\n* ELB: describe_load_balancer_attributes() now returns the AdditionalAttributes-attribute\n* ElastiCache: list_tags_for_resource() now supports SubnetGroups\n* EventBridge: put_events() no longer throws a KeyError: 'time' for targets with a custom InputTemplate that do not specify the time\n* Logs: get_query_results() now returns values as strings, in-line with how AWS behaves\n* NetworkFirewall: describe_logging_configuration() no longer throws an error for LoggingConfigurations without tags\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/60378f74fdcd90f08795262a8c45fe67efa9d169\"\u003e\u003ccode\u003e60378f7\u003c/code\u003e\u003c/a\u003e Pre-Release: Up Version Number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/7149837c704859d5283bbaddc53d1c701eaa3f21\"\u003e\u003ccode\u003e7149837\u003c/code\u003e\u003c/a\u003e Prep release 5.1.7 (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9045\"\u003e#9045\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/2e1d35db378de046eba6a3e579997eb7972ef302\"\u003e\u003ccode\u003e2e1d35d\u003c/code\u003e\u003c/a\u003e chore: update SSM default parameters (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9046\"\u003e#9046\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/c7ba45ac50bed582ad14ce48e756d25a86014d17\"\u003e\u003ccode\u003ec7ba45a\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Types (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9044\"\u003e#9044\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/db2e27627a825f8580faa706faa46485c021e57f\"\u003e\u003ccode\u003edb2e276\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Offerings (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9043\"\u003e#9043\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/c5616b63b0aca7bf5fd55cd881104fa3fc8378a6\"\u003e\u003ccode\u003ec5616b6\u003c/code\u003e\u003c/a\u003e Admin: Skip Sagemaker-Core==1.0.42 to avoid test breakage (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9042\"\u003e#9042\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/d348cecc5ae5e49523ba54c5847f84ca42a398e8\"\u003e\u003ccode\u003ed348cec\u003c/code\u003e\u003c/a\u003e [Comprehend] Enhanced support for comprehend ResourceGroupTagging api (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9039\"\u003e#9039\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/9c7d93941005657011e71b0e3bc3007ee7ea735e\"\u003e\u003ccode\u003e9c7d939\u003c/code\u003e\u003c/a\u003e Docs: Change MOTO_ALLOW_NONEXISTENT_REGION example to use a string value (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9037\"\u003e#9037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/96c1231b809f58f5e9aa2f605017b4d36962bd75\"\u003e\u003ccode\u003e96c1231\u003c/code\u003e\u003c/a\u003e [ELB] Added additional attribute to ELB response.  (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9026\"\u003e#9026\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/7ae26ff55a5ba6b204bee856ccb4e0f86e5eff62\"\u003e\u003ccode\u003e7ae26ff\u003c/code\u003e\u003c/a\u003e S3: Add ID field to CORS rule (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9013\"\u003e#9013\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getmoto/moto/compare/5.1.6...5.1.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.12.0 to 0.12.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.2\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Expand \u003ccode\u003eOptional[A]\u003c/code\u003e to \u003ccode\u003eA | None\u003c/code\u003e (\u003ccode\u003ePYI016\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18572\"\u003e#18572\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Mark \u003ccode\u003eUP008\u003c/code\u003e fix safe if no comments are in range (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18683\"\u003e#18683\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Fix \u003ccode\u003eC420\u003c/code\u003e to prepend whitespace when needed (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18616\"\u003e#18616\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF403\u003c/code\u003e panic on attribute or subscription loop variable (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19042\"\u003e#19042\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epydocstyle\u003c/code\u003e] Fix \u003ccode\u003eD413\u003c/code\u003e infinite loop for parenthesized docstring (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18930\"\u003e#18930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLW0108\u003c/code\u003e autofix introducing a syntax error when the lambda's body contains an assignment expression (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18678\"\u003e#18678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix false positive on empty tuples (\u003ccode\u003eFURB168\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19058\"\u003e#19058\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Allow more \u003ccode\u003efield\u003c/code\u003e calls from \u003ccode\u003eattrs\u003c/code\u003e (\u003ccode\u003eRUF009\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19021\"\u003e#19021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix syntax error introduced for an empty string followed by a u-prefixed string (\u003ccode\u003eUP025\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18899\"\u003e#18899\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-executable\u003c/code\u003e] Allow \u003ccode\u003euvx\u003c/code\u003e in shebang line (\u003ccode\u003eEXE003\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18967\"\u003e#18967\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epandas\u003c/code\u003e] Avoid flagging \u003ccode\u003ePD002\u003c/code\u003e if \u003ccode\u003epandas\u003c/code\u003e is not imported (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18963\"\u003e#18963\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Avoid PEP-604 unions with \u003ccode\u003etyping.NamedTuple\u003c/code\u003e (\u003ccode\u003eUP007\u003c/code\u003e, \u003ccode\u003eUP045\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18682\"\u003e#18682\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument link between \u003ccode\u003eimport-outside-top-level (PLC0415)\u003c/code\u003e and \u003ccode\u003elint.flake8-tidy-imports.banned-module-level-imports\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18733\"\u003e#18733\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix description of the \u003ccode\u003eformat.skip-magic-trailing-comma\u003c/code\u003e example (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19095\"\u003e#19095\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Make \u003ccode\u003eAIR302\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18988\"\u003e#18988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Make \u003ccode\u003eAIR312\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18989\"\u003e#18989\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-annotations\u003c/code\u003e] Make \u003ccode\u003eANN401\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18974\"\u003e#18974\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC100\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18993\"\u003e#18993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC105\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19002\"\u003e#19002\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC110\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18975\"\u003e#18975\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC210\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18977\"\u003e#18977\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC220\u003c/code\u003e, \u003ccode\u003eASYNC221\u003c/code\u003e, and \u003ccode\u003eASYNC222\u003c/code\u003e examples error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18978\"\u003e#18978\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC251\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18990\"\u003e#18990\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Make \u003ccode\u003eS201\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19017\"\u003e#19017\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Make \u003ccode\u003eS604\u003c/code\u003e and \u003ccode\u003eS609\u003c/code\u003e examples error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19049\"\u003e#19049\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Make \u003ccode\u003eB028\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19054\"\u003e#19054\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Make \u003ccode\u003eB911\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19051\"\u003e#19051\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-datetimez\u003c/code\u003e] Make \u003ccode\u003eDTZ011\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19055\"\u003e#19055\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-datetimez\u003c/code\u003e] Make \u003ccode\u003eDTZ901\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19056\"\u003e#19056\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Make \u003ccode\u003ePYI032\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19061\"\u003e#19061\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePYI014\u003c/code\u003e, \u003ccode\u003ePYI015\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19097\"\u003e#19097\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePYI042\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19101\"\u003e#19101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePYI059\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19080\"\u003e#19080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePYI062\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19079\"\u003e#19079\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePT023\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19104\"\u003e#19104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePT030\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19105\"\u003e#19105\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.2\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Expand \u003ccode\u003eOptional[A]\u003c/code\u003e to \u003ccode\u003eA | None\u003c/code\u003e (\u003ccode\u003ePYI016\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18572\"\u003e#18572\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Mark \u003ccode\u003eUP008\u003c/code\u003e fix safe if no comments are in range (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18683\"\u003e#18683\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Fix \u003ccode\u003eC420\u003c/code\u003e to prepend whitespace when needed (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18616\"\u003e#18616\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF403\u003c/code\u003e panic on attribute or subscription loop variable (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19042\"\u003e#19042\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epydocstyle\u003c/code\u003e] Fix \u003ccode\u003eD413\u003c/code\u003e infinite loop for parenthesized docstring (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18930\"\u003e#18930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLW0108\u003c/code\u003e autofix introducing a syntax error when the lambda's body contains an assignment expression (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18678\"\u003e#18678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix false positive on empty tuples (\u003ccode\u003eFURB168\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19058\"\u003e#19058\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Allow more \u003ccode\u003efield\u003c/code\u003e calls from \u003ccode\u003eattrs\u003c/code\u003e (\u003ccode\u003eRUF009\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19021\"\u003e#19021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix syntax error introduced for an empty string followed by a u-prefixed string (\u003ccode\u003eUP025\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18899\"\u003e#18899\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-executable\u003c/code\u003e] Allow \u003ccode\u003euvx\u003c/code\u003e in shebang line (\u003ccode\u003eEXE003\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18967\"\u003e#18967\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epandas\u003c/code\u003e] Avoid flagging \u003ccode\u003ePD002\u003c/code\u003e if \u003ccode\u003epandas\u003c/code\u003e is not imported (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18963\"\u003e#18963\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Avoid PEP-604 unions with \u003ccode\u003etyping.NamedTuple\u003c/code\u003e (\u003ccode\u003eUP007\u003c/code\u003e, \u003ccode\u003eUP045\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18682\"\u003e#18682\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument link between \u003ccode\u003eimport-outside-top-level (PLC0415)\u003c/code\u003e and \u003ccode\u003elint.flake8-tidy-imports.banned-module-level-imports\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18733\"\u003e#18733\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix description of the \u003ccode\u003eformat.skip-magic-trailing-comma\u003c/code\u003e example (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19095\"\u003e#19095\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Make \u003ccode\u003eAIR302\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18988\"\u003e#18988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Make \u003ccode\u003eAIR312\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18989\"\u003e#18989\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-annotations\u003c/code\u003e] Make \u003ccode\u003eANN401\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18974\"\u003e#18974\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC100\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18993\"\u003e#18993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC105\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19002\"\u003e#19002\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC110\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18975\"\u003e#18975\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC210\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18977\"\u003e#18977\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC220\u003c/code\u003e, \u003ccode\u003eASYNC221\u003c/code\u003e, and \u003ccode\u003eASYNC222\u003c/code\u003e examples error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18978\"\u003e#18978\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Make \u003ccode\u003eASYNC251\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18990\"\u003e#18990\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Make \u003ccode\u003eS201\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19017\"\u003e#19017\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Make \u003ccode\u003eS604\u003c/code\u003e and \u003ccode\u003eS609\u003c/code\u003e examples error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19049\"\u003e#19049\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Make \u003ccode\u003eB028\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19054\"\u003e#19054\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Make \u003ccode\u003eB911\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19051\"\u003e#19051\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-datetimez\u003c/code\u003e] Make \u003ccode\u003eDTZ011\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19055\"\u003e#19055\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-datetimez\u003c/code\u003e] Make \u003ccode\u003eDTZ901\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19056\"\u003e#19056\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Make \u003ccode\u003ePYI032\u003c/code\u003e example error out-of-the-box (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19061\"\u003e#19061\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePYI014\u003c/code\u003e, \u003ccode\u003ePYI015\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19097\"\u003e#19097\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePYI042\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19101\"\u003e#19101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePYI059\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19080\"\u003e#19080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePYI062\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19079\"\u003e#19079\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePT023\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19104\"\u003e#19104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePT030\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19105\"\u003e#19105\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-quotes\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003eQ003\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19106\"\u003e#19106\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/9bee8376a17401f9736b45fdefffb62edc2f1668\"\u003e\u003ccode\u003e9bee837\u003c/code\u003e\u003c/a\u003e Bump 0.12.2 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19126\"\u003e#19126\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/1c6717b149ddfbcd4aa0aee2e160320474392da9\"\u003e\u003ccode\u003e1c6717b\u003c/code\u003e\u003c/a\u003e Filter private symbols from stubs if they are internal types (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19121\"\u003e#19121\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/1b813cd5f1933ab05ba7b96ace798199429c0bd6\"\u003e\u003ccode\u003e1b813cd\u003c/code\u003e\u003c/a\u003e Fix description of the \u003ccode\u003eformat.skip-magic-trailing-comma\u003c/code\u003e example (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19095\"\u003e#19095\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b00f68a23cedbd3a38fc25bac63638f0f11fc3f0\"\u003e\u003ccode\u003eb00f68a\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eruff\u003c/code\u003e] Allow more \u003ccode\u003efield\u003c/code\u003e calls from \u003ccode\u003eattrs\u003c/code\u003e (\u003ccode\u003eRUF009\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19021\"\u003e#19021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/710c60f7135879b05f6c05a34085cd7af5c19e7f\"\u003e\u003ccode\u003e710c60f\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePT023\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19104\"\u003e#19104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/811e25d16e22ca4ce124d9514232211c9a0b27a1\"\u003e\u003ccode\u003e811e25d\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003ePT030\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19105\"\u003e#19105\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b78af2db4822dc55acbfb1024b30e69fe0262311\"\u003e\u003ccode\u003eb78af2d\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eflake8-quotes\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003eQ003\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19106\"\u003e#19106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/4f36f0677f09b0ed1ba20f583b6f017c4f7d26c8\"\u003e\u003ccode\u003e4f36f06\u003c/code\u003e\u003c/a\u003e Document link between \u003ccode\u003eimport-outside-top-level (PLC0415)\u003c/code\u003e and `lint.flake8-t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/2589a2938ee58a1ff1b54a9558807ecb000ccca3\"\u003e\u003ccode\u003e2589a29\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eflake8-simplify\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003eSIM113\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19109\"\u003e#19109\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/26bb8f7b7189558520bb386867579768b5a17347\"\u003e\u003ccode\u003e26bb8f7\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eflake8-simplify\u003c/code\u003e] Make example error out-of-the-box (\u003ccode\u003eSIM401\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19110\"\u003e#19110\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.12.0...0.12.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/Ed-BW/consult-demo/pull/8","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ed-BW%2Fconsult-demo/issues/8","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/8/packages"}},{"old_version":"1.1.1","new_version":"1.2.0","update_type":"minor","path":null,"pr_created_at":"2025-07-01T06:01:17.000Z","version_change":"1.1.1 → 1.2.0","issue":{"uuid":"2630999336","node_id":"PR_kwDOLiCyD86c0d0o","number":2289,"state":"closed","title":"Bump pytest-random-order from 1.1.1 to 1.2.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-07-03T11:31:53.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-07-01T06:01:17.000Z","updated_at":"2025-07-03T11:31:54.000Z","time_to_close":192636,"merged_at":"2025-07-03T11:31:53.000Z","merged_by":"t-vi","closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":null}],"path":null,"ecosystem":"pip"},"body":"\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=pytest-random-order\u0026package-manager=pip\u0026previous-version=1.1.1\u0026new-version=1.2.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/Lightning-AI/lightning-thunder/pull/2289","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lightning-AI%2Flightning-thunder/issues/2289","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2289/packages"}},{"old_version":"1.1.1","new_version":"1.2.0","update_type":"minor","path":null,"pr_created_at":"2025-06-30T23:35:20.000Z","version_change":"1.1.1 → 1.2.0","issue":{"uuid":"2630423018","node_id":"PR_kwDOLvZq1c6cyRHq","number":248,"state":"open","title":"Bump the python-packages group across 1 directory with 4 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-30T23:35:20.000Z","updated_at":"2025-06-30T23:35:20.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"python-packages","update_count":4,"packages":[{"name":"fastapi","old_version":"0.115.13","new_version":"0.115.14"},{"name":"uvicorn","old_version":"0.34.3","new_version":"0.35.0","repository_url":"https://github.com/encode/uvicorn"},{"name":"ruff","old_version":"0.12.0","new_version":"0.12.1","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-packages group with 4 updates in the /plotting-service directory: [fastapi[all]](https://github.com/fastapi/fastapi), [uvicorn](https://github.com/encode/uvicorn), [ruff](https://github.com/astral-sh/ruff) and [pytest-random-order](https://github.com/jbasko/pytest-random-order).\n\nUpdates `fastapi[all]` from 0.115.13 to 0.115.14\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi[all]'s releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.115.14\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for unions when using \u003ccode\u003eForm\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13827\"\u003e#13827\u003c/a\u003e by \u003ca href=\"https://github.com/patrick91\"\u003e\u003ccode\u003e@​patrick91\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✏️ Fix grammar mistake in \u003ccode\u003edocs/en/docs/advanced/response-directly.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13800\"\u003e#13800\u003c/a\u003e by \u003ca href=\"https://github.com/NavesSapnis\"\u003e\u003ccode\u003e@​NavesSapnis\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Update Speakeasy URL to Speakeasy Sandbox. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13697\"\u003e#13697\u003c/a\u003e by \u003ca href=\"https://github.com/ndimares\"\u003e\u003ccode\u003e@​ndimares\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTranslations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/response-model.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13792\"\u003e#13792\u003c/a\u003e by \u003ca href=\"https://github.com/valentinDruzhinin\"\u003e\u003ccode\u003e@​valentinDruzhinin\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/security/index.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13805\"\u003e#13805\u003c/a\u003e by \u003ca href=\"https://github.com/valentinDruzhinin\"\u003e\u003ccode\u003e@​valentinDruzhinin\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✏️ Fix typo in \u003ccode\u003edocs/ja/docs/tutorial/encoder.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13815\"\u003e#13815\u003c/a\u003e by \u003ca href=\"https://github.com/ruzia\"\u003e\u003ccode\u003e@​ruzia\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✏️ Fix typo in \u003ccode\u003edocs/ja/docs/tutorial/handling-errors.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13814\"\u003e#13814\u003c/a\u003e by \u003ca href=\"https://github.com/ruzia\"\u003e\u003ccode\u003e@​ruzia\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✏️ Fix typo in \u003ccode\u003edocs/ja/docs/tutorial/body-fields.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13802\"\u003e#13802\u003c/a\u003e by \u003ca href=\"https://github.com/ruzia\"\u003e\u003ccode\u003e@​ruzia\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Add Russian translation for \u003ccode\u003edocs/ru/docs/advanced/index.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13797\"\u003e#13797\u003c/a\u003e by \u003ca href=\"https://github.com/NavesSapnis\"\u003e\u003ccode\u003e@​NavesSapnis\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆ [pre-commit.ci] pre-commit autoupdate. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13823\"\u003e#13823\u003c/a\u003e by \u003ca href=\"https://github.com/apps/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/ebdeda2de6e17036e3048940b7a9e725ef6a95b7\"\u003e\u003ccode\u003eebdeda2\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.115.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8fa19a6faa3309a150f6e6fafd2c3a5043c09718\"\u003e\u003ccode\u003e8fa19a6\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/3ecb4c53895c0a8bf3462983d48379abc54fcaec\"\u003e\u003ccode\u003e3ecb4c5\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/9d0d8828cc6b3f0217581d7e607ba8e4d7e0017b\"\u003e\u003ccode\u003e9d0d882\u003c/code\u003e\u003c/a\u003e 🐛 Fix support for unions when using \u003ccode\u003eForm\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/13827\"\u003e#13827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/df35896a0ebb379d68b7c9bd9fdadd476ef6ac83\"\u003e\u003ccode\u003edf35896\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8f64d09ee01daf4773a77e9690e511d928da9b98\"\u003e\u003ccode\u003e8f64d09\u003c/code\u003e\u003c/a\u003e ⬆ [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/13823\"\u003e#13823\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/3b09dd8e01ecdbdc56829cc7b0f524a882eebdd8\"\u003e\u003ccode\u003e3b09dd8\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/c30821ff6ed3d0506ee11a4f4f28cd25c13e7ec8\"\u003e\u003ccode\u003ec30821f\u003c/code\u003e\u003c/a\u003e 🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/response-model.md\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/666890ac7f3211d15e70503002f284fd18107125\"\u003e\u003ccode\u003e666890a\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/937af92ba7573799613c707046777e3731b3499f\"\u003e\u003ccode\u003e937af92\u003c/code\u003e\u003c/a\u003e 🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/security/index.md\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.115.13...0.115.14\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `uvicorn` from 0.34.3 to 0.35.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/encode/uvicorn/releases\"\u003euvicorn's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 0.35.0\u003c/h2\u003e\n\u003ch2\u003eAdded\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eWebSocketsSansIOProtocol\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/uvicorn/pull/2540\"\u003eencode/uvicorn#2540\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChanged\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRefine help message for option \u003ccode\u003e--proxy-headers\u003c/code\u003e by \u003ca href=\"https://github.com/zhangyoufu\"\u003e\u003ccode\u003e@​zhangyoufu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/uvicorn/pull/2653\"\u003eencode/uvicorn#2653\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhangyoufu\"\u003e\u003ccode\u003e@​zhangyoufu\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/encode/uvicorn/pull/2653\"\u003eencode/uvicorn#2653\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/encode/uvicorn/compare/0.34.3...0.35.0\"\u003ehttps://github.com/encode/uvicorn/compare/0.34.3...0.35.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/encode/uvicorn/blob/master/docs/release-notes.md\"\u003euvicorn's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.35.0 (June 28, 2025)\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eWebSocketsSansIOProtocol\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2540\"\u003e#2540\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRefine help message for option \u003ccode\u003e--proxy-headers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2653\"\u003e#2653\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/encode/uvicorn/commit/daecb45327702efe8f702f46fb0870c2d6357837\"\u003e\u003ccode\u003edaecb45\u003c/code\u003e\u003c/a\u003e Version 0.35.0 (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2654\"\u003e#2654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/encode/uvicorn/commit/22dfd3fa95dd035db77099c4903aad6e148a50a8\"\u003e\u003ccode\u003e22dfd3f\u003c/code\u003e\u003c/a\u003e refine help message for option --proxy-headers (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2653\"\u003e#2653\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/encode/uvicorn/commit/b9606269a7f24f2511de0015b7af7df499be569f\"\u003e\u003ccode\u003eb960626\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eWebSocketsSansIOProtocol\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2540\"\u003e#2540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/encode/uvicorn/commit/5432729137988a53bb70d2f3e0c790f9bdf33ec5\"\u003e\u003ccode\u003e5432729\u003c/code\u003e\u003c/a\u003e Add CITATION.cff (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2649\"\u003e#2649\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/encode/uvicorn/compare/0.34.3...0.35.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.12.0 to 0.12.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC1802\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there's comments in the \u003ccode\u003elen\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18836\"\u003e#18836\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/32c54189cb45a9d0409a1140265ce6d5fcec214d\"\u003e\u003ccode\u003e32c5418\u003c/code\u003e\u003c/a\u003e Bump 0.12.1 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18969\"\u003e#18969\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b85c219283dcdae474642e9174352da5d9aee132\"\u003e\u003ccode\u003eb85c219\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eFastAPI\u003c/code\u003e] Add fix safety section to \u003ccode\u003eFAST002\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18940\"\u003e#18940\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b1d1cf1d382acd745a57a391a7befb6c300f6c9a\"\u003e\u003ccode\u003eb1d1cf1\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for leading tab mis-alignment in diagnostic renderin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/1dcdf7f41d80b819576b8e146c1af9e72b44d2da\"\u003e\u003ccode\u003e1dcdf7f\u003c/code\u003e\u003c/a\u003e [ty] Resolve python environment in \u003ccode\u003eOptions::to_program_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18960\"\u003e#18960\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d00697621e2a772e9ad0b25c4c74f1572d72fd29\"\u003e\u003ccode\u003ed006976\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76619b96e504d63e574227e8d31d6ecfcd32d1c7\"\u003e\u003ccode\u003e76619b9\u003c/code\u003e\u003c/a\u003e [ty] Fix rendering of long lines that are indented with tabs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/6e25cfba2b2fb607e16102cb5cd84cd775882d80\"\u003e\u003ccode\u003e6e25cfb\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for diagnostic rendering panic\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76387295a581ed5c665b685e1d69fe2751ad24b1\"\u003e\u003ccode\u003e7638729\u003c/code\u003e\u003c/a\u003e [ty] Move venv and conda env discovery to \u003ccode\u003eSearchPath::from_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18938\"\u003e#18938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d04e63a6d9dbb5c751c99d113d7eaf98b765b426\"\u003e\u003ccode\u003ed04e63a\u003c/code\u003e\u003c/a\u003e [ty] Add regression-benchmark for attribute-assignment hang (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18957\"\u003e#18957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/86fd9b634e5526d2093aeb5a37dc6f30cefc1925\"\u003e\u003ccode\u003e86fd9b6\u003c/code\u003e\u003c/a\u003e [ty] Format conflicting types as an enumeration (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18956\"\u003e#18956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.12.0...0.12.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/fiaisis/plotting-service/pull/248","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/fiaisis%2Fplotting-service/issues/248","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/248/packages"}},{"old_version":"1.1.1","new_version":"1.2.0","update_type":"minor","path":null,"pr_created_at":"2025-06-30T22:24:10.000Z","version_change":"1.1.1 → 1.2.0","issue":{"uuid":"3190030216","node_id":"PR_kwDOO_gais6cxxjY","number":7,"state":"closed","title":"Upgrade: bump the pip-updates group across 1 directory with 6 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-07-07T18:24:18.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-30T22:24:10.000Z","updated_at":"2025-07-07T18:24:18.000Z","time_to_close":590408,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Upgrade: bump","group_name":"pip-updates","update_count":6,"packages":[{"name":"boto3","old_version":"1.38.39","new_version":"1.38.46","repository_url":"https://github.com/boto/boto3"},{"name":"datamodel-code-generator","old_version":"0.31.1","new_version":"0.31.2","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"sentry-sdk","old_version":"2.30.0","new_version":"2.32.0","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"},{"name":"django-simple-history","old_version":"3.8.0","new_version":"3.10.1","repository_url":"https://github.com/django-commons/django-simple-history"},{"name":"ruff","old_version":"0.12.0","new_version":"0.12.1","repository_url":"https://github.com/astral-sh/ruff"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-updates group with 6 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [boto3](https://github.com/boto/boto3) | `1.38.39` | `1.38.46` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.31.1` | `0.31.2` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.30.0` | `2.32.0` |\n| [pytest-random-order](https://github.com/jbasko/pytest-random-order) | `1.1.1` | `1.2.0` |\n| [django-simple-history](https://github.com/django-commons/django-simple-history) | `3.8.0` | `3.10.1` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.12.0` | `0.12.1` |\n\n\nUpdates `boto3` from 1.38.39 to 1.38.46\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/f02c8ee2d7d3f7cfcc91df05ebe8be434433875a\"\u003e\u003ccode\u003ef02c8ee\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.38.46'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/804ef0f99d92575611f623f700e693c2f3e1ada2\"\u003e\u003ccode\u003e804ef0f\u003c/code\u003e\u003c/a\u003e Bumping version to 1.38.46\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/533e5c24002b7f8df6f8c93d216ba9bfbd6d6203\"\u003e\u003ccode\u003e533e5c2\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/3595b04d47f723ae62d9f2b1e560cc88dbabb96c\"\u003e\u003ccode\u003e3595b04\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.38.45'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/874b24a403d49d4528a3e56bf979bd900d6b86c4\"\u003e\u003ccode\u003e874b24a\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.38.45' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/df0b3fc9f783271a4fb3c137bb88509ae8377326\"\u003e\u003ccode\u003edf0b3fc\u003c/code\u003e\u003c/a\u003e Bumping version to 1.38.45\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/bd05e8e0580c9cf576e733ed9a467459269d614a\"\u003e\u003ccode\u003ebd05e8e\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/6fac8a489f52a0be5d6615676c53758300f47ce2\"\u003e\u003ccode\u003e6fac8a4\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.38.44'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/b15874f702e8d45ecf098cc70d5abd981f288458\"\u003e\u003ccode\u003eb15874f\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.38.44' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/02fd8fa4a86c1b6ae2348aeb40d1f2e7b2e8a3f1\"\u003e\u003ccode\u003e02fd8fa\u003c/code\u003e\u003c/a\u003e Bumping version to 1.38.44\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.38.39...1.38.46\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `datamodel-code-generator` from 0.31.1 to 0.31.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/releases\"\u003edatamodel-code-generator's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.31.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: prevent code injection through filename in generated headers by \u003ca href=\"https://github.com/koxudaxi\"\u003e\u003ccode\u003e@​koxudaxi\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/pull/2428\"\u003ekoxudaxi/datamodel-code-generator#2428\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.31.2\"\u003ehttps://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.31.2\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/commit/5553dd2c8ef503a3010433f7f24f2179efe76fea\"\u003e\u003ccode\u003e5553dd2\u003c/code\u003e\u003c/a\u003e fix: prevent code injection through filename in generated headers (\u003ca href=\"https://redirect.github.com/koxudaxi/datamodel-code-generator/issues/2428\"\u003e#2428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/koxudaxi/datamodel-code-generator/compare/0.31.1...0.31.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentry-sdk` from 2.30.0 to 2.32.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/releases\"\u003esentry-sdk's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(sessions): Add top-level start- and end session methods (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4474\"\u003e#4474\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(openai-agents): Set tool span to failed if an error is raised in the tool (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4527\"\u003e#4527\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(integrations/ray): Correctly pass keyword arguments to ray.remote function (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4430\"\u003e#4430\u003c/a\u003e) by \u003ca href=\"https://github.com/svartalf\"\u003e\u003ccode\u003e@​svartalf\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Make \u003ccode\u003espan_map\u003c/code\u003e an instance variable (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4476\"\u003e#4476\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Ensure no duplicate \u003ccode\u003eSentryLangchainCallback\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4485\"\u003e#4485\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(Litestar): Apply \u003ccode\u003efailed_request_status_codes\u003c/code\u003e to exceptions raised in middleware (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4074\"\u003e#4074\u003c/a\u003e) by \u003ca href=\"https://github.com/vrslev\"\u003e\u003ccode\u003e@​vrslev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.31.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eNew Integration (BETA):\u003c/strong\u003e Add support for \u003ccode\u003eopenai-agents\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4437\"\u003e#4437\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe can now instrument AI agents that are created with the \u003ca href=\"https://openai.github.io/openai-agents-python/\"\u003eOpenAI Agents SDK\u003c/a\u003e out of the box.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.openai_agents import OpenAIAgentsIntegration\n\u003ch1\u003eAdd the OpenAIAgentsIntegration to your sentry_sdk.init call:\u003c/h1\u003e\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\ndsn=\u0026quot;...\u0026quot;,\u003cbr /\u003e\nintegrations=[\u003cbr /\u003e\nOpenAIAgentsIntegration(),\u003cbr /\u003e\n]\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eFor more information see the \u003ca href=\"https://docs.sentry.io/platforms/python/integrations/openai-agents/\"\u003eOpenAI Agents integrations documentation\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eLogs: Add support for \u003ccode\u003edict\u003c/code\u003e arguments (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4478\"\u003e#4478\u003c/a\u003e) by \u003ca href=\"https://github.com/AbhiPrasad\"\u003e\u003ccode\u003e@​AbhiPrasad\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Cursor generated rules (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4493\"\u003e#4493\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGreatly simplify Langchain integrations \u003ccode\u003e_wrap_configure\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4479\"\u003e#4479\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Remove tracerite pin (almost) (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4504\"\u003e#4504\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(profiling): Ensure profiler thread exits when needed (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4497\"\u003e#4497\u003c/a\u003e) by \u003ca href=\"https://github.com/Zylphrex\"\u003e\u003ccode\u003e@​Zylphrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Do not install newest \u003ccode\u003etracerite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4494\"\u003e#4494\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(scope): Handle token reset \u003ccode\u003eLookupError\u003c/code\u003es gracefully (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4481\"\u003e#4481\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Tox update (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4509\"\u003e#4509\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Upper bound on fakeredis on old Python versions (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4482\"\u003e#4482\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Regenerate tox (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4457\"\u003e#4457\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md\"\u003esentry-sdk's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(sessions): Add top-level start- and end session methods (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4474\"\u003e#4474\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(openai-agents): Set tool span to failed if an error is raised in the tool (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4527\"\u003e#4527\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(integrations/ray): Correctly pass keyword arguments to ray.remote function (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4430\"\u003e#4430\u003c/a\u003e) by \u003ca href=\"https://github.com/svartalf\"\u003e\u003ccode\u003e@​svartalf\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Make \u003ccode\u003espan_map\u003c/code\u003e an instance variable (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4476\"\u003e#4476\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Ensure no duplicate \u003ccode\u003eSentryLangchainCallback\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4485\"\u003e#4485\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(Litestar): Apply \u003ccode\u003efailed_request_status_codes\u003c/code\u003e to exceptions raised in middleware (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4074\"\u003e#4074\u003c/a\u003e) by \u003ca href=\"https://github.com/vrslev\"\u003e\u003ccode\u003e@​vrslev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.31.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eNew Integration (BETA):\u003c/strong\u003e Add support for \u003ccode\u003eopenai-agents\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4437\"\u003e#4437\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe can now instrument AI agents that are created with the \u003ca href=\"https://openai.github.io/openai-agents-python/\"\u003eOpenAI Agents SDK\u003c/a\u003e out of the box.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.openai_agents import OpenAIAgentsIntegration\n\u003ch1\u003eAdd the OpenAIAgentsIntegration to your sentry_sdk.init call:\u003c/h1\u003e\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\ndsn=\u0026quot;...\u0026quot;,\u003cbr /\u003e\nintegrations=[\u003cbr /\u003e\nOpenAIAgentsIntegration(),\u003cbr /\u003e\n]\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eFor more information see the \u003ca href=\"https://docs.sentry.io/platforms/python/integrations/openai-agents/\"\u003eOpenAI Agents integrations documentation\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eLogs: Add support for \u003ccode\u003edict\u003c/code\u003e arguments (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4478\"\u003e#4478\u003c/a\u003e) by \u003ca href=\"https://github.com/AbhiPrasad\"\u003e\u003ccode\u003e@​AbhiPrasad\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Cursor generated rules (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4493\"\u003e#4493\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGreatly simplify Langchain integrations \u003ccode\u003e_wrap_configure\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4479\"\u003e#4479\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Remove tracerite pin (almost) (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4504\"\u003e#4504\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(profiling): Ensure profiler thread exits when needed (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4497\"\u003e#4497\u003c/a\u003e) by \u003ca href=\"https://github.com/Zylphrex\"\u003e\u003ccode\u003e@​Zylphrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Do not install newest \u003ccode\u003etracerite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4494\"\u003e#4494\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(scope): Handle token reset \u003ccode\u003eLookupError\u003c/code\u003es gracefully (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4481\"\u003e#4481\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Tox update (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4509\"\u003e#4509\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Upper bound on fakeredis on old Python versions (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4482\"\u003e#4482\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Regenerate tox (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4457\"\u003e#4457\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/4b022dc731aa10e8cdb1cc8342c06374b226b6f4\"\u003e\u003ccode\u003e4b022dc\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into release/2.32.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/2634a523b3416748cf952bc517641594b9b40bac\"\u003e\u003ccode\u003e2634a52\u003c/code\u003e\u003c/a\u003e Pin zope.event (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4531\"\u003e#4531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/c815a3245d10e45bebee5b47292deec438a4d4d2\"\u003e\u003ccode\u003ec815a32\u003c/code\u003e\u003c/a\u003e updated changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/bca8816ac1f84fe4304682bd6de173fbf0c005a3\"\u003e\u003ccode\u003ebca8816\u003c/code\u003e\u003c/a\u003e release: 2.32.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/546ce1f71023b651860d6b576024b9d93b4c9ab8\"\u003e\u003ccode\u003e546ce1f\u003c/code\u003e\u003c/a\u003e Set tool span to failed if an error is raised in the tool (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4527\"\u003e#4527\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/ab2e3f08b600b22a95c3313eddd66f733e2d133c\"\u003e\u003ccode\u003eab2e3f0\u003c/code\u003e\u003c/a\u003e fix(integrations/ray): Correctly pass keyword arguments to ray.remote functio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/7804260fbf3ed8f797af95d2c0bdfcfeb85b0605\"\u003e\u003ccode\u003e7804260\u003c/code\u003e\u003c/a\u003e fix(langchain): Make \u003ccode\u003espan_map\u003c/code\u003e an instance variable (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4476\"\u003e#4476\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/0a2d8585f18f1d135d1f04624b702ef46fd119bb\"\u003e\u003ccode\u003e0a2d858\u003c/code\u003e\u003c/a\u003e fix(langchain): Ensure no duplicate \u003ccode\u003eSentryLangchainCallback\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4485\"\u003e#4485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/dae02180dfb095cdbd8ed7e81544ef048482d70b\"\u003e\u003ccode\u003edae0218\u003c/code\u003e\u003c/a\u003e fix(Litestar): Apply \u003ccode\u003efailed_request_status_codes\u003c/code\u003e to exceptions raised in mi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/65d31af4ff9b93cddf12d043fe9d631e3c6c85a4\"\u003e\u003ccode\u003e65d31af\u003c/code\u003e\u003c/a\u003e Merge branch 'release/2.31.0'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getsentry/sentry-python/compare/2.30.0...2.32.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `django-simple-history` from 3.8.0 to 3.10.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/django-commons/django-simple-history/releases\"\u003edjango-simple-history's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 3.10.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/blob/3.10.1/CHANGES.rst#3101-2025-06-20\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed changed log syntax to support PyPI packaging. by \u003ca href=\"https://github.com/tim-schilling\"\u003e\u003ccode\u003e@​tim-schilling\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1499\"\u003edjango-commons/django-simple-history#1499\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.10.0...3.10.1\"\u003ehttps://github.com/django-commons/django-simple-history/compare/3.10.0...3.10.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease 3.10.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/jazzband/django-simple-history/blob/3.10.0/CHANGES.rst#3100-2025-06-20\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExclude tests from wheels by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1478\"\u003edjango-commons/django-simple-history#1478\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSwitch repo to Django Commons by \u003ca href=\"https://github.com/tim-schilling\"\u003e\u003ccode\u003e@​tim-schilling\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1429\"\u003edjango-commons/django-simple-history#1429\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for release 3.10.0 by \u003ca href=\"https://github.com/ddabble\"\u003e\u003ccode\u003e@​ddabble\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1498\"\u003edjango-commons/django-simple-history#1498\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/pull/1478\"\u003edjango-commons/django-simple-history#1478\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.9.0...3.10.0\"\u003ehttps://github.com/django-commons/django-simple-history/compare/3.9.0...3.10.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease 3.9.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/jazzband/django-simple-history/blob/3.9.0/CHANGES.rst#390-2025-01-26\"\u003eDocumented changes\u003c/a\u003e\u003c/h3\u003e\n\u003ch3\u003eMerged PRs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove the deprecated \u003ccode\u003esimple_history_admin_list.display_list()\u003c/code\u003e + \u003cstrong\u003eRelease 3.9.0\u003c/strong\u003e by \u003ca href=\"https://github.com/ddabble\"\u003e\u003ccode\u003e@​ddabble\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jazzband/django-simple-history/pull/1444\"\u003ejazzband/django-simple-history#1444\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jazzband/django-simple-history/compare/3.8.0...3.9.0\"\u003ehttps://github.com/jazzband/django-simple-history/compare/3.8.0...3.9.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/django-commons/django-simple-history/blob/master/CHANGES.rst\"\u003edjango-simple-history's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.10.1 (2025-06-20)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed changelog syntax to support PyPI packaging (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1499\"\u003egh-1499\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.0 (2025-06-20)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTests are no longer bundled in released wheels (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1478\"\u003egh-1478\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMove repository to the Django Commons organization (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1391\"\u003egh-1391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.9.0 (2025-01-26)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved the \u003ccode\u003esimple_history_admin_list.display_list()\u003c/code\u003e template tag that was\ndeprecated in version 3.6.0 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1444\"\u003egh-1444\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/dc569842772578558fe4a84e5937d6fc31dd735d\"\u003e\u003ccode\u003edc56984\u003c/code\u003e\u003c/a\u003e Fixed changed log syntax to support PyPI packaging. (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1499\"\u003e#1499\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/58dbb06e68f821c99128b83619a856444319fa04\"\u003e\u003ccode\u003e58dbb06\u003c/code\u003e\u003c/a\u003e Prepare for release 3.10.0 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1498\"\u003e#1498\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/bc9909f32e33f8f33dccd28934994dffb9c4f459\"\u003e\u003ccode\u003ebc9909f\u003c/code\u003e\u003c/a\u003e Switch repo to Django Commons (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1429\"\u003e#1429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/9fb7c5c30b43917eaf98ee5ef266705bd191a825\"\u003e\u003ccode\u003e9fb7c5c\u003c/code\u003e\u003c/a\u003e Bump codecov/codecov-action from 3 to 5 (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1425\"\u003e#1425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/7d6b50bf6f4ccbddd75bc3685dc9cf04240176d2\"\u003e\u003ccode\u003e7d6b50b\u003c/code\u003e\u003c/a\u003e Bump coverage from 7.8.0 to 7.9.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1495\"\u003e#1495\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/8bb61757cb9563c2fd0c17e1fa22c53013c311e3\"\u003e\u003ccode\u003e8bb6175\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1482\"\u003e#1482\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/010928f2fc52acd68df41e61686ed233171530e8\"\u003e\u003ccode\u003e010928f\u003c/code\u003e\u003c/a\u003e Bump tox from 4.25.0 to 4.26.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1485\"\u003e#1485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/5721e31055b0c952daf3601b6c35bcde78cab31b\"\u003e\u003ccode\u003e5721e31\u003c/code\u003e\u003c/a\u003e Bump psycopg[binary] from 3.2.6 to 3.2.9 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1484\"\u003e#1484\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/810149708ad11a284cd581972db46142120f824a\"\u003e\u003ccode\u003e8101497\u003c/code\u003e\u003c/a\u003e Bump flake8 from 7.1.2 to 7.2.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1474\"\u003e#1474\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django-commons/django-simple-history/commit/626ece4082c4a7f87d14566e7a3c568043233ac5\"\u003e\u003ccode\u003e626ece4\u003c/code\u003e\u003c/a\u003e Bump coverage from 7.6.12 to 7.8.0 in /requirements (\u003ca href=\"https://redirect.github.com/django-commons/django-simple-history/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/django-commons/django-simple-history/compare/3.8.0...3.10.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.12.0 to 0.12.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC1802\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there's comments in the \u003ccode\u003elen\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18836\"\u003e#18836\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/32c54189cb45a9d0409a1140265ce6d5fcec214d\"\u003e\u003ccode\u003e32c5418\u003c/code\u003e\u003c/a\u003e Bump 0.12.1 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18969\"\u003e#18969\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b85c219283dcdae474642e9174352da5d9aee132\"\u003e\u003ccode\u003eb85c219\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eFastAPI\u003c/code\u003e] Add fix safety section to \u003ccode\u003eFAST002\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18940\"\u003e#18940\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b1d1cf1d382acd745a57a391a7befb6c300f6c9a\"\u003e\u003ccode\u003eb1d1cf1\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for leading tab mis-alignment in diagnostic renderin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/1dcdf7f41d80b819576b8e146c1af9e72b44d2da\"\u003e\u003ccode\u003e1dcdf7f\u003c/code\u003e\u003c/a\u003e [ty] Resolve python environment in \u003ccode\u003eOptions::to_program_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18960\"\u003e#18960\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d00697621e2a772e9ad0b25c4c74f1572d72fd29\"\u003e\u003ccode\u003ed006976\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76619b96e504d63e574227e8d31d6ecfcd32d1c7\"\u003e\u003ccode\u003e76619b9\u003c/code\u003e\u003c/a\u003e [ty] Fix rendering of long lines that are indented with tabs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/6e25cfba2b2fb607e16102cb5cd84cd775882d80\"\u003e\u003ccode\u003e6e25cfb\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for diagnostic rendering panic\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76387295a581ed5c665b685e1d69fe2751ad24b1\"\u003e\u003ccode\u003e7638729\u003c/code\u003e\u003c/a\u003e [ty] Move venv and conda env discovery to \u003ccode\u003eSearchPath::from_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18938\"\u003e#18938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d04e63a6d9dbb5c751c99d113d7eaf98b765b426\"\u003e\u003ccode\u003ed04e63a\u003c/code\u003e\u003c/a\u003e [ty] Add regression-benchmark for attribute-assignment hang (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18957\"\u003e#18957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/86fd9b634e5526d2093aeb5a37dc6f30cefc1925\"\u003e\u003ccode\u003e86fd9b6\u003c/code\u003e\u003c/a\u003e [ty] Format conflicting types as an enumeration (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18956\"\u003e#18956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.12.0...0.12.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/Ed-BW/consult-demo/pull/7","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ed-BW%2Fconsult-demo/issues/7","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/7/packages"}},{"old_version":"1.1.1","new_version":"1.2.0","update_type":"minor","path":null,"pr_created_at":"2025-06-30T01:09:35.000Z","version_change":"1.1.1 → 1.2.0","issue":{"uuid":"2627454468","node_id":"PR_kwDOL_9g-s6cm8YE","number":115,"state":"closed","title":"Bump the python-packages group across 1 directory with 4 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-07-07T00:50:29.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-30T01:09:35.000Z","updated_at":"2025-07-07T00:50:29.000Z","time_to_close":603654,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"python-packages","update_count":4,"packages":[{"name":"fastapi","old_version":"0.115.13","new_version":"0.115.14"},{"name":"uvicorn","old_version":"0.34.3","new_version":"0.35.0","repository_url":"https://github.com/encode/uvicorn"},{"name":"ruff","old_version":"0.12.0","new_version":"0.12.1","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-packages group with 4 updates in the / directory: [fastapi[all]](https://github.com/fastapi/fastapi), [uvicorn](https://github.com/encode/uvicorn), [ruff](https://github.com/astral-sh/ruff) and [pytest-random-order](https://github.com/jbasko/pytest-random-order).\n\nUpdates `fastapi[all]` from 0.115.13 to 0.115.14\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi[all]'s releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.115.14\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for unions when using \u003ccode\u003eForm\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13827\"\u003e#13827\u003c/a\u003e by \u003ca href=\"https://github.com/patrick91\"\u003e\u003ccode\u003e@​patrick91\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✏️ Fix grammar mistake in \u003ccode\u003edocs/en/docs/advanced/response-directly.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13800\"\u003e#13800\u003c/a\u003e by \u003ca href=\"https://github.com/NavesSapnis\"\u003e\u003ccode\u003e@​NavesSapnis\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Update Speakeasy URL to Speakeasy Sandbox. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13697\"\u003e#13697\u003c/a\u003e by \u003ca href=\"https://github.com/ndimares\"\u003e\u003ccode\u003e@​ndimares\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTranslations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/response-model.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13792\"\u003e#13792\u003c/a\u003e by \u003ca href=\"https://github.com/valentinDruzhinin\"\u003e\u003ccode\u003e@​valentinDruzhinin\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/security/index.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13805\"\u003e#13805\u003c/a\u003e by \u003ca href=\"https://github.com/valentinDruzhinin\"\u003e\u003ccode\u003e@​valentinDruzhinin\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✏️ Fix typo in \u003ccode\u003edocs/ja/docs/tutorial/encoder.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13815\"\u003e#13815\u003c/a\u003e by \u003ca href=\"https://github.com/ruzia\"\u003e\u003ccode\u003e@​ruzia\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✏️ Fix typo in \u003ccode\u003edocs/ja/docs/tutorial/handling-errors.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13814\"\u003e#13814\u003c/a\u003e by \u003ca href=\"https://github.com/ruzia\"\u003e\u003ccode\u003e@​ruzia\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✏️ Fix typo in \u003ccode\u003edocs/ja/docs/tutorial/body-fields.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13802\"\u003e#13802\u003c/a\u003e by \u003ca href=\"https://github.com/ruzia\"\u003e\u003ccode\u003e@​ruzia\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Add Russian translation for \u003ccode\u003edocs/ru/docs/advanced/index.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13797\"\u003e#13797\u003c/a\u003e by \u003ca href=\"https://github.com/NavesSapnis\"\u003e\u003ccode\u003e@​NavesSapnis\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆ [pre-commit.ci] pre-commit autoupdate. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13823\"\u003e#13823\u003c/a\u003e by \u003ca href=\"https://github.com/apps/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/ebdeda2de6e17036e3048940b7a9e725ef6a95b7\"\u003e\u003ccode\u003eebdeda2\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.115.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8fa19a6faa3309a150f6e6fafd2c3a5043c09718\"\u003e\u003ccode\u003e8fa19a6\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/3ecb4c53895c0a8bf3462983d48379abc54fcaec\"\u003e\u003ccode\u003e3ecb4c5\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/9d0d8828cc6b3f0217581d7e607ba8e4d7e0017b\"\u003e\u003ccode\u003e9d0d882\u003c/code\u003e\u003c/a\u003e 🐛 Fix support for unions when using \u003ccode\u003eForm\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/13827\"\u003e#13827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/df35896a0ebb379d68b7c9bd9fdadd476ef6ac83\"\u003e\u003ccode\u003edf35896\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8f64d09ee01daf4773a77e9690e511d928da9b98\"\u003e\u003ccode\u003e8f64d09\u003c/code\u003e\u003c/a\u003e ⬆ [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/13823\"\u003e#13823\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/3b09dd8e01ecdbdc56829cc7b0f524a882eebdd8\"\u003e\u003ccode\u003e3b09dd8\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/c30821ff6ed3d0506ee11a4f4f28cd25c13e7ec8\"\u003e\u003ccode\u003ec30821f\u003c/code\u003e\u003c/a\u003e 🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/response-model.md\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/666890ac7f3211d15e70503002f284fd18107125\"\u003e\u003ccode\u003e666890a\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/937af92ba7573799613c707046777e3731b3499f\"\u003e\u003ccode\u003e937af92\u003c/code\u003e\u003c/a\u003e 🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/security/index.md\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.115.13...0.115.14\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `uvicorn` from 0.34.3 to 0.35.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/encode/uvicorn/releases\"\u003euvicorn's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 0.35.0\u003c/h2\u003e\n\u003ch2\u003eAdded\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eWebSocketsSansIOProtocol\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/uvicorn/pull/2540\"\u003eencode/uvicorn#2540\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChanged\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRefine help message for option \u003ccode\u003e--proxy-headers\u003c/code\u003e by \u003ca href=\"https://github.com/zhangyoufu\"\u003e\u003ccode\u003e@​zhangyoufu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/uvicorn/pull/2653\"\u003eencode/uvicorn#2653\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhangyoufu\"\u003e\u003ccode\u003e@​zhangyoufu\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/encode/uvicorn/pull/2653\"\u003eencode/uvicorn#2653\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/encode/uvicorn/compare/0.34.3...0.35.0\"\u003ehttps://github.com/encode/uvicorn/compare/0.34.3...0.35.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/encode/uvicorn/blob/master/docs/release-notes.md\"\u003euvicorn's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.35.0 (June 28, 2025)\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eWebSocketsSansIOProtocol\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2540\"\u003e#2540\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRefine help message for option \u003ccode\u003e--proxy-headers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2653\"\u003e#2653\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/encode/uvicorn/commit/daecb45327702efe8f702f46fb0870c2d6357837\"\u003e\u003ccode\u003edaecb45\u003c/code\u003e\u003c/a\u003e Version 0.35.0 (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2654\"\u003e#2654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/encode/uvicorn/commit/22dfd3fa95dd035db77099c4903aad6e148a50a8\"\u003e\u003ccode\u003e22dfd3f\u003c/code\u003e\u003c/a\u003e refine help message for option --proxy-headers (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2653\"\u003e#2653\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/encode/uvicorn/commit/b9606269a7f24f2511de0015b7af7df499be569f\"\u003e\u003ccode\u003eb960626\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eWebSocketsSansIOProtocol\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2540\"\u003e#2540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/encode/uvicorn/commit/5432729137988a53bb70d2f3e0c790f9bdf33ec5\"\u003e\u003ccode\u003e5432729\u003c/code\u003e\u003c/a\u003e Add CITATION.cff (\u003ca href=\"https://redirect.github.com/encode/uvicorn/issues/2649\"\u003e#2649\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/encode/uvicorn/compare/0.34.3...0.35.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.12.0 to 0.12.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC1802\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there's comments in the \u003ccode\u003elen\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18836\"\u003e#18836\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/32c54189cb45a9d0409a1140265ce6d5fcec214d\"\u003e\u003ccode\u003e32c5418\u003c/code\u003e\u003c/a\u003e Bump 0.12.1 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18969\"\u003e#18969\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b85c219283dcdae474642e9174352da5d9aee132\"\u003e\u003ccode\u003eb85c219\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eFastAPI\u003c/code\u003e] Add fix safety section to \u003ccode\u003eFAST002\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18940\"\u003e#18940\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b1d1cf1d382acd745a57a391a7befb6c300f6c9a\"\u003e\u003ccode\u003eb1d1cf1\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for leading tab mis-alignment in diagnostic renderin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/1dcdf7f41d80b819576b8e146c1af9e72b44d2da\"\u003e\u003ccode\u003e1dcdf7f\u003c/code\u003e\u003c/a\u003e [ty] Resolve python environment in \u003ccode\u003eOptions::to_program_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18960\"\u003e#18960\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d00697621e2a772e9ad0b25c4c74f1572d72fd29\"\u003e\u003ccode\u003ed006976\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76619b96e504d63e574227e8d31d6ecfcd32d1c7\"\u003e\u003ccode\u003e76619b9\u003c/code\u003e\u003c/a\u003e [ty] Fix rendering of long lines that are indented with tabs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/6e25cfba2b2fb607e16102cb5cd84cd775882d80\"\u003e\u003ccode\u003e6e25cfb\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for diagnostic rendering panic\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76387295a581ed5c665b685e1d69fe2751ad24b1\"\u003e\u003ccode\u003e7638729\u003c/code\u003e\u003c/a\u003e [ty] Move venv and conda env discovery to \u003ccode\u003eSearchPath::from_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18938\"\u003e#18938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d04e63a6d9dbb5c751c99d113d7eaf98b765b426\"\u003e\u003ccode\u003ed04e63a\u003c/code\u003e\u003c/a\u003e [ty] Add regression-benchmark for attribute-assignment hang (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18957\"\u003e#18957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/86fd9b634e5526d2093aeb5a37dc6f30cefc1925\"\u003e\u003ccode\u003e86fd9b6\u003c/code\u003e\u003c/a\u003e [ty] Format conflicting types as an enumeration (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18956\"\u003e#18956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.12.0...0.12.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/fiaisis/fia-auth/pull/115","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/fiaisis%2Ffia-auth/issues/115","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/115/packages"}},{"old_version":"1.1.1","new_version":"1.2.0","update_type":"minor","path":"the testing group","pr_created_at":"2025-06-27T00:21:06.000Z","version_change":"1.1.1 → 1.2.0","issue":{"uuid":"3180876100","node_id":"PR_kwDOBDa8Z86cU3Xs","number":4048,"state":"open","title":"build: bump pytest-random-order from 1.1.1 to 1.2.0 in the testing group","user":"dependabot[bot]","labels":["dependencies","maintenance"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-27T00:21:06.000Z","updated_at":"2025-06-27T02:11:17.174Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build","packages":[{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"}],"path":"the testing group","ecosystem":"pip"},"body":"Bumps the testing group with 1 update: [pytest-random-order](https://github.com/jbasko/pytest-random-order).\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=pytest-random-order\u0026package-manager=pip\u0026previous-version=1.1.1\u0026new-version=1.2.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/ansys/pymapdl/pull/4048","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ansys%2Fpymapdl/issues/4048","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/4048/packages"}},{"old_version":"1.1.1","new_version":"1.2.0","update_type":"minor","path":null,"pr_created_at":"2025-06-26T23:58:17.000Z","version_change":"1.1.1 → 1.2.0","issue":{"uuid":"2622682866","node_id":"PR_kwDOI1NVYM6cUvby","number":318,"state":"open","title":"Bump the jobwatcher-python-packages group across 1 directory with 2 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-26T23:58:17.000Z","updated_at":"2025-07-11T12:36:03.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"jobwatcher-python-packages","update_count":2,"packages":[{"name":"ruff","old_version":"0.12.0","new_version":"0.12.1","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"}],"path":null,"ecosystem":"pip"},"body":"Bumps the jobwatcher-python-packages group with 2 updates in the /job_watcher directory: [ruff](https://github.com/astral-sh/ruff) and [pytest-random-order](https://github.com/jbasko/pytest-random-order).\n\nUpdates `ruff` from 0.12.0 to 0.12.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC1802\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there's comments in the \u003ccode\u003elen\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18836\"\u003e#18836\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/32c54189cb45a9d0409a1140265ce6d5fcec214d\"\u003e\u003ccode\u003e32c5418\u003c/code\u003e\u003c/a\u003e Bump 0.12.1 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18969\"\u003e#18969\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b85c219283dcdae474642e9174352da5d9aee132\"\u003e\u003ccode\u003eb85c219\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eFastAPI\u003c/code\u003e] Add fix safety section to \u003ccode\u003eFAST002\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18940\"\u003e#18940\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b1d1cf1d382acd745a57a391a7befb6c300f6c9a\"\u003e\u003ccode\u003eb1d1cf1\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for leading tab mis-alignment in diagnostic renderin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/1dcdf7f41d80b819576b8e146c1af9e72b44d2da\"\u003e\u003ccode\u003e1dcdf7f\u003c/code\u003e\u003c/a\u003e [ty] Resolve python environment in \u003ccode\u003eOptions::to_program_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18960\"\u003e#18960\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d00697621e2a772e9ad0b25c4c74f1572d72fd29\"\u003e\u003ccode\u003ed006976\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76619b96e504d63e574227e8d31d6ecfcd32d1c7\"\u003e\u003ccode\u003e76619b9\u003c/code\u003e\u003c/a\u003e [ty] Fix rendering of long lines that are indented with tabs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/6e25cfba2b2fb607e16102cb5cd84cd775882d80\"\u003e\u003ccode\u003e6e25cfb\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for diagnostic rendering panic\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76387295a581ed5c665b685e1d69fe2751ad24b1\"\u003e\u003ccode\u003e7638729\u003c/code\u003e\u003c/a\u003e [ty] Move venv and conda env discovery to \u003ccode\u003eSearchPath::from_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18938\"\u003e#18938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d04e63a6d9dbb5c751c99d113d7eaf98b765b426\"\u003e\u003ccode\u003ed04e63a\u003c/code\u003e\u003c/a\u003e [ty] Add regression-benchmark for attribute-assignment hang (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18957\"\u003e#18957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/86fd9b634e5526d2093aeb5a37dc6f30cefc1925\"\u003e\u003ccode\u003e86fd9b6\u003c/code\u003e\u003c/a\u003e [ty] Format conflicting types as an enumeration (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18956\"\u003e#18956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.12.0...0.12.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/fiaisis/jobcontroller/pull/318","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/fiaisis%2Fjobcontroller/issues/318","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/318/packages"}},{"old_version":"1.1.1","new_version":"1.2.0","update_type":"minor","path":null,"pr_created_at":"2025-06-26T23:30:06.000Z","version_change":"1.1.1 → 1.2.0","issue":{"uuid":"2622638071","node_id":"PR_kwDOI1NVYM6cUkf3","number":317,"state":"open","title":"Bump the jobcreator-python-packages group across 1 directory with 2 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-26T23:30:06.000Z","updated_at":"2025-07-11T12:30:16.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"jobcreator-python-packages","update_count":2,"packages":[{"name":"ruff","old_version":"0.12.0","new_version":"0.12.1","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"}],"path":null,"ecosystem":"pip"},"body":"Bumps the jobcreator-python-packages group with 2 updates in the /job_creator directory: [ruff](https://github.com/astral-sh/ruff) and [pytest-random-order](https://github.com/jbasko/pytest-random-order).\n\nUpdates `ruff` from 0.12.0 to 0.12.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC1802\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there's comments in the \u003ccode\u003elen\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18836\"\u003e#18836\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/32c54189cb45a9d0409a1140265ce6d5fcec214d\"\u003e\u003ccode\u003e32c5418\u003c/code\u003e\u003c/a\u003e Bump 0.12.1 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18969\"\u003e#18969\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b85c219283dcdae474642e9174352da5d9aee132\"\u003e\u003ccode\u003eb85c219\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eFastAPI\u003c/code\u003e] Add fix safety section to \u003ccode\u003eFAST002\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18940\"\u003e#18940\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b1d1cf1d382acd745a57a391a7befb6c300f6c9a\"\u003e\u003ccode\u003eb1d1cf1\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for leading tab mis-alignment in diagnostic renderin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/1dcdf7f41d80b819576b8e146c1af9e72b44d2da\"\u003e\u003ccode\u003e1dcdf7f\u003c/code\u003e\u003c/a\u003e [ty] Resolve python environment in \u003ccode\u003eOptions::to_program_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18960\"\u003e#18960\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d00697621e2a772e9ad0b25c4c74f1572d72fd29\"\u003e\u003ccode\u003ed006976\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76619b96e504d63e574227e8d31d6ecfcd32d1c7\"\u003e\u003ccode\u003e76619b9\u003c/code\u003e\u003c/a\u003e [ty] Fix rendering of long lines that are indented with tabs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/6e25cfba2b2fb607e16102cb5cd84cd775882d80\"\u003e\u003ccode\u003e6e25cfb\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for diagnostic rendering panic\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76387295a581ed5c665b685e1d69fe2751ad24b1\"\u003e\u003ccode\u003e7638729\u003c/code\u003e\u003c/a\u003e [ty] Move venv and conda env discovery to \u003ccode\u003eSearchPath::from_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18938\"\u003e#18938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d04e63a6d9dbb5c751c99d113d7eaf98b765b426\"\u003e\u003ccode\u003ed04e63a\u003c/code\u003e\u003c/a\u003e [ty] Add regression-benchmark for attribute-assignment hang (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18957\"\u003e#18957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/86fd9b634e5526d2093aeb5a37dc6f30cefc1925\"\u003e\u003ccode\u003e86fd9b6\u003c/code\u003e\u003c/a\u003e [ty] Format conflicting types as an enumeration (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18956\"\u003e#18956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.12.0...0.12.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/fiaisis/jobcontroller/pull/317","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/fiaisis%2Fjobcontroller/issues/317","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/317/packages"}},{"old_version":"1.1.1","new_version":"1.2.0","update_type":"minor","path":null,"pr_created_at":"2025-06-26T21:07:32.000Z","version_change":"1.1.1 → 1.2.0","issue":{"uuid":"2622342467","node_id":"PR_kwDOLvZq1c6cTcVD","number":246,"state":"closed","title":"Bump the python-packages group across 1 directory with 3 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-06-30T20:19:19.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-26T21:07:32.000Z","updated_at":"2025-06-30T20:19:19.000Z","time_to_close":342707,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"python-packages","update_count":3,"packages":[{"name":"fastapi","old_version":"0.115.13","new_version":"0.115.14"},{"name":"ruff","old_version":"0.12.0","new_version":"0.12.1","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pytest-random-order","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jbasko/pytest-random-order"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-packages group with 3 updates in the /plotting-service directory: [fastapi[all]](https://github.com/fastapi/fastapi), [ruff](https://github.com/astral-sh/ruff) and [pytest-random-order](https://github.com/jbasko/pytest-random-order).\n\nUpdates `fastapi[all]` from 0.115.13 to 0.115.14\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi[all]'s releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.115.14\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for unions when using \u003ccode\u003eForm\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13827\"\u003e#13827\u003c/a\u003e by \u003ca href=\"https://github.com/patrick91\"\u003e\u003ccode\u003e@​patrick91\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✏️ Fix grammar mistake in \u003ccode\u003edocs/en/docs/advanced/response-directly.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13800\"\u003e#13800\u003c/a\u003e by \u003ca href=\"https://github.com/NavesSapnis\"\u003e\u003ccode\u003e@​NavesSapnis\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Update Speakeasy URL to Speakeasy Sandbox. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13697\"\u003e#13697\u003c/a\u003e by \u003ca href=\"https://github.com/ndimares\"\u003e\u003ccode\u003e@​ndimares\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTranslations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/response-model.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13792\"\u003e#13792\u003c/a\u003e by \u003ca href=\"https://github.com/valentinDruzhinin\"\u003e\u003ccode\u003e@​valentinDruzhinin\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/security/index.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13805\"\u003e#13805\u003c/a\u003e by \u003ca href=\"https://github.com/valentinDruzhinin\"\u003e\u003ccode\u003e@​valentinDruzhinin\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✏️ Fix typo in \u003ccode\u003edocs/ja/docs/tutorial/encoder.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13815\"\u003e#13815\u003c/a\u003e by \u003ca href=\"https://github.com/ruzia\"\u003e\u003ccode\u003e@​ruzia\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✏️ Fix typo in \u003ccode\u003edocs/ja/docs/tutorial/handling-errors.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13814\"\u003e#13814\u003c/a\u003e by \u003ca href=\"https://github.com/ruzia\"\u003e\u003ccode\u003e@​ruzia\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✏️ Fix typo in \u003ccode\u003edocs/ja/docs/tutorial/body-fields.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13802\"\u003e#13802\u003c/a\u003e by \u003ca href=\"https://github.com/ruzia\"\u003e\u003ccode\u003e@​ruzia\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Add Russian translation for \u003ccode\u003edocs/ru/docs/advanced/index.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13797\"\u003e#13797\u003c/a\u003e by \u003ca href=\"https://github.com/NavesSapnis\"\u003e\u003ccode\u003e@​NavesSapnis\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆ [pre-commit.ci] pre-commit autoupdate. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13823\"\u003e#13823\u003c/a\u003e by \u003ca href=\"https://github.com/apps/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/ebdeda2de6e17036e3048940b7a9e725ef6a95b7\"\u003e\u003ccode\u003eebdeda2\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.115.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8fa19a6faa3309a150f6e6fafd2c3a5043c09718\"\u003e\u003ccode\u003e8fa19a6\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/3ecb4c53895c0a8bf3462983d48379abc54fcaec\"\u003e\u003ccode\u003e3ecb4c5\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/9d0d8828cc6b3f0217581d7e607ba8e4d7e0017b\"\u003e\u003ccode\u003e9d0d882\u003c/code\u003e\u003c/a\u003e 🐛 Fix support for unions when using \u003ccode\u003eForm\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/13827\"\u003e#13827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/df35896a0ebb379d68b7c9bd9fdadd476ef6ac83\"\u003e\u003ccode\u003edf35896\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8f64d09ee01daf4773a77e9690e511d928da9b98\"\u003e\u003ccode\u003e8f64d09\u003c/code\u003e\u003c/a\u003e ⬆ [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/13823\"\u003e#13823\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/3b09dd8e01ecdbdc56829cc7b0f524a882eebdd8\"\u003e\u003ccode\u003e3b09dd8\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/c30821ff6ed3d0506ee11a4f4f28cd25c13e7ec8\"\u003e\u003ccode\u003ec30821f\u003c/code\u003e\u003c/a\u003e 🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/response-model.md\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/666890ac7f3211d15e70503002f284fd18107125\"\u003e\u003ccode\u003e666890a\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/937af92ba7573799613c707046777e3731b3499f\"\u003e\u003ccode\u003e937af92\u003c/code\u003e\u003c/a\u003e 🌐 Add Ukrainian translation for \u003ccode\u003edocs/uk/docs/tutorial/security/index.md\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.115.13...0.115.14\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.12.0 to 0.12.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.1\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-errmsg\u003c/code\u003e] Extend \u003ccode\u003eEM101\u003c/code\u003e to support byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18867\"\u003e#18867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH202\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18763\"\u003e#18763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epygrep-hooks\u003c/code\u003e] Add \u003ccode\u003eAsyncMock\u003c/code\u003e methods to \u003ccode\u003einvalid-mock-access\u003c/code\u003e (\u003ccode\u003ePGH005\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18547\"\u003e#18547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Ignore \u003ccode\u003e__init__.py\u003c/code\u003e files in (\u003ccode\u003ePLC0414\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18400\"\u003e#18400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Trigger \u003ccode\u003eRUF037\u003c/code\u003e for empty string and byte strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18862\"\u003e#18862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix missing blank lines before decorated classes in \u003ccode\u003e.pyi\u003c/code\u003e files (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18888\"\u003e#18888\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid generating diagnostics with per-file ignores (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18801\"\u003e#18801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle parenthesized arguments in \u003ccode\u003eremove_argument\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18805\"\u003e#18805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Avoid false positive for \u003ccode\u003eexc_info=True\u003c/code\u003e outside \u003ccode\u003elogger.exception\u003c/code\u003e (\u003ccode\u003eLOG014\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18737\"\u003e#18737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Enforce \u003ccode\u003epytest\u003c/code\u003e import for decorators (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18779\"\u003e#18779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Mark autofix for \u003ccode\u003ePT001\u003c/code\u003e and \u003ccode\u003ePT023\u003c/code\u003e as unsafe if there's comments in the decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18792\"\u003e#18792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] \u003ccode\u003ePT001\u003c/code\u003e/\u003ccode\u003ePT023\u003c/code\u003e fix makes syntax error on parenthesized decorator (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18782\"\u003e#18782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-raise\u003c/code\u003e] Make fix unsafe if it deletes comments (\u003ccode\u003eRSE102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18788\"\u003e#18788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix \u003ccode\u003eSIM911\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18793\"\u003e#18793\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix false negatives for shadowed bindings (\u003ccode\u003eSIM910\u003c/code\u003e, \u003ccode\u003eSIM911\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18794\"\u003e#18794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Preserve original behavior for \u003ccode\u003eexcept ()\u003c/code\u003e and bare \u003ccode\u003eexcept\u003c/code\u003e (\u003ccode\u003eSIM105\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18213\"\u003e#18213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Fix \u003ccode\u003ePYI041\u003c/code\u003e's fix causing \u003ccode\u003eTypeError\u003c/code\u003e with \u003ccode\u003eNone | None | ...\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18637\"\u003e#18637\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix \u003ccode\u003ePERF101\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there are comments in the \u003ccode\u003elist\u003c/code\u003e call expr (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18803\"\u003e#18803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix false negative in \u003ccode\u003ePERF401\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18866\"\u003e#18866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Avoid flattening nested \u003ccode\u003emin\u003c/code\u003e/\u003ccode\u003emax\u003c/code\u003e when outer call has single argument (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/16885\"\u003e#16885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC2801\u003c/code\u003e autofix creating a syntax error (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18857\"\u003e#18857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Mark \u003ccode\u003ePLE0241\u003c/code\u003e autofix as unsafe if there's comments in the base classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18832\"\u003e#18832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Suppress \u003ccode\u003ePLE2510\u003c/code\u003e/\u003ccode\u003ePLE2512\u003c/code\u003e/\u003ccode\u003ePLE2513\u003c/code\u003e/\u003ccode\u003ePLE2514\u003c/code\u003e/\u003ccode\u003ePLE2515\u003c/code\u003e autofix if the text contains an odd number of backslashes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18856\"\u003e#18856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Detect more exotic float literals in \u003ccode\u003eFURB164\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18925\"\u003e#18925\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Fix \u003ccode\u003eFURB163\u003c/code\u003e autofix creating a syntax error for \u003ccode\u003eyield\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18756\"\u003e#18756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Mark \u003ccode\u003eFURB129\u003c/code\u003e autofix as unsafe if there's comments in the \u003ccode\u003ereadlines\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18858\"\u003e#18858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix casing of \u003ccode\u003eanalyze.direction\u003c/code\u003e variant names (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18892\"\u003e#18892\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix f-string interpolation escaping in generated fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18882\"\u003e#18882\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-return\u003c/code\u003e] Mark \u003ccode\u003eRET501\u003c/code\u003e fix unsafe if comments are inside (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18780\"\u003e#18780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Fix detection for large integer sleep durations in \u003ccode\u003eASYNC116\u003c/code\u003e rule (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18767\"\u003e#18767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Mark autofix for \u003ccode\u003eASYNC115\u003c/code\u003e as unsafe if the call expression contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18753\"\u003e#18753\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Mark autofix for \u003ccode\u003eB004\u003c/code\u003e as unsafe if the \u003ccode\u003ehasattr\u003c/code\u003e call expr contains comments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18755\"\u003e#18755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehension\u003c/code\u003e] Mark autofix for \u003ccode\u003eC420\u003c/code\u003e as unsafe if there's comments inside the dict comprehension (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18768\"\u003e#18768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Handle template strings for comprehension fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18710\"\u003e#18710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-future-annotations\u003c/code\u003e] Add autofix (\u003ccode\u003eFA100\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18903\"\u003e#18903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Mark \u003ccode\u003eF504\u003c/code\u003e/\u003ccode\u003eF522\u003c/code\u003e/\u003ccode\u003eF523\u003c/code\u003e autofix as unsafe if there's a call with side effect (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18839\"\u003e#18839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow fix with comments and document performance implications (\u003ccode\u003ePLW3301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18936\"\u003e#18936\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Detect more exotic \u003ccode\u003eNaN\u003c/code\u003e literals in \u003ccode\u003ePLW0177\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18630\"\u003e#18630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Fix \u003ccode\u003ePLC1802\u003c/code\u003e autofix creating a syntax error and mark autofix as unsafe if there's comments in the \u003ccode\u003elen\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/18836\"\u003e#18836\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/32c54189cb45a9d0409a1140265ce6d5fcec214d\"\u003e\u003ccode\u003e32c5418\u003c/code\u003e\u003c/a\u003e Bump 0.12.1 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18969\"\u003e#18969\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b85c219283dcdae474642e9174352da5d9aee132\"\u003e\u003ccode\u003eb85c219\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eFastAPI\u003c/code\u003e] Add fix safety section to \u003ccode\u003eFAST002\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18940\"\u003e#18940\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b1d1cf1d382acd745a57a391a7befb6c300f6c9a\"\u003e\u003ccode\u003eb1d1cf1\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for leading tab mis-alignment in diagnostic renderin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/1dcdf7f41d80b819576b8e146c1af9e72b44d2da\"\u003e\u003ccode\u003e1dcdf7f\u003c/code\u003e\u003c/a\u003e [ty] Resolve python environment in \u003ccode\u003eOptions::to_program_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18960\"\u003e#18960\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d00697621e2a772e9ad0b25c4c74f1572d72fd29\"\u003e\u003ccode\u003ed006976\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eruff\u003c/code\u003e] Fix false positives and negatives in \u003ccode\u003eRUF010\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18690\"\u003e#18690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76619b96e504d63e574227e8d31d6ecfcd32d1c7\"\u003e\u003ccode\u003e76619b9\u003c/code\u003e\u003c/a\u003e [ty] Fix rendering of long lines that are indented with tabs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/6e25cfba2b2fb607e16102cb5cd84cd775882d80\"\u003e\u003ccode\u003e6e25cfb\u003c/code\u003e\u003c/a\u003e [ty] Add regression test for diagnostic rendering panic\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76387295a581ed5c665b685e1d69fe2751ad24b1\"\u003e\u003ccode\u003e7638729\u003c/code\u003e\u003c/a\u003e [ty] Move venv and conda env discovery to \u003ccode\u003eSearchPath::from_settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18938\"\u003e#18938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d04e63a6d9dbb5c751c99d113d7eaf98b765b426\"\u003e\u003ccode\u003ed04e63a\u003c/code\u003e\u003c/a\u003e [ty] Add regression-benchmark for attribute-assignment hang (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18957\"\u003e#18957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/86fd9b634e5526d2093aeb5a37dc6f30cefc1925\"\u003e\u003ccode\u003e86fd9b6\u003c/code\u003e\u003c/a\u003e [ty] Format conflicting types as an enumeration (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/18956\"\u003e#18956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.12.0...0.12.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-random-order` from 1.1.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-random-order/blob/main/CHANGELOG.rst\"\u003epytest-random-order's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0\n+++++\u003c/p\u003e\n\u003cp\u003e\u003cem\u003e2025-06-22\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for EOL Python versions and added support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e[#58](https://github.com/jbasko/pytest-random-order/issues/58) \u0026lt;https://github.com/pytest-dev/pytest-random-order/issues/58\u0026gt;\u003c/code\u003e_: \u003ccode\u003ereturn\u003c/code\u003e in a \u003ccode\u003efinally\u003c/code\u003e block swallows exceptions and raises a warning in Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/1bddb0fdf6da0920fa0ea20832135387679f9339\"\u003e\u003ccode\u003e1bddb0f\u003c/code\u003e\u003c/a\u003e Fix RELEASING.rst instructions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/43803c844a3eba26ad4eee4044924905a87f98a3\"\u003e\u003ccode\u003e43803c8\u003c/code\u003e\u003c/a\u003e Release 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/754a8e45b848a86f236d6e079186e0d55d3ab7be\"\u003e\u003ccode\u003e754a8e4\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/60\"\u003e#60\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/a8f09eb84cf8730c361e0a8f72076619a3ab8baf\"\u003e\u003ccode\u003ea8f09eb\u003c/code\u003e\u003c/a\u003e Fix setuptools-scm configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/e898111e273df7337ac69421275f87e3dffda60f\"\u003e\u003ccode\u003ee898111\u003c/code\u003e\u003c/a\u003e Remove \u003ccode\u003ereturn\u003c/code\u003e from \u003ccode\u003efinally\u003c/code\u003e block\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/90a346f447b012e6ff1b7c0d45586622c2cc5388\"\u003e\u003ccode\u003e90a346f\u003c/code\u003e\u003c/a\u003e Modernize CI and configuration (\u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/59\"\u003e#59\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/76c4d58f002c44bb6b89ed0477f99376064d1ebf\"\u003e\u003ccode\u003e76c4d58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/57\"\u003e#57\u003c/a\u003e from euri10/python_versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/32f0ef746267155eabeecaaa94727fc2759591a7\"\u003e\u003ccode\u003e32f0ef7\u003c/code\u003e\u003c/a\u003e ci: added 3.11 and 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-random-order/commit/ac1369a174a6f4a2cca295e73c4c6b04c613888c\"\u003e\u003ccode\u003eac1369a\u003c/code\u003e\u003c/a\u003e Comment to guard against removing 'none' option as suggested in \u003ca href=\"https://redirect.github.com/jbasko/pytest-random-order/issues/40\"\u003e#40\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jbasko/pytest-random-order/compare/v1.1.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/fiaisis/plotting-service/pull/246","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/fiaisis%2Fplotting-service/issues/246","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/246/packages"}}]}