{"id":36202,"name":"datafusion","ecosystem":"pip","repository_url":"https://github.com/apache/datafusion-python","issues_count":26,"created_at":"2025-06-08T01:32:29.452Z","updated_at":"2025-06-08T01:32:29.452Z","purl":"pkg:pypi/datafusion","metadata":{"id":2688654,"name":"datafusion","ecosystem":"pypi","description":"Build and run queries against data","homepage":"https://datafusion.apache.org/python","licenses":"Apache-2.0","normalized_licenses":["Apache-2.0"],"repository_url":"https://github.com/apache/datafusion-python","keywords_array":["datafusion","dataframe","rust","query-engine"],"namespace":null,"versions_count":35,"first_release_published_at":"2020-11-18T07:19:56.000Z","latest_release_published_at":"2025-05-28T18:23:17.000Z","latest_release_number":"47.0.0","last_synced_at":"2025-06-04T03:26:31.033Z","created_at":"2022-04-10T10:32:21.332Z","updated_at":"2025-06-04T03:26:31.034Z","registry_url":"https://pypi.org/project/datafusion/","install_command":"pip install datafusion --index-url https://pypi.org/simple","documentation_url":"https://datafusion.readthedocs.io/","metadata":{"funding":null,"documentation":null,"classifiers":["Development Status :: 2 - Pre-Alpha","Intended Audience :: Developers","License :: OSI Approved","License :: OSI Approved :: Apache Software License","Operating System :: MacOS","Operating System :: Microsoft :: Windows","Operating System :: POSIX :: Linux","Programming Language :: Python","Programming Language :: Python :: 3","Programming Language :: Python :: 3.10","Programming Language :: Python :: 3.11","Programming Language :: Python :: 3.12","Programming Language :: Python :: 3.13","Programming Language :: Python :: 3.9","Programming Language :: Rust"],"normalized_name":"datafusion"},"repo_metadata":{"id":47898243,"uuid":"515951203","full_name":"apache/datafusion-python","owner":"apache","description":"Apache DataFusion Python Bindings","archived":false,"fork":false,"pushed_at":"2025-05-28T18:39:30.000Z","size":8535,"stargazers_count":455,"open_issues_count":94,"forks_count":112,"subscribers_count":33,"default_branch":"main","last_synced_at":"2025-06-01T17:31:16.003Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://datafusion.apache.org/python","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/apache.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.txt","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,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2022-07-20T11:19:28.000Z","updated_at":"2025-05-28T18:34:23.000Z","dependencies_parsed_at":"2023-09-24T02:18:28.012Z","dependency_job_id":"fbf7c2d9-6245-43be-a923-7a3f3a5f4641","html_url":"https://github.com/apache/datafusion-python","commit_stats":{"total_commits":297,"total_committers":37,"mean_commits":8.027027027027026,"dds":0.6902356902356903,"last_synced_commit":"1f49d4615ebc464394d38b2dea0fa130749ea55f"},"previous_names":["apache/datafusion-python","apache/arrow-datafusion-python"],"tags_count":72,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fdatafusion-python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fdatafusion-python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fdatafusion-python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fdatafusion-python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apache","download_url":"https://codeload.github.com/apache/datafusion-python/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fdatafusion-python/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":257538643,"owners_count":22561369,"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":"apache","name":"The Apache Software Foundation","uuid":"47359","kind":"organization","description":"","email":null,"website":"https://www.apache.org/","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/47359?v=4","repositories_count":2779,"last_synced_at":"2025-06-01T10:07:46.493Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/apache","funding_links":[],"total_stars":1216417,"followers":18229,"following":0,"created_at":"2022-11-02T16:23:23.532Z","updated_at":"2025-06-01T10:07:46.494Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apache","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apache/repositories"}},"repo_metadata_updated_at":"2025-06-02T02:12:13.118Z","dependent_packages_count":8,"downloads":136846,"downloads_period":"last-month","dependent_repos_count":17,"rankings":{"downloads":2.922857964840349,"dependent_repos_count":3.5007230458233862,"dependent_packages_count":2.3666079825624378,"stargazers_count":4.576495964269109,"forks_count":6.211831260816859,"docker_downloads_count":3.870146355037232,"average":3.9081104288915625},"purl":"pkg:pypi/datafusion","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/datafusion","docker_dependents_count":1,"docker_downloads_count":66,"usage_url":"https://repos.ecosyste.ms/usage/pypi/datafusion","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/datafusion/dependencies","status":null,"funding_links":[],"critical":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/datafusion/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/datafusion/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/datafusion/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/datafusion/related_packages","maintainers":[{"uuid":"kszucs","login":"kszucs","name":null,"email":null,"url":null,"packages_count":36,"html_url":"https://pypi.org/user/kszucs/","role":null,"created_at":"2023-02-06T22:36:59.045Z","updated_at":"2023-02-06T22:36:59.045Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/kszucs/packages"},{"uuid":"jorgecarleitao","login":"jorgecarleitao","name":null,"email":null,"url":null,"packages_count":11,"html_url":"https://pypi.org/user/jorgecarleitao/","role":null,"created_at":"2023-02-06T22:36:59.001Z","updated_at":"2023-02-06T22:36:59.001Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/jorgecarleitao/packages"},{"uuid":"wesm","login":"wesm","name":null,"email":null,"url":null,"packages_count":12,"html_url":"https://pypi.org/user/wesm/","role":null,"created_at":"2023-02-06T22:36:59.061Z","updated_at":"2023-02-06T22:36:59.061Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/wesm/packages"},{"uuid":"xhochy","login":"xhochy","name":null,"email":null,"url":null,"packages_count":12,"html_url":"https://pypi.org/user/xhochy/","role":null,"created_at":"2023-02-06T22:36:59.077Z","updated_at":"2023-02-06T22:36:59.077Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/xhochy/packages"},{"uuid":"kou","login":"kou","name":null,"email":null,"url":null,"packages_count":4,"html_url":"https://pypi.org/user/kou/","role":null,"created_at":"2023-02-06T22:36:59.032Z","updated_at":"2023-02-06T22:36:59.032Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/kou/packages"},{"uuid":"alamb","login":"alamb","name":null,"email":null,"url":null,"packages_count":1,"html_url":"https://pypi.org/user/alamb/","role":null,"created_at":"2023-02-06T22:36:58.956Z","updated_at":"2023-02-06T22:36:58.956Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/alamb/packages"},{"uuid":"andygrove","login":"andygrove","name":null,"email":null,"url":null,"packages_count":5,"html_url":"https://pypi.org/user/andygrove/","role":null,"created_at":"2023-02-06T22:36:58.970Z","updated_at":"2023-02-06T22:36:58.970Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/andygrove/packages"},{"uuid":"etareduce","login":"etareduce","name":null,"email":null,"url":null,"packages_count":8,"html_url":"https://pypi.org/user/etareduce/","role":null,"created_at":"2023-02-06T22:36:58.988Z","updated_at":"2023-02-06T22:36:58.988Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/etareduce/packages"},{"uuid":"jdye64","login":"jdye64","name":null,"email":null,"url":null,"packages_count":5,"html_url":"https://pypi.org/user/jdye64/","role":null,"created_at":"2023-05-24T03:19:56.926Z","updated_at":"2023-05-24T03:19:56.926Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/jdye64/packages"},{"uuid":"timsaucer","login":"timsaucer","name":null,"email":null,"url":null,"packages_count":1,"html_url":"https://pypi.org/user/timsaucer/","role":null,"created_at":"2025-02-13T20:17:33.560Z","updated_at":"2025-02-13T20:17:33.560Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/timsaucer/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":690698,"maintainers_count":292850,"namespaces_count":0,"keywords_count":228675,"github":"pypi","metadata":{"funded_packages_count":48967},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2025-06-07T05:28:50.775Z","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":4,"unique_repositories_count_past_30_days":1,"recent_issues":[{"uuid":"4339256101","node_id":"PR_kwDOHTdvBs7WIng2","number":1590,"state":"closed","title":"deps(ibis): bump the all group across 1 directory with 33 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-04T23:10:36.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-27T22:31:53.000Z","updated_at":"2026-05-04T23:10:38.000Z","time_to_close":607123,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":33,"packages":[{"name":"fastapi","old_version":"0.120.1","new_version":"0.136.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"pydantic","old_version":"2.10.6","new_version":"2.13.3","repository_url":"https://github.com/pydantic/pydantic"},{"name":"ibis-framework","old_version":"10.8.0","new_version":"12.0.0","repository_url":"https://github.com/ibis-project/ibis"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.49.2","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.2.2","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"orjson","old_version":"3.11.7","new_version":"3.11.8","repository_url":"https://github.com/ijl/orjson"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.19.0","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"anyio","old_version":"4.10.0","new_version":"4.13.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"duckdb","old_version":"1.3.2","new_version":"1.5.2","repository_url":"https://github.com/duckdb/duckdb-python"},{"name":"oracledb","old_version":"3.3.0","new_version":"3.4.2","repository_url":"https://github.com/oracle/python-oracledb"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.46.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"gunicorn","old_version":"23.0.0","new_version":"25.3.0","repository_url":"https://github.com/benoitc/gunicorn"},{"name":"uvicorn-worker","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/Kludex/uvicorn-worker"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.13","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"53.0.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"starlette","old_version":"0.49.3","new_version":"1.0.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"databricks-sql-connector","old_version":"4.2.5","new_version":"4.2.6","repository_url":"https://github.com/databricks/databricks-sql-python"},{"name":"databricks-sdk","old_version":"0.73.0","new_version":"0.105.0","repository_url":"https://github.com/databricks/databricks-sdk-py"},{"name":"pyspark","old_version":"3.5.7","new_version":"4.1.1","repository_url":"https://github.com/apache/spark"},{"name":"pyopenssl","old_version":"26.0.0","new_version":"26.1.0","repository_url":"https://github.com/pyca/pyopenssl"},{"name":"wren-engine","old_version":"0.1.0","new_version":"0.3.0","repository_url":"https://github.com/Canner/wren-engine"},{"name":"matplotlib","old_version":"3.10.8","new_version":"3.10.9","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"plotly","old_version":"6.6.0","new_version":"6.7.0","repository_url":"https://github.com/plotly/plotly.py"},{"name":"pytest","old_version":"8.3.5","new_version":"9.0.3","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.14.2","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.49","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.6.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.15.12","repository_url":"https://github.com/astral-sh/ruff"},{"name":"psycopg2","old_version":"2.9.11","new_version":"2.9.12","repository_url":"https://github.com/psycopg/psycopg2"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.15.1","repository_url":"https://github.com/ClickHouse/clickhouse-connect"},{"name":"polars","old_version":"1.39.3","new_version":"1.40.1","repository_url":"https://github.com/pola-rs/polars"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 33 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.120.1` | `0.136.1` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.13.3` |\n| [ibis-framework](https://github.com/ibis-project/ibis) | `10.8.0` | `12.0.0` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.49.2` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.2.2` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.7` | `3.11.8` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.3` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.19.0` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.10.0` | `4.13.0` |\n| [duckdb](https://github.com/duckdb/duckdb-python) | `1.3.2` | `1.5.2` |\n| [oracledb](https://github.com/oracle/python-oracledb) | `3.3.0` | `3.4.2` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.46.0` |\n| [gunicorn](https://github.com/benoitc/gunicorn) | `23.0.0` | `25.3.0` |\n| [uvicorn-worker](https://github.com/Kludex/uvicorn-worker) | `0.3.0` | `0.4.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.13` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `53.0.0` |\n| [starlette](https://github.com/Kludex/starlette) | `0.49.3` | `1.0.0` |\n| [databricks-sql-connector](https://github.com/databricks/databricks-sql-python) | `4.2.5` | `4.2.6` |\n| [databricks-sdk](https://github.com/databricks/databricks-sdk-py) | `0.73.0` | `0.105.0` |\n| [pyspark](https://github.com/apache/spark) | `3.5.7` | `4.1.1` |\n| [pyopenssl](https://github.com/pyca/pyopenssl) | `26.0.0` | `26.1.0` |\n| [wren-engine](https://github.com/Canner/wren-engine) | `0.1.0` | `0.3.0` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.10.8` | `3.10.9` |\n| [plotly](https://github.com/plotly/plotly.py) | `6.6.0` | `6.7.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `9.0.3` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.14.2` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.49` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.6.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.15.12` |\n| [psycopg2](https://github.com/psycopg/psycopg2) | `2.9.11` | `2.9.12` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.15.1` |\n| [polars](https://github.com/pola-rs/polars) | `1.39.3` | `1.40.1` |\n\n\nUpdates `fastapi` from 0.120.1 to 0.136.1\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's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.136.1\u003c/h2\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Update Pydantic v2 code to address deprecations. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15101\"\u003e#15101\u003c/a\u003e by \u003ca href=\"https://github.com/svlandeg\"\u003e\u003ccode\u003e@​svlandeg\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🔨 Tweak translation script. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15174\"\u003e#15174\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump mkdocs-material from 9.7.1 to 9.7.6. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15408\"\u003e#15408\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump inline-snapshot from 0.31.1 to 0.32.6. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15409\"\u003e#15409\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump pytest-codspeed from 4.3.0 to 4.4.0. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15407\"\u003e#15407\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump pytest-cov from 7.0.0 to 7.1.0. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15406\"\u003e#15406\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump cloudflare/wrangler-action from 3.14.1 to 3.15.0. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15405\"\u003e#15405\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump mypy from 1.19.1 to 1.20.1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15410\"\u003e#15410\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump python-dotenv from 1.2.1 to 1.2.2. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15400\"\u003e#15400\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump starlette from 0.52.1 to 1.0.0. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15397\"\u003e#15397\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump pygithub from 2.8.1 to 2.9.1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15396\"\u003e#15396\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump pyjwt from 2.12.0 to 2.12.1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15393\"\u003e#15393\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump zizmor from 1.23.1 to 1.24.1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15394\"\u003e#15394\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump strawberry-graphql from 0.312.3 to 0.314.3. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15395\"\u003e#15395\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump python-multipart from 0.0.22 to 0.0.26. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15360\"\u003e#15360\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump authlib from 1.6.9 to 1.6.11. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15373\"\u003e#15373\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump aiohttp from 3.13.3 to 3.13.4. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15282\"\u003e#15282\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump pygments from 2.19.2 to 2.20.0. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15263\"\u003e#15263\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump pymdown-extensions from 10.20.1 to 10.21.2. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15391\"\u003e#15391\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump pillow from 12.1.1 to 12.2.0. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15333\"\u003e#15333\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump pytest from 9.0.2 to 9.0.3. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15334\"\u003e#15334\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump actions/upload-artifact from 7.0.0 to 7.0.1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15374\"\u003e#15374\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump actions/cache from 5.0.4 to 5.0.5. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15385\"\u003e#15385\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔧 Update sponsors: remove Zuplo. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15369\"\u003e#15369\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔧 Update sponsors: remove Speakeasy. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15368\"\u003e#15368\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔒️ Add zizmor and fix audit findings. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15316\"\u003e#15316\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.136.0\u003c/h2\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Support free-threaded Python 3.14t. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15149\"\u003e#15149\u003c/a\u003e by \u003ca href=\"https://github.com/svlandeg\"\u003e\u003ccode\u003e@​svlandeg\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.135.4\u003c/h2\u003e\n\u003ch3\u003eRefactors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🔥 Remove April Fool's \u003ccode\u003e@app.vibe()\u003c/code\u003e 🤪. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15363\"\u003e#15363\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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⬆ Bump cryptography from 46.0.5 to 46.0.7. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15314\"\u003e#15314\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump strawberry-graphql from 0.307.1 to 0.312.3. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15309\"\u003e#15309\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔨 Add pre-commit hook to ensure latest release header has date. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15293\"\u003e#15293\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.135.3\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/fastapi/fastapi/commit/e54e5a8980ffa6d7ff68ee7b25a1c46036375521\"\u003e\u003ccode\u003ee54e5a8\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.136.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/9a8a5fd99902c3b80d4cc94b85e120e2b808825f\"\u003e\u003ccode\u003e9a8a5fd\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/7815a32f2ed177b8b786a48b3e0712c05b5c644f\"\u003e\u003ccode\u003e7815a32\u003c/code\u003e\u003c/a\u003e ⬆️ Update Pydantic v2 code to address deprecations (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/15101\"\u003e#15101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/ef1c927b0558d414e199a666833942a6fabb3a51\"\u003e\u003ccode\u003eef1c927\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/38039e12a86e67f2001b9b7d96c219691d6cb4af\"\u003e\u003ccode\u003e38039e1\u003c/code\u003e\u003c/a\u003e 🔨 Tweak translation script (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/15174\"\u003e#15174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/4fa826ce0a3b16884a04f51e5aac95d01790b599\"\u003e\u003ccode\u003e4fa826c\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/c39415673e621665fdb7bbdde69beba7eb1dfd12\"\u003e\u003ccode\u003ec394156\u003c/code\u003e\u003c/a\u003e ⬆ Bump mkdocs-material from 9.7.1 to 9.7.6 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/15408\"\u003e#15408\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/ae230ad2f9d90a4e3f6222ff1a5d6e8da41ec0ad\"\u003e\u003ccode\u003eae230ad\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d9eb39d1a1bf2f6e6e5d3a55088f61c712cb864e\"\u003e\u003ccode\u003ed9eb39d\u003c/code\u003e\u003c/a\u003e ⬆ Bump inline-snapshot from 0.31.1 to 0.32.6 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/15409\"\u003e#15409\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/4f8b5d14d324ae8e15cfae8d85adb4186d4c2175\"\u003e\u003ccode\u003e4f8b5d1\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.120.1...0.136.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.10.6 to 2.13.3\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.13.3 2026-04-20\u003c/h2\u003e\n\u003ch2\u003ev2.13.3 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eHandle \u003ccode\u003eAttributeError\u003c/code\u003e subclasses with \u003ccode\u003efrom_attributes\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/13096\"\u003e#13096\u003c/a\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.13.2...v2.13.3\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.13.2...v2.13.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.13.2 2026-04-17\u003c/h2\u003e\n\u003ch2\u003ev2.13.2 (2026-04-17)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eValidationInfo.field_name\u003c/code\u003e missing with \u003ccode\u003emodel_validate_json()\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/13084\"\u003e#13084\u003c/a\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.13.1...v2.13.2\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.13.1...v2.13.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.13.1 2026-04-15\u003c/h2\u003e\n\u003ch2\u003ev2.13.1 (2026-04-15)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eValidationInfo.data\u003c/code\u003e missing with \u003ccode\u003emodel_validate_json()\u003c/code\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13079\"\u003e#13079\u003c/a\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.13.0...v2.13.1\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.13.0...v2.13.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.13.0 2026-04-13\u003c/h2\u003e\n\u003ch2\u003ev2.13.0 (2026-04-13)\u003c/h2\u003e\n\u003cp\u003eThe highlights of the v2.13 release are available in the \u003ca href=\"https://pydantic.dev/articles/pydantic-v2-13-release\"\u003eblog post\u003c/a\u003e.\nSeveral minor changes (considered non-breaking changes according to our \u003ca href=\"https://pydantic.dev/docs/validation/2.13/get-started/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\u003cp\u003eThis release contains the updated \u003ccode\u003epydantic.v1\u003c/code\u003e namespace, matching version 1.10.26 which includes support for Python 3.14.\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eSee the beta releases for all changes sinces 2.12.\u003c/p\u003e\n\u003ch4\u003ePackaging\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAdd zizmor for GitHub Actions workflow linting 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/13039\"\u003e#13039\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate jiter to v0.14.0 to fix a segmentation fault on musl Linux 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/13064\"\u003e#13064\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/pydantic/pydantic/blob/main/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.13.3 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.13.3\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eHandle \u003ccode\u003eAttributeError\u003c/code\u003e subclasses with \u003ccode\u003efrom_attributes\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/13096\"\u003e#13096\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.13.2 (2026-04-17)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.13.2\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eValidationInfo.field_name\u003c/code\u003e missing with \u003ccode\u003emodel_validate_json()\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/13084\"\u003e#13084\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.13.1 (2026-04-15)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.13.1\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eValidationInfo.data\u003c/code\u003e missing with \u003ccode\u003emodel_validate_json()\u003c/code\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13079\"\u003e#13079\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.13.0 (2026-04-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.13.0\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThe highlights of the v2.13 release are available in the \u003ca href=\"https://pydantic.dev/articles/pydantic-v2-13-release\"\u003eblog post\u003c/a\u003e.\nSeveral minor changes (considered non-breaking changes according to our \u003ca href=\"https://pydantic.dev/docs/validation/2.13/get-started/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\u003eThis release contains the updated \u003ccode\u003epydantic.v1\u003c/code\u003e namespace, matching version 1.10.26 which includes support for Python 3.14.\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eSee the beta releases for all changes sinces 2.12.\u003c/p\u003e\n\u003ch4\u003eNew Features\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow default factories of private attributes to take validated model data 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/13013\"\u003e#13013\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eChanges\u003c/h4\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/9e9a11132c980c4ec84ff6d2df06d4c1a55ca8f3\"\u003e\u003ccode\u003e9e9a111\u003c/code\u003e\u003c/a\u003e Fix backported test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/1ec8c6aa0cae1c78409c6f31af738a24e16c7124\"\u003e\u003ccode\u003e1ec8c6a\u003c/code\u003e\u003c/a\u003e Prepare release v2.13.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/fb4f2044436e9fa4ff9745479ce263016a99c4d6\"\u003e\u003ccode\u003efb4f204\u003c/code\u003e\u003c/a\u003e Handle \u003ccode\u003eAttributeError\u003c/code\u003e subclasses with \u003ccode\u003efrom_attributes\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/ca3ddd1149bd3b14273922a29da174804496a055\"\u003e\u003ccode\u003eca3ddd1\u003c/code\u003e\u003c/a\u003e Prepare release v2.13.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/000e823a3ab7545b0c6064fde34effdcd02044ab\"\u003e\u003ccode\u003e000e823\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eValidationInfo.field_name\u003c/code\u003e missing with \u003ccode\u003emodel_validate_json()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/d45d8be3ffb6dfc6d0c64da6980140c91ff841fb\"\u003e\u003ccode\u003ed45d8be\u003c/code\u003e\u003c/a\u003e Prepare release 2.13.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/54aca609ce58e73dfe1c681d93432fbe3a4621da\"\u003e\u003ccode\u003e54aca60\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eValidationInfo.data\u003c/code\u003e missing with \u003ccode\u003emodel_validate_json()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/46bf4fa648af3a1fbf4603a37f210e9d9c618357\"\u003e\u003ccode\u003e46bf4fa\u003c/code\u003e\u003c/a\u003e Fix Pydantic release workflow (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/13067\"\u003e#13067\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/1b359edab09c623464d23c6fd2503ae5ff276d43\"\u003e\u003ccode\u003e1b359ed\u003c/code\u003e\u003c/a\u003e Prepare release v2.13.0 (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/13065\"\u003e#13065\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/b1bf19445d8ac144a7a0e82674d2d87eebab6c18\"\u003e\u003ccode\u003eb1bf194\u003c/code\u003e\u003c/a\u003e Fix model equality when using runtime \u003ccode\u003eextra\u003c/code\u003e configuration (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/13062\"\u003e#13062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.13.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ibis-framework` from 10.8.0 to 12.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ibis-project/ibis/releases\"\u003eibis-framework's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e12.0.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ibis-project/ibis/compare/11.0.0...12.0.0\"\u003e12.0.0\u003c/a\u003e (2026-02-07)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003epyspark:\u003c/strong\u003e PySpark \u0026lt;3.5 is no longer supported\u003c/li\u003e\n\u003cli\u003eofficially drop support for 3.9, bump all dependencies\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatatypes:\u003c/strong\u003e infer decimal precision and scale\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e implement \u003ccode\u003eupsert()\u003c/code\u003e using \u003ccode\u003eMERGE INTO\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11624\"\u003e#11624\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/9126733b38e1c92f6e787f92dc9954e88ab6400d\"\u003e9126733\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/5391\"\u003e#5391\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e support Table.cast(my_col=int) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/9e209f37b6228472071ef8b9168ed56ec9c0a727\"\u003e9e209f3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatabricks:\u003c/strong\u003e support json literals (\u003ca href=\"https://github.com/ibis-project/ibis/commit/f46a58f9eb5128e64981b756b0a866e291663997\"\u003ef46a58f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatafusion:\u003c/strong\u003e add compilation rule for Strftime (\u003ca href=\"https://github.com/ibis-project/ibis/commit/6fa8411e43a68f0f0ac38f493242bc1ff28a5253\"\u003e6fa8411\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e enable compatibility with pandas 3.0.0 (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11873\"\u003e#11873\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/34a36be80e589e449501942bda8ec4125e89beb0\"\u003e34a36be\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ematerialize:\u003c/strong\u003e add new backend for Materialize streaming database (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11893\"\u003e#11893\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/35fcce08369ed7650b00fed7064535eeceeaba41\"\u003e35fcce0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eofficially drop support for 3.9, bump all dependencies (\u003ca href=\"https://github.com/ibis-project/ibis/commit/aa16d0885ff62ac92ec1027a245158896f74cc0d\"\u003eaa16d08\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epyspark:\u003c/strong\u003e support pyspark 4.0 (\u003ca href=\"https://github.com/ibis-project/ibis/commit/e9c35e6a3574855daf4e02f4217727df0d54872d\"\u003ee9c35e6\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003esinglestoredb:\u003c/strong\u003e add SingleStoreDB backend (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11595\"\u003e#11595\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/a83cfef0f6b84f3dbb83ca55682100f32488d7c2\"\u003ea83cfef\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport JSON literal values (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11728\"\u003e#11728\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/38b19c765f02b18684ec6e7b4e0815d117fc8b60\"\u003e38b19c7\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11727\"\u003e#11727\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etyping:\u003c/strong\u003e improve typing of ibis.common.collections (\u003ca href=\"https://github.com/ibis-project/ibis/commit/e3aba92c6126e556e179f2cbff3dc837802de790\"\u003ee3aba92\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etyping:\u003c/strong\u003e make dtype() and schema() more typesafe (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11856\"\u003e#11856\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/116886f807fbf62ce0265ef152f48540c284b8c5\"\u003e116886f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etyping:\u003c/strong\u003e make more arguments positional-only (\u003ca href=\"https://github.com/ibis-project/ibis/commit/610c4504b438b5ac302b384073134ff5c8458908\"\u003e610c450\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etyping:\u003c/strong\u003e make types more precise for many common Values (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11771\"\u003e#11771\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/2eb772a7a8a5632edb347ecd49af5773c268d188\"\u003e2eb772a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd order_by to first and last (\u003ca href=\"https://github.com/ibis-project/ibis/commit/7ead7876435c55a10dc5a6457a49b9e19b7a654e\"\u003e7ead787\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11656\"\u003e#11656\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd upper _method_overrides in decompile (\u003ca href=\"https://github.com/ibis-project/ibis/commit/e7956f4cbb5daef11bbc01177ccc56f5ae3bf3fa\"\u003ee7956f4\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11717\"\u003e#11717\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ebigquery:\u003c/strong\u003e relax decimal upper bounds (\u003ca href=\"https://github.com/ibis-project/ibis/commit/d05751b445d65ae0a1c786c756ea1235d51a7f18\"\u003ed05751b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ebiquery:\u003c/strong\u003e use qualified table name for upserts (\u003ca href=\"https://github.com/ibis-project/ibis/commit/120b2d874d7b191886dcdad69be76c26bbe062ce\"\u003e120b2d8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecitation:\u003c/strong\u003e fix CITATION.cff [skip ci] (\u003ca href=\"https://github.com/ibis-project/ibis/commit/305526a8d6df097765b2affce60b1731f2608a1b\"\u003e305526a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatatypes:\u003c/strong\u003e infer decimal precision and scale (\u003ca href=\"https://github.com/ibis-project/ibis/commit/ed346e6d33157d9cf6e01f91bc67ac8866e09eb3\"\u003eed346e6\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatatypes:\u003c/strong\u003e make decimal casts more permissive (\u003ca href=\"https://github.com/ibis-project/ibis/commit/ba087d2d3a6c57451bdcf81aaa4fa5cf32350831\"\u003eba087d2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e pin dep on sqlglot to \u0026lt;28 (\u003ca href=\"https://github.com/ibis-project/ibis/commit/3e9156ef0b0b10ce6f3d95db97401175a7d9df56\"\u003e3e9156e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e sqlglot 28.0 incompatibilities (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11839\"\u003e#11839\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/ab21efd939b7cd6b7cf8f03ed7a22ec96d511be0\"\u003eab21efd\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edocs:\u003c/strong\u003e typo in Ibis description in why.qmd (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11816\"\u003e#11816\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/402c37d9920fa09bcc1aa5f9202367b01cc98ef1\"\u003e402c37d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003educkdb:\u003c/strong\u003e create a single table from Python data object (\u003ca href=\"https://github.com/ibis-project/ibis/commit/7f82e5e4aed0a492538016bfa152132ad0bc928f\"\u003e7f82e5e\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11709\"\u003e#11709\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eexasol:\u003c/strong\u003e update Exasol Docker image tag to 2025.1.8 (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11806\"\u003e#11806\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/2414952998f5f078b931e467e5b7f495062308ed\"\u003e2414952\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11703\"\u003e#11703\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eflink:\u003c/strong\u003e don't pass unsupported \u0026quot;position\u0026quot; flag to regexp_replace (\u003ca href=\"https://github.com/ibis-project/ibis/commit/34f39ccb32be76b5e61f87938ed4cfdeb560ce7c\"\u003e34f39cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emssql:\u003c/strong\u003e use \u003ccode\u003esge.National\u003c/code\u003e to support unicode in \u003ccode\u003einformation_schema\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11877\"\u003e#11877\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/a254ccb02f58d4f5b5f582249f5cfa03d141d8eb\"\u003ea254ccb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emysql:\u003c/strong\u003e use getuser() and empty password string by default (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11904\"\u003e#11904\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/ba0218f1bba2cbb9f2bb3a7aea39178365c0f663\"\u003eba0218f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epolars:\u003c/strong\u003e handle cross joins without passing join keys (\u003ca href=\"https://github.com/ibis-project/ibis/commit/d3c3bad21a2b9703047dbf4977d3d250759d189e\"\u003ed3c3bad\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11764\"\u003e#11764\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epolars:\u003c/strong\u003e support asof_join with no predicates (\u003ca href=\"https://github.com/ibis-project/ibis/commit/3fc9b64c2a464f66d5ed412e7cab7a7bbb58b811\"\u003e3fc9b64\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epostgres:\u003c/strong\u003e fix postgres asof joins to consider predicates correctly (\u003ca href=\"https://github.com/ibis-project/ibis/commit/064bd2d024d1165a92615613d977e85d4dad6331\"\u003e064bd2d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremove bogus leading ' from Struct repr (\u003ca href=\"https://github.com/ibis-project/ibis/commit/d7083c2c96e12bb7b2a1e643a52b4725f4303fcb\"\u003ed7083c2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ereturn a tuple, not generator, from Table.bind() (\u003ca href=\"https://github.com/ibis-project/ibis/commit/cfc8b0837e313bd76cf65561472a605ea6e35bef\"\u003ecfc8b08\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003esqlite:\u003c/strong\u003e create a single table from Python object (\u003ca href=\"https://github.com/ibis-project/ibis/commit/4e6ddcfa2d1dc763d431925b059c458cd0ce884a\"\u003e4e6ddcf\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003esqlite:\u003c/strong\u003e precision loss in divide (\u003ca href=\"https://github.com/ibis-project/ibis/commit/c77e1bd041df7e091c0c6c1aa5d2e87c3a99dddc\"\u003ec77e1bd\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/ibis-project/ibis/blob/main/docs/release_notes_generated.qmd\"\u003eibis-framework's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ibis-project/ibis/compare/11.0.0...12.0.0\"\u003e12.0.0\u003c/a\u003e (2026-02-07)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003epyspark:\u003c/strong\u003e PySpark \u0026lt;3.5 is no longer supported\u003c/li\u003e\n\u003cli\u003eofficially drop support for 3.9, bump all dependencies\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatatypes:\u003c/strong\u003e infer decimal precision and scale\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e implement \u003ccode\u003eupsert()\u003c/code\u003e using \u003ccode\u003eMERGE INTO\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11624\"\u003e#11624\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/9126733b38e1c92f6e787f92dc9954e88ab6400d\"\u003e9126733\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/5391\"\u003e#5391\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e support Table.cast(my_col=int) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/9e209f37b6228472071ef8b9168ed56ec9c0a727\"\u003e9e209f3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatabricks:\u003c/strong\u003e support json literals (\u003ca href=\"https://github.com/ibis-project/ibis/commit/f46a58f9eb5128e64981b756b0a866e291663997\"\u003ef46a58f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatafusion:\u003c/strong\u003e add compilation rule for Strftime (\u003ca href=\"https://github.com/ibis-project/ibis/commit/6fa8411e43a68f0f0ac38f493242bc1ff28a5253\"\u003e6fa8411\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e enable compatibility with pandas 3.0.0 (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11873\"\u003e#11873\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/34a36be80e589e449501942bda8ec4125e89beb0\"\u003e34a36be\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ematerialize:\u003c/strong\u003e add new backend for Materialize streaming database (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11893\"\u003e#11893\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/35fcce08369ed7650b00fed7064535eeceeaba41\"\u003e35fcce0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eofficially drop support for 3.9, bump all dependencies (\u003ca href=\"https://github.com/ibis-project/ibis/commit/aa16d0885ff62ac92ec1027a245158896f74cc0d\"\u003eaa16d08\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epyspark:\u003c/strong\u003e support pyspark 4.0 (\u003ca href=\"https://github.com/ibis-project/ibis/commit/e9c35e6a3574855daf4e02f4217727df0d54872d\"\u003ee9c35e6\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003esinglestoredb:\u003c/strong\u003e add SingleStoreDB backend (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11595\"\u003e#11595\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/a83cfef0f6b84f3dbb83ca55682100f32488d7c2\"\u003ea83cfef\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport JSON literal values (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11728\"\u003e#11728\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/38b19c765f02b18684ec6e7b4e0815d117fc8b60\"\u003e38b19c7\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11727\"\u003e#11727\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etyping:\u003c/strong\u003e improve typing of ibis.common.collections (\u003ca href=\"https://github.com/ibis-project/ibis/commit/e3aba92c6126e556e179f2cbff3dc837802de790\"\u003ee3aba92\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etyping:\u003c/strong\u003e make dtype() and schema() more typesafe (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11856\"\u003e#11856\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/116886f807fbf62ce0265ef152f48540c284b8c5\"\u003e116886f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etyping:\u003c/strong\u003e make more arguments positional-only (\u003ca href=\"https://github.com/ibis-project/ibis/commit/610c4504b438b5ac302b384073134ff5c8458908\"\u003e610c450\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etyping:\u003c/strong\u003e make types more precise for many common Values (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11771\"\u003e#11771\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/2eb772a7a8a5632edb347ecd49af5773c268d188\"\u003e2eb772a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd order_by to first and last (\u003ca href=\"https://github.com/ibis-project/ibis/commit/7ead7876435c55a10dc5a6457a49b9e19b7a654e\"\u003e7ead787\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11656\"\u003e#11656\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd upper _method_overrides in decompile (\u003ca href=\"https://github.com/ibis-project/ibis/commit/e7956f4cbb5daef11bbc01177ccc56f5ae3bf3fa\"\u003ee7956f4\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11717\"\u003e#11717\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ebigquery:\u003c/strong\u003e relax decimal upper bounds (\u003ca href=\"https://github.com/ibis-project/ibis/commit/d05751b445d65ae0a1c786c756ea1235d51a7f18\"\u003ed05751b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ebiquery:\u003c/strong\u003e use qualified table name for upserts (\u003ca href=\"https://github.com/ibis-project/ibis/commit/120b2d874d7b191886dcdad69be76c26bbe062ce\"\u003e120b2d8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecitation:\u003c/strong\u003e fix CITATION.cff [skip ci] (\u003ca href=\"https://github.com/ibis-project/ibis/commit/305526a8d6df097765b2affce60b1731f2608a1b\"\u003e305526a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatatypes:\u003c/strong\u003e infer decimal precision and scale (\u003ca href=\"https://github.com/ibis-project/ibis/commit/ed346e6d33157d9cf6e01f91bc67ac8866e09eb3\"\u003eed346e6\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatatypes:\u003c/strong\u003e make decimal casts more permissive (\u003ca href=\"https://github.com/ibis-project/ibis/commit/ba087d2d3a6c57451bdcf81aaa4fa5cf32350831\"\u003eba087d2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e pin dep on sqlglot to \u0026lt;28 (\u003ca href=\"https://github.com/ibis-project/ibis/commit/3e9156ef0b0b10ce6f3d95db97401175a7d9df56\"\u003e3e9156e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e sqlglot 28.0 incompatibilities (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11839\"\u003e#11839\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/ab21efd939b7cd6b7cf8f03ed7a22ec96d511be0\"\u003eab21efd\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edocs:\u003c/strong\u003e typo in Ibis description in why.qmd (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11816\"\u003e#11816\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/402c37d9920fa09bcc1aa5f9202367b01cc98ef1\"\u003e402c37d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003educkdb:\u003c/strong\u003e create a single table from Python data object (\u003ca href=\"https://github.com/ibis-project/ibis/commit/7f82e5e4aed0a492538016bfa152132ad0bc928f\"\u003e7f82e5e\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11709\"\u003e#11709\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eexasol:\u003c/strong\u003e update Exasol Docker image tag to 2025.1.8 (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11806\"\u003e#11806\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/2414952998f5f078b931e467e5b7f495062308ed\"\u003e2414952\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11703\"\u003e#11703\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eflink:\u003c/strong\u003e don't pass unsupported \u0026quot;position\u0026quot; flag to regexp_replace (\u003ca href=\"https://github.com/ibis-project/ibis/commit/34f39ccb32be76b5e61f87938ed4cfdeb560ce7c\"\u003e34f39cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emssql:\u003c/strong\u003e use \u003ccode\u003esge.National\u003c/code\u003e to support unicode in \u003ccode\u003einformation_schema\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11877\"\u003e#11877\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/a254ccb02f58d4f5b5f582249f5cfa03d141d8eb\"\u003ea254ccb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emysql:\u003c/strong\u003e use getuser() and empty password string by default (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11904\"\u003e#11904\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/ba0218f1bba2cbb9f2bb3a7aea39178365c0f663\"\u003eba0218f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epolars:\u003c/strong\u003e handle cross joins without passing join keys (\u003ca href=\"https://github.com/ibis-project/ibis/commit/d3c3bad21a2b9703047dbf4977d3d250759d189e\"\u003ed3c3bad\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11764\"\u003e#11764\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epolars:\u003c/strong\u003e support asof_join with no predicates (\u003ca href=\"https://github.com/ibis-project/ibis/commit/3fc9b64c2a464f66d5ed412e7cab7a7bbb58b811\"\u003e3fc9b64\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epostgres:\u003c/strong\u003e fix postgres asof joins to consider predicates correctly (\u003ca href=\"https://github.com/ibis-project/ibis/commit/064bd2d024d1165a92615613d977e85d4dad6331\"\u003e064bd2d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremove bogus leading ' from Struct repr (\u003ca href=\"https://github.com/ibis-project/ibis/commit/d7083c2c96e12bb7b2a1e643a52b4725f4303fcb\"\u003ed7083c2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ereturn a tuple, not generator, from Table.bind() (\u003ca href=\"https://github.com/ibis-project/ibis/commit/cfc8b0837e313bd76cf65561472a605ea6e35bef\"\u003ecfc8b08\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003esqlite:\u003c/strong\u003e create a single table from Python object (\u003ca href=\"https://github.com/ibis-project/ibis/commit/4e6ddcfa2d1dc763d431925b059c458cd0ce884a\"\u003e4e6ddcf\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003esqlite:\u003c/strong\u003e precision loss in divide (\u003ca href=\"https://github.com/ibis-project/ibis/commit/c77e1bd041df7e091c0c6c1aa5d2e87c3a99dddc\"\u003ec77e1bd\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003eBackend == \u0026quot;some non backend object\u0026quot;\u003c/code\u003e (\u003ca href=\"https://github.com/ibis-project/ibis/commit/a5e7c2298d1582261c0963040a687c3987507c62\"\u003ea5e7c22\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/ibis-project/ibis/commit/01e429b210f19f87e0284bd18fb072df6d3baa59\"\u003e\u003ccode\u003e01e429b\u003c/code\u003e\u003c/a\u003e chore(release): 12.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibis-project/ibis/commit/537b346aecbaaad232d08ae9a12d38d211ae0926\"\u003e\u003ccode\u003e537b346\u003c/code\u003e\u003c/a\u003e chore(deps): update ghcr.io/astral-sh/uv docker tag to v0.10.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibis-project/ibis/commit/76c3b63b33f9e6ee2993e2a2875f22ed3e405349\"\u003e\u003ccode\u003e76c3b63\u003c/code\u003e\u003c/a\u003e chore(deps): update astral-sh/setup-uv action to v7.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibis-project/ibis/commit/da202da06c17a525caf767f0f995f65108a8f3f3\"\u003e\u003ccode\u003eda202da\u003c/code\u003e\u003c/a\u003e chore(deps): update apache/druid docker tag to v36\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibis-project/ibis/commit/ba0218f1bba2cbb9f2bb3a7aea39178365c0f663\"\u003e\u003ccode\u003eba0218f\u003c/code\u003e\u003c/a\u003e fix(mysql): use getuser() and empty password string by default (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11904\"\u003e#11904\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibis-project/ibis/commit/a4ef82f82ef103fd233560adce0fbe220481d7ef\"\u003e\u003ccode\u003ea4ef82f\u003c/code\u003e\u003c/a\u003e chore(deps): update aws-actions/configure-aws-credentials action to v6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibis-project/ibis/commit/601cd8f3dc18c7f8a91aa91319b68aaa181a8a16\"\u003e\u003ccode\u003e601cd8f\u003c/code\u003e\u003c/a\u003e chore(deps): update ghcr.io/singlestore-labs/singlestoredb-dev docker tag to ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibis-project/ibis/commit/14c912425af4b318733fdc1460913ccfa4613414\"\u003e\u003ccode\u003e14c9124\u003c/code\u003e\u003c/a\u003e chore(deps): update materialize/materialized docker tag to v26.10.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibis-project/ibis/commit/b746edfb660c2b8155debc135884376742cc6929\"\u003e\u003ccode\u003eb746edf\u003c/code\u003e\u003c/a\u003e chore(deps): update ghcr.io/astral-sh/uv docker tag to v0.9.30\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibis-project/ibis/commit/7da40126f178a29d6211f8cfe29421585cff59fc\"\u003e\u003ccode\u003e7da4012\u003c/code\u003e\u003c/a\u003e chore(deps): upgrade ruff, and fix lint violations (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11899\"\u003e#11899\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ibis-project/ibis/compare/10.8.0...12.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.49.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.49.0.dev0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.48.0...v2.49.0-dev0\"\u003e2.49.0-dev0\u003c/a\u003e (2026-01-26)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove deprecated rsa dependency (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e98cf69284d3620619a70b54fb0b9533caf11878\"\u003ee98cf69284d3620619a70b54fb0b9533caf11878\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003egoogle-auth 2.48.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.47.0...v2.48.0\"\u003e2.48.0\u003c/a\u003e (2026-01-21)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003ehonor \u003ccode\u003eNO_GCE_CHECK\u003c/code\u003e environment variable (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1610\"\u003e#1610\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/383c9827\"\u003e383c9827\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eadd configurable GCE Metadata Server retries (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1488\"\u003e#1488\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/454b441b\"\u003e454b441b\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eadd cryptography as required dependency (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1929\"\u003e#1929\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/52558ae2\"\u003e52558ae2\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eSupport the mTLS IAM domain for Certificate based Access (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1938\"\u003e#1938\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/8dcf91a1\"\u003e8dcf91a1\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eresolve circular imports (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1942\"\u003e#1942\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25c1b064\"\u003e25c1b064\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUse \u003ccode\u003euser_verification=preferred\u003c/code\u003e for ReAuth WebAuthn challenge (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1798\"\u003e#1798\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3f88a240\"\u003e3f88a240\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eremoves \u003ccode\u003econtent-header\u003c/code\u003e from AWS IMDS get request (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1934\"\u003e#1934\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97bfea9e\"\u003e97bfea9e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edetect correct auth when ADC env var is set but empty (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1374\"\u003e#1374\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/bfc07e10\"\u003ebfc07e10\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ereplace deprecated utcfromtimestamp (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1799\"\u003e#1799\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e431f20c\"\u003ee431f20c\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.48.0rc0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.47.0...v2.48.0rc0\"\u003e2.48.0rc0\u003c/a\u003e (2026-01-20)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ehonor NO_GCE_CHECK environment variable (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1610\"\u003e#1610\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/383c9827536d9376e8248370ce4c2b83e468d027\"\u003e383c98\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd configurable GCE Metadata Server retries (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1488\"\u003e#1488\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/454b441b478ec62bbf1a6ad5bceb6c7cbbfd0c37\"\u003e454b44\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport mTLS IAM domain for Certificate based Access (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1938\"\u003e#1938\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/8dcf91a1b05c85fbbd0bcee78d66e498099102ab\"\u003e8dcf91\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd cryptography as required dependency (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1929\"\u003e#1929\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/52558ae2881b1e6555f6f5c0d76365c15807ead9\"\u003e52558a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse user_verification=preferred for ReAuth WebAuthn challenge (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1798\"\u003e#1798\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3f88a24089c4ee6822d510de0db210b54260d873\"\u003e3f88a2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ereplace deprecated utcfromtimestamp (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1799\"\u003e#1799\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e431f20cf73ccac71926a23ec454468cea92e053\"\u003ee431f2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003edetect correct auth when ADC env var is set by empty (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1374\"\u003e#1374\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/bfc07e1050bd0aa86fa3b08cdf70c9b68b5fe6a2\"\u003ebfc07e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremoved content-header from AWS IMDS (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1934\"\u003e#1934\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97bfea9e02ede953fc8ee154e0deed3a3cfc6dcc\"\u003e97bfea\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003e\u003ca href=\"https://pypi.org/project/google-auth/#history\"\u003ePyPI History\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.47.0...v2.48.0\"\u003e2.48.0\u003c/a\u003e (2026-01-22)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd cryptography as required dependency (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1929\"\u003e#1929\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/52558ae2881b1e6555f6f5c0d76365c15807ead9\"\u003e52558ae2881b1e6555f6f5c0d76365c15807ead9\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport the mTLS IAM domain for Certificate based Access (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1938\"\u003e#1938\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/8dcf91a1b05c85fbbd0bcee78d66e498099102ab\"\u003e8dcf91a1b05c85fbbd0bcee78d66e498099102ab\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd configurable GCE Metadata Server retries (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1488\"\u003e#1488\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/454b441b478ec62bbf1a6ad5bceb6c7cbbfd0c37\"\u003e454b441b478ec62bbf1a6ad5bceb6c7cbbfd0c37\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ehonor \u003ccode\u003eNO_GCE_CHECK\u003c/code\u003e environment variable (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1610\"\u003e#1610\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/383c9827536d9376e8248370ce4c2b83e468d027\"\u003e383c9827536d9376e8248370ce4c2b83e468d027\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eresolve circular imports (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1942\"\u003e#1942\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25c1b064545702cbef087cfcd15fbbb6ef1af74f\"\u003e25c1b064545702cbef087cfcd15fbbb6ef1af74f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremoves \u003ccode\u003econtent-header\u003c/code\u003e from AWS IMDS get request (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1934\"\u003e#1934\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97bfea9e02ede953fc8ee154e0deed3a3cfc6dcc\"\u003e97bfea9e02ede953fc8ee154e0deed3a3cfc6dcc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003edetect correct auth when ADC env var is set but empty (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1374\"\u003e#1374\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/bfc07e1050bd0aa86fa3b08cdf70c9b68b5fe6a2\"\u003ebfc07e1050bd0aa86fa3b08cdf70c9b68b5fe6a2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ereplace deprecated utcfromtimestamp (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1799\"\u003e#1799\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e431f20cf73ccac71926a23ec454468cea92e053\"\u003ee431f20cf73ccac71926a23ec454468cea92e053\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003euser_verification=preferred\u003c/code\u003e for ReAuth WebAuthn challenge (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1798\"\u003e#1798\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3f88a24089c4ee6822d510de0db210b54260d873\"\u003e3f88a24089c4ee6822d510de0db210b54260d873\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.46.0...v2.47.0\"\u003e2.47.0\u003c/a\u003e (2026-01-06)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edrop \u003ccode\u003ecachetools\u003c/code\u003e dependency in favor of simple local implementation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1590\"\u003e#1590\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/5c07e1c4f52bc77a1b16fa3b7b3c5269c242f6f4\"\u003e5c07e1c4f52bc77a1b16fa3b7b3c5269c242f6f4\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1918\"\u003e#1918\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/60dc20014a35ec4ba71e8065b9a33ecbdbeca97a\"\u003e60dc20014a35ec4ba71e8065b9a33ecbdbeca97a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.45.0...v2.46.0\"\u003e2.46.0\u003c/a\u003e (2026-01-05)\u003c/h2\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate urllib3 docstrings for v2 compatibility (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1903\"\u003e#1903\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3f1aeea2d1014ea1d244a4c3470e52d74d55404b\"\u003e3f1aeea2d1014ea1d244a4c3470e52d74d55404b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRecognize workload certificate config in has_default_client_cert_source for mTLS for Agentic Identities (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1907\"\u003e#1907\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0b9107d573123e358c347ffa067637f992af61b4\"\u003e0b9107d573123e358c347ffa067637f992af61b4\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\u003eSee full diff in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.2.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.2.2\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Python 3.14, including the free-threaded (3.14t) build. (#)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ccode\u003edotenv run\u003c/code\u003e command now forwards flags directly to the specified command by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/607\"\u003etheskumar/python-dotenv#607\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImproved documentation clarity regarding override behavior and the reference page.\u003c/li\u003e\n\u003cli\u003eUpdated PyPy support to version 3.11.\u003c/li\u003e\n\u003cli\u003eDocumentation for FIFO file support.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.9.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImproved \u003ccode\u003eset_key\u003c/code\u003e and \u003ccode\u003eunset_key\u003c/code\u003e behavior when interacting with symlinks by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://github.com/theskumar/python-dotenv/commit/790c5c02991100aa1bf41ee5330aca75edc51311\"\u003e#790c5\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCorrected the license specifier and added missing Python 3.14 classifiers in package metadata by \u003ca href=\"https://github.com/JYOuyang\"\u003e\u003ccode\u003e@​JYOuyang\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/590\"\u003etheskumar/python-dotenv#590\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003edotenv.set_key\u003c/code\u003e and \u003ccode\u003edotenv.unset_key\u003c/code\u003e used to follow symlinks in some\nsituations. This is no longer the case. For that behavior to be restored in\nall cases, \u003ccode\u003efollow_symlinks=True\u003c/code\u003e should be used.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eIn the CLI, \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003eunset\u003c/code\u003e used to follow symlinks in some situations. This\nis no longer the case.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003edotenv.set_key\u003c/code\u003e, \u003ccode\u003edotenv.unset_key\u003c/code\u003e and the CLI commands \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003eunset\u003c/code\u003e\nused to reset the file mode of the modified .env file to \u003ccode\u003e0o600\u003c/code\u003e in some\nsituations. This is no longer the case: The original mode of the file is now\npreserved. Is the file needed to be created or wasn't a regular file, mode\n\u003ccode\u003e0o600\u003c/code\u003e is used.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eskip 000 permission tests for root user by \u003ca href=\"https://github.com/burnout-projects\"\u003e\u003ccode\u003e@​burnout-projects\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/561\"\u003etheskumar/python-dotenv#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump actions/checkout 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/theskumar/python-dotenv/pull/593\"\u003etheskumar/python-dotenv#593\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Windows testing to CI by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/604\"\u003etheskumar/python-dotenv#604\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove workflow efficiency with best practices by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/609\"\u003etheskumar/python-dotenv#609\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove the use of \u003ccode\u003esh\u003c/code\u003e in tests by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/612\"\u003etheskumar/python-dotenv#612\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/JYOuyang\"\u003e\u003ccode\u003e@​JYOuyang\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/590\"\u003etheskumar/python-dotenv#590\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/burnout-projects\"\u003e\u003ccode\u003e@​burnout-projects\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/561\"\u003etheskumar/python-dotenv#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cpackham-atlnz\"\u003e\u003ccode\u003e@​cpackham-atlnz\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/597\"\u003etheskumar/python-dotenv#597\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.2.1...v1.2.2\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.2.1...v1.2.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.2.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.2.2] - 2026-03-01\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Python 3.14, including the free-threaded (3.14t) build. (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/588\"\u003e#588\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ccode\u003edotenv run\u003c/code\u003e command now forwards flags directly to the specified command by [\u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/607\"\u003e#607\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImproved documentation clarity regarding override behavior and the reference page.\u003c/li\u003e\n\u003cli\u003eUpdated PyPy support to version 3.11.\u003c/li\u003e\n\u003cli\u003eDocumentation for FIFO file support.\u003c/li\u003e\n\u003cli\u003eDropped Support for Python 3.9.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImproved \u003ccode\u003eset_key\u003c/code\u003e and \u003ccode\u003eunset_key\u003c/code\u003e behavior when interacting with symlinks by [\u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e] in [790c5c0]\u003c/li\u003e\n\u003cli\u003eCorrected the license specifier and added missing Python 3.14 classifiers in package metadata by [\u003ca href=\"https://github.com/JYOuyang\"\u003e\u003ccode\u003e@​JYOuyang\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/590\"\u003e#590\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003edotenv.set_key\u003c/code\u003e and \u003ccode\u003edotenv.unset_key\u003c/code\u003e used to follow symlinks in some\nsituations. This is no longer the case. For that behavior to be restored in\nall cases, \u003ccode\u003efollow_symlinks=True\u003c/code\u003e should be used.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eIn the CLI, \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003eunset\u003c/code\u003e used to follow symlinks in some situations. This\nis no longer the case.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003edotenv.set_key\u003c/code\u003e, \u003ccode\u003edotenv.unset_key\u003c/code\u003e and the CLI commands \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003eunset\u003c/code\u003e\nused to reset the file mode of the modified .env file to \u003ccode\u003e0o600\u003c/code\u003e in some\nsituations. This is no longer the case: The original mode of the file is now\npreserved. Is the file needed to be created or wasn't a regular file, mode\n\u003ccode\u003e0o600\u003c/code\u003e is used.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.2.1] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMove more config to \u003ccode\u003epyproject.toml\u003c/code\u003e, removed \u003ccode\u003esetup.cfg\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for reading \u003ccode\u003e.env\u003c/code\u003e from FIFOs (Unix) by [\u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.2.0] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade build system to use PEP 517 \u0026amp; PEP 518 to use \u003ccode\u003ebuild\u003c/code\u003e and \u003ccode\u003epyproject.toml\u003c/code\u003e by [\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/583\"\u003e#583\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14 by [\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/579\"\u003e#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for disabling of \u003ccode\u003eload_dotenv()\u003c/code\u003e using \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e env var. by [\u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/569\"\u003e#569\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/563\"\u003e#563\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/theskumar/python-dotenv/commit/36004e0e34be7665ff2b11a8a4005144f76f176d\"\u003e\u003ccode\u003e36004e0\u003c/code\u003e\u003c/a\u003e Bump version: 1.2.1 → 1.2.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/eb202520e5933c9daf42501e1e42fdb0144002c8\"\u003e\u003ccode\u003eeb20252\u003c/code\u003e\u003c/a\u003e docs: update changelog for v1.2.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/790c5c02991100aa1bf41ee5330aca75edc51311\"\u003e\u003ccode\u003e790c5c0\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/43340da220fb4ca4f95357bbe21a3c7f8f1278b1\"\u003e\u003ccode\u003e43340da\u003c/code\u003e\u003c/a\u003e Remove the use of \u003ccode\u003esh\u003c/code\u003e in tests (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/612\"\u003e#612\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/09d7cee32459e7abdcb5c9d8122a552589c06a9c\"\u003e\u003ccode\u003e09d7cee\u003c/code\u003e\u003c/a\u003e docs: clarify override behavior and document FIFO support (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/610\"\u003e#610\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/c8de2887c00198c22842c5ae5e92d1747467363c\"\u003e\u003ccode\u003ec8de288\u003c/code\u003e\u003c/a\u003e ci: improve workflow efficiency with best practices (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/609\"\u003e#609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/7bd9e3dbfedc0983ad7d56d5570013035242bdf4\"\u003e\u003ccode\u003e7bd9e3d\u003c/code\u003e\u003c/a\u003e Add Windows testing to CI (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/604\"\u003e#604\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/1baaf04f336072e0ee324d5df9563ec767f14f81\"\u003e\u003ccode\u003e1baaf04\u003c/code\u003e\u003c/a\u003e Drop Python 3.9 support and update to PyPy 3.11 (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/608\"\u003e#608\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/4a22cf8993804aeede0c20b75bb1a29d3a99e9dc\"\u003e\u003ccode\u003e4a22cf8\u003c/code\u003e\u003c/a\u003e ci: enable testing on Python 3.14t (free-threaded) (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/588\"\u003e#588\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/e2e8e776b42e382ae38b44d3982dd649e7507dd4\"\u003e\u003ccode\u003ee2e8e77\u003c/code\u003e\u003c/a\u003e Fix license specifier (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/597\"\u003e#597\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.2.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `orjson` from 3.11.7 to 3.11.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ijl/orjson/releases\"\u003eorjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.8\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild and compatibility improvements.\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/ijl/orjson/blob/master/CHANGELOG.md\"\u003eorjson's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.8 - 2026-03-31\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild and compatibility improvements.\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/ijl/orjson/commit/5cbb3d0398a2f42de51210270286fecd798c5d78\"\u003e\u003ccode\u003e5cbb3d0\u003c/code\u003e\u003c/a\u003e 3.11.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/4195d7f263e33076295b75efdcbaf6a55af8674e\"\u003e\u003ccode\u003e4195d7f\u003c/code\u003e\u003c/a\u003e writer::half\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/d00641b69410728a735f0855eb1c2843b0a5819b\"\u003e\u003ccode\u003ed00641b\u003c/code\u003e\u003c/a\u003e writer::uuid\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/c84d9b4ba4853781af943fa5c493e261e2f82b84\"\u003e\u003ccode\u003ec84d9b4\u003c/code\u003e\u003c/a\u003e build and compatibility misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/4547234b681fac5e0e0734cf44c21e75f9654e43\"\u003e\u003ccode\u003e4547234\u003c/code\u003e\u003c/a\u003e ffi::numpy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/0d4a5ad1f17a72528ba027554466fdec6580cdeb\"\u003e\u003ccode\u003e0d4a5ad\u003c/code\u003e\u003c/a\u003e datetime PyRef idiom\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/e93a13d372ec956d027e71d023eb534b8445ac85\"\u003e\u003ccode\u003ee93a13d\u003c/code\u003e\u003c/a\u003e Cross-compile avoids maturin v1.12 build-details.json error\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/ijl/orjson/compare/3.11.7...3.11.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` from 2.2.3 to 2.3.3\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.3\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.3.\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.3.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.3 supports Python 3.9 and higher, and is the first release to support Python 3.14.\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.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.o...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1590","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1590","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1590/packages"},{"uuid":"3929655000","node_id":"PR_kwDOHTdvBs7DKmC2","number":1422,"state":"closed","title":"deps(ibis): bump the all group across 1 directory with 31 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-03-10T09:37:43.000Z","author_association":null,"state_reason":null,"created_at":"2026-02-12T03:20:10.000Z","updated_at":"2026-03-10T09:37:45.000Z","time_to_close":2269053,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":31,"packages":[{"name":"fastapi","old_version":"0.120.1","new_version":"0.128.8","repository_url":"https://github.com/fastapi/fastapi"},{"name":"pydantic","old_version":"2.10.6","new_version":"2.12.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.48.0","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.2.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.18.1","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"anyio","old_version":"4.10.0","new_version":"4.12.1","repository_url":"https://github.com/agronholm/anyio"},{"name":"duckdb","old_version":"1.3.2","new_version":"1.4.4","repository_url":"https://github.com/duckdb/duckdb-python"},{"name":"oracledb","old_version":"3.3.0","new_version":"3.4.2","repository_url":"https://github.com/oracle/python-oracledb"},{"name":"mysqlclient","old_version":"2.2.7","new_version":"2.2.8","repository_url":"https://github.com/PyMySQL/mysqlclient"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.40.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"gunicorn","old_version":"23.0.0","new_version":"25.0.3","repository_url":"https://github.com/benoitc/gunicorn"},{"name":"uvicorn-worker","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/Kludex/uvicorn-worker"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.11","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"51.0.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"starlette","old_version":"0.49.3","new_version":"0.52.1","repository_url":"https://github.com/Kludex/starlette"},{"name":"databricks-sql-connector","old_version":"4.2.3","new_version":"4.2.5","repository_url":"https://github.com/databricks/databricks-sql-python"},{"name":"databricks-sdk","old_version":"0.73.0","new_version":"0.87.0","repository_url":"https://github.com/databricks/databricks-sdk-py"},{"name":"pyspark","old_version":"3.5.7","new_version":"4.1.1","repository_url":"https://github.com/apache/spark"},{"name":"jupyterlab","old_version":"4.5.1","new_version":"4.5.4","repository_url":"https://github.com/jupyterlab/jupyterlab"},{"name":"ipykernel","old_version":"7.1.0","new_version":"7.2.0","repository_url":"https://github.com/ipython/ipykernel"},{"name":"plotly","old_version":"6.5.0","new_version":"6.5.2","repository_url":"https://github.com/plotly/plotly.py"},{"name":"pytest","old_version":"8.3.5","new_version":"9.0.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.14.1","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.46","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.5.1","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.15.0","repository_url":"https://github.com/astral-sh/ruff"},{"name":"trino","old_version":"0.335.0","new_version":"0.336.0","repository_url":"https://github.com/trinodb/trino-python-client"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.11.0","repository_url":"https://github.com/ClickHouse/clickhouse-connect"},{"name":"polars","old_version":"1.36.1","new_version":"1.38.1","repository_url":"https://github.com/pola-rs/polars"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 31 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.120.1` | `0.128.8` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.12.5` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.48.0` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.2.1` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.3` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.18.1` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.10.0` | `4.12.1` |\n| [duckdb](https://github.com/duckdb/duckdb-python) | `1.3.2` | `1.4.4` |\n| [oracledb](https://github.com/oracle/python-oracledb) | `3.3.0` | `3.4.2` |\n| [mysqlclient](https://github.com/PyMySQL/mysqlclient) | `2.2.7` | `2.2.8` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.40.0` |\n| [gunicorn](https://github.com/benoitc/gunicorn) | `23.0.0` | `25.0.3` |\n| [uvicorn-worker](https://github.com/Kludex/uvicorn-worker) | `0.3.0` | `0.4.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.11` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `51.0.0` |\n| [starlette](https://github.com/Kludex/starlette) | `0.49.3` | `0.52.1` |\n| [databricks-sql-connector](https://github.com/databricks/databricks-sql-python) | `4.2.3` | `4.2.5` |\n| [databricks-sdk](https://github.com/databricks/databricks-sdk-py) | `0.73.0` | `0.87.0` |\n| [pyspark](https://github.com/apache/spark) | `3.5.7` | `4.1.1` |\n| [jupyterlab](https://github.com/jupyterlab/jupyterlab) | `4.5.1` | `4.5.4` |\n| [ipykernel](https://github.com/ipython/ipykernel) | `7.1.0` | `7.2.0` |\n| [plotly](https://github.com/plotly/plotly.py) | `6.5.0` | `6.5.2` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `9.0.2` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.14.1` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.46` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.5.1` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.15.0` |\n| [trino](https://github.com/trinodb/trino-python-client) | `0.335.0` | `0.336.0` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.11.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.36.1` | `1.38.1` |\n\n\nUpdates `fastapi` from 0.120.1 to 0.128.8\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's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.128.8\u003c/h2\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Fix grammar in \u003ccode\u003edocs/en/docs/tutorial/first-steps.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14708\"\u003e#14708\u003c/a\u003e by \u003ca href=\"https://github.com/SanjanaS10\"\u003e\u003ccode\u003e@​SanjanaS10\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🔨 Tweak PDM hook script. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14895\"\u003e#14895\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e♻️ Update build setup for \u003ccode\u003efastapi-slim\u003c/code\u003e, deprecate it, and make it only depend on \u003ccode\u003efastapi\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14894\"\u003e#14894\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.128.7\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Show a clear error on attempt to include router into itself. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14258\"\u003e#14258\u003c/a\u003e by \u003ca href=\"https://github.com/JavierSanchezCastro\"\u003e\u003ccode\u003e@​JavierSanchezCastro\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✨ Replace \u003ccode\u003edict\u003c/code\u003e by \u003ccode\u003eMapping\u003c/code\u003e on \u003ccode\u003eHTTPException.headers\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/12997\"\u003e#12997\u003c/a\u003e by \u003ca href=\"https://github.com/rijenkii\"\u003e\u003ccode\u003e@​rijenkii\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRefactors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e♻️ Simplify reading files in memory, do it sequentially instead of (fake) parallel. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14884\"\u003e#14884\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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📝 Use \u003ccode\u003edfn\u003c/code\u003e tag for definitions instead of \u003ccode\u003eabbr\u003c/code\u003e in docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14744\"\u003e#14744\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\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✅ Tweak comment in test to reference PR. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14885\"\u003e#14885\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔧 Update LLM-prompt for \u003ccode\u003eabbr\u003c/code\u003e and \u003ccode\u003edfn\u003c/code\u003e tags. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14747\"\u003e#14747\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Test order for the submitted byte Files. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14828\"\u003e#14828\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🔧 Configure \u003ccode\u003etest\u003c/code\u003e workflow to run tests with \u003ccode\u003einline-snapshot=review\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14876\"\u003e#14876\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.128.6\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eon_startup\u003c/code\u003e and \u003ccode\u003eon_shutdown\u003c/code\u003e parameters of \u003ccode\u003eAPIRouter\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14873\"\u003e#14873\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\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🌐 Update translations for zh (update-outdated). PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14843\"\u003e#14843\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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✅ Fix parameterized tests with snapshots. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14875\"\u003e#14875\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.128.5\u003c/h2\u003e\n\u003ch3\u003eRefactors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e♻️ Refactor and simplify Pydantic v2 (and v1) compatibility internal utils. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14862\"\u003e#14862\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\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/fastapi/fastapi/commit/bdd20051c42d08762b2cdcc6571e4356014de572\"\u003e\u003ccode\u003ebdd2005\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.128.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/1ed9bd49230b192bb531f4195d3d6a309261a777\"\u003e\u003ccode\u003e1ed9bd4\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/aac30fd7071d79798130137728aeb363c8c5f695\"\u003e\u003ccode\u003eaac30fd\u003c/code\u003e\u003c/a\u003e 🔨 Tweak PDM hook script (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14895\"\u003e#14895\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/417f1ee07825c6f4e983629bee6039857197112f\"\u003e\u003ccode\u003e417f1ee\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/ffb8965260c71657f26644673f218b99b1315cc7\"\u003e\u003ccode\u003effb8965\u003c/code\u003e\u003c/a\u003e ♻️ Update build setup for \u003ccode\u003efastapi-slim\u003c/code\u003e, deprecate it, and make it only depe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/93fa935fb8ac1c40488da7bf9b134466588ffaee\"\u003e\u003ccode\u003e93fa935\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/f0f3e7a113b7771388aef6d4a4cb863ce3890d9c\"\u003e\u003ccode\u003ef0f3e7a\u003c/code\u003e\u003c/a\u003e 📝 Fix grammar in \u003ccode\u003edocs/en/docs/tutorial/first-steps.md\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14708\"\u003e#14708\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8f82c94de0ff641a239db59e58dfdc6010a4b26a\"\u003e\u003ccode\u003e8f82c94\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.128.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/5bb3423205daf98f88f14d696d104fea2221028a\"\u003e\u003ccode\u003e5bb3423\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/6ce5e3e961876c39d8a60a3a2cb4147a6748d116\"\u003e\u003ccode\u003e6ce5e3e\u003c/code\u003e\u003c/a\u003e ✅ Tweak comment in test to reference PR (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14885\"\u003e#14885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.120.1...0.128.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.10.6 to 2.12.5\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.5 2025-11-26\u003c/h2\u003e\n\u003ch2\u003ev2.12.5 (2025-11-26)\u003c/h2\u003e\n\u003cp\u003eThis is the fifth 2.12 patch release, addressing an issue with the \u003ccode\u003eMISSING\u003c/code\u003e sentinel and providing several documentation improvements.\u003c/p\u003e\n\u003cp\u003eThe next 2.13 minor release will be published in a couple weeks, and will include a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature addressing\nthe remaining unexpected changes to the \u003cem\u003eserialize as any\u003c/em\u003e behavior.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix pickle error when using \u003ccode\u003emodel_construct()\u003c/code\u003e on a model with \u003ccode\u003eMISSING\u003c/code\u003e as a default value by \u003ca href=\"https://github.com/ornariece\"\u003e\u003ccode\u003e@​ornariece\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12522\"\u003e#12522\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eSeveral updates to the documentation by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\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.12.4...v2.12.5\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.4...v2.12.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.4 2025-11-05\u003c/h2\u003e\n\u003ch2\u003ev2.12.4 (2025-11-05)\u003c/h2\u003e\n\u003cp\u003eThis is the fourth 2.12 patch release, fixing more regressions, and reverting a change in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis patch release also fixes an issue with the serialization of IP address types, when \u003ccode\u003eserialize_as_any\u003c/code\u003e is used. The next patch release\nwill try to address the remaining issues with \u003cem\u003eserialize as any\u003c/em\u003e behavior by introducing a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature, that\nshould be used in most cases in place of \u003cem\u003eserialize as any\u003c/em\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with forward references in parent \u003ccode\u003eTypedDict\u003c/code\u003e classes 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/12427\"\u003e#12427\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis issue is only relevant on Python 3.14 and greater.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExclude fields with \u003ccode\u003eexclude_if\u003c/code\u003e from JSON Schema required fields 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/12430\"\u003e#12430\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRevert URL percent-encoding of credentials in the \u003ccode\u003ebuild()\u003c/code\u003e method of the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1833\"\u003epydantic-core#1833\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis was initially considered as a bugfix, but caused regressions and as such was fully reverted. The next release will include\nan opt-in option to percent-encode components of the URL.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd type inference for IP address types by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1868\"\u003epydantic-core#1868\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe 2.12 changes to the \u003ccode\u003eserialize_as_any\u003c/code\u003e behavior made it so that IP address types could not properly serialize to JSON.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid getting default values from defaultdict by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1853\"\u003epydantic-core#1853\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis fixes a subtle regression in the validation behavior of the \u003ca href=\"https://docs.python.org/3/library/collections.html#collections.defaultdict\"\u003e\u003ccode\u003ecollections.defaultdict\u003c/code\u003e\u003c/a\u003e\ntype.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with field serializers on nested typed dictionaries by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1879\"\u003epydantic-core#1879\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd more \u003ccode\u003epydantic-core\u003c/code\u003e builds for the three-threaded version of Python 3.14 by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1864\"\u003epydantic-core#1864\u003c/a\u003e.\u003c/p\u003e\n\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.12.3...v2.12.4\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.3...v2.12.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.3 2025-10-17\u003c/h2\u003e\n\u003ch2\u003ev2.12.3 (2025-10-17)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eThis is the third 2.13 patch release, fixing issues related to the \u003ccode\u003eFieldInfo\u003c/code\u003e class, and reverting a change to the supported \u003ca href=\"https://docs.pydantic.dev/latest/concepts/validators/#model-validators\"\u003e\u003cem\u003eafter\u003c/em\u003e model validator\u003c/a\u003e function signatures.\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\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.5 (2025-11-26)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis is the fifth 2.12 patch release, addressing an issue with the \u003ccode\u003eMISSING\u003c/code\u003e sentinel and providing several documentation improvements.\u003c/p\u003e\n\u003cp\u003eThe next 2.13 minor release will be published in a couple weeks, and will include a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature addressing\nthe remaining unexpected changes to the \u003cem\u003eserialize as any\u003c/em\u003e behavior.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix pickle error when using \u003ccode\u003emodel_construct()\u003c/code\u003e on a model with \u003ccode\u003eMISSING\u003c/code\u003e as a default value by \u003ca href=\"https://github.com/ornariece\"\u003e\u003ccode\u003e@​ornariece\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12522\"\u003e#12522\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eSeveral updates to the documentation by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.12.4 (2025-11-05)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.4\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis is the fourth 2.12 patch release, fixing more regressions, and reverting a change in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis patch release also fixes an issue with the serialization of IP address types, when \u003ccode\u003eserialize_as_any\u003c/code\u003e is used. The next patch release\nwill try to address the remaining issues with \u003cem\u003eserialize as any\u003c/em\u003e behavior by introducing a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature, that\nshould be used in most cases in place of \u003cem\u003eserialize as any\u003c/em\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with forward references in parent \u003ccode\u003eTypedDict\u003c/code\u003e classes 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/12427\"\u003e#12427\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis issue is only relevant on Python 3.14 and greater.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExclude fields with \u003ccode\u003eexclude_if\u003c/code\u003e from JSON Schema required fields 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/12430\"\u003e#12430\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRevert URL percent-encoding of credentials in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in\n\u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1833\"\u003epydantic-core#1833\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis was initially considered as a bugfix, but caused regressions and as such was fully reverted. The next release will include\nan opt-in option to percent-encode components of the URL.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd type inference for IP address types by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1868\"\u003epydantic-core#1868\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe 2.12 changes to the \u003ccode\u003eserialize_as_any\u003c/code\u003e behavior made it so that IP address types could not properly serialize to JSON.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid getting default values from defaultdict by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1853\"\u003epydantic-core#1853\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis fixes a subtle regression in the validation behavior of the \u003ca href=\"https://docs.python.org/3/library/collections.html#collections.defaultdict\"\u003e\u003ccode\u003ecollections.defaultdict\u003c/code\u003e\u003c/a\u003e\ntype.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with field serializers on nested typed dictionaries by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1879\"\u003epydantic-core#1879\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd more \u003ccode\u003epydantic-core\u003c/code\u003e builds for the three-threaded version of Python 3.14 by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1864\"\u003epydantic-core#1864\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.12.3 (2025-10-17)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.3\"\u003eGitHub release\u003c/a\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/pydantic/pydantic/commit/bd2d0dd0137dfa1a8fdff2529b9dfb1547980150\"\u003e\u003ccode\u003ebd2d0dd\u003c/code\u003e\u003c/a\u003e Prepare release v2.12.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/7d0302ec7ec2cf115de3450a615522875bdd8b56\"\u003e\u003ccode\u003e7d0302e\u003c/code\u003e\u003c/a\u003e Document security implications when using \u003ccode\u003ecreate_model()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/e9ef980def726b6f59b6c495ddc9dc259a0228db\"\u003e\u003ccode\u003ee9ef980\u003c/code\u003e\u003c/a\u003e Fix typo in Standard Library Types documentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/f2c20c00c265a31a13c48f9bae923a87c829952e\"\u003e\u003ccode\u003ef2c20c0\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003epydantic-docs\u003c/code\u003e dev dependency, make use of versioning blocks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a76c1aa26f2d64a3fd080ac515d80832689197e8\"\u003e\u003ccode\u003ea76c1aa\u003c/code\u003e\u003c/a\u003e Update documentation about JSON Schema\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/8cbc72ca489891e574fba45238ee8bd4f8e719a2\"\u003e\u003ccode\u003e8cbc72c\u003c/code\u003e\u003c/a\u003e Add documentation about custom \u003ccode\u003e__init__()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/99eba599069da137b3f708ffa74627f2b456ba73\"\u003e\u003ccode\u003e99eba59\u003c/code\u003e\u003c/a\u003e Add additional test for \u003ccode\u003eFieldInfo.get_default()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c71076988e507ea93844c77c3bf0bbb85a5716af\"\u003e\u003ccode\u003ec710769\u003c/code\u003e\u003c/a\u003e Special case \u003ccode\u003eMISSING\u003c/code\u003e sentinel in \u003ccode\u003esmart_deepcopy()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/20a9d771c210fd77d52366ac923258c4c199727f\"\u003e\u003ccode\u003e20a9d77\u003c/code\u003e\u003c/a\u003e Do not delete mock validator/serializer in \u003ccode\u003erebuild_dataclass()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c86515a3a8f2120148fab2eaedd3bc45925779d0\"\u003e\u003ccode\u003ec86515a\u003c/code\u003e\u003c/a\u003e Update parts of the model and \u003ccode\u003erevalidate_instances\u003c/code\u003e documentation\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.12.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.48.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003egoogle-auth 2.48.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.47.0...v2.48.0\"\u003e2.48.0\u003c/a\u003e (2026-01-21)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003ehonor \u003ccode\u003eNO_GCE_CHECK\u003c/code\u003e environment variable (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1610\"\u003e#1610\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/383c9827\"\u003e383c9827\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eadd configurable GCE Metadata Server retries (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1488\"\u003e#1488\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/454b441b\"\u003e454b441b\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eadd cryptography as required dependency (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1929\"\u003e#1929\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/52558ae2\"\u003e52558ae2\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eSupport the mTLS IAM domain for Certificate based Access (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1938\"\u003e#1938\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/8dcf91a1\"\u003e8dcf91a1\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eresolve circular imports (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1942\"\u003e#1942\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25c1b064\"\u003e25c1b064\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUse \u003ccode\u003euser_verification=preferred\u003c/code\u003e for ReAuth WebAuthn challenge (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1798\"\u003e#1798\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3f88a240\"\u003e3f88a240\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eremoves \u003ccode\u003econtent-header\u003c/code\u003e from AWS IMDS get request (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1934\"\u003e#1934\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97bfea9e\"\u003e97bfea9e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edetect correct auth when ADC env var is set but empty (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1374\"\u003e#1374\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/bfc07e10\"\u003ebfc07e10\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ereplace deprecated utcfromtimestamp (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1799\"\u003e#1799\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e431f20c\"\u003ee431f20c\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.48.0rc0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.47.0...v2.48.0rc0\"\u003e2.48.0rc0\u003c/a\u003e (2026-01-20)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ehonor NO_GCE_CHECK environment variable (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1610\"\u003e#1610\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/383c9827536d9376e8248370ce4c2b83e468d027\"\u003e383c98\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd configurable GCE Metadata Server retries (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1488\"\u003e#1488\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/454b441b478ec62bbf1a6ad5bceb6c7cbbfd0c37\"\u003e454b44\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport mTLS IAM domain for Certificate based Access (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1938\"\u003e#1938\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/8dcf91a1b05c85fbbd0bcee78d66e498099102ab\"\u003e8dcf91\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd cryptography as required dependency (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1929\"\u003e#1929\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/52558ae2881b1e6555f6f5c0d76365c15807ead9\"\u003e52558a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse user_verification=preferred for ReAuth WebAuthn challenge (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1798\"\u003e#1798\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3f88a24089c4ee6822d510de0db210b54260d873\"\u003e3f88a2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ereplace deprecated utcfromtimestamp (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1799\"\u003e#1799\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e431f20cf73ccac71926a23ec454468cea92e053\"\u003ee431f2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003edetect correct auth when ADC env var is set by empty (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1374\"\u003e#1374\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/bfc07e1050bd0aa86fa3b08cdf70c9b68b5fe6a2\"\u003ebfc07e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremoved content-header from AWS IMDS (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1934\"\u003e#1934\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97bfea9e02ede953fc8ee154e0deed3a3cfc6dcc\"\u003e97bfea\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eresolve circular imports (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1942\"\u003e#1942\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25c1b064545702cbef087cfcd15fbbb6ef1af74f\"\u003e25c1b0\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003egoogle-auth 2.47.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.46.0...v2.47.0\"\u003e2.47.0\u003c/a\u003e (2026-01-06)\u003c/h2\u003e\n\u003ch3\u003eFeatures\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.47.0...v2.48.0\"\u003e2.48.0\u003c/a\u003e (2026-01-22)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd cryptography as required dependency (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1929\"\u003e#1929\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/52558ae2881b1e6555f6f5c0d76365c15807ead9\"\u003e52558ae2881b1e6555f6f5c0d76365c15807ead9\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport the mTLS IAM domain for Certificate based Access (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1938\"\u003e#1938\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/8dcf91a1b05c85fbbd0bcee78d66e498099102ab\"\u003e8dcf91a1b05c85fbbd0bcee78d66e498099102ab\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd configurable GCE Metadata Server retries (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1488\"\u003e#1488\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/454b441b478ec62bbf1a6ad5bceb6c7cbbfd0c37\"\u003e454b441b478ec62bbf1a6ad5bceb6c7cbbfd0c37\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ehonor \u003ccode\u003eNO_GCE_CHECK\u003c/code\u003e environment variable (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1610\"\u003e#1610\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/383c9827536d9376e8248370ce4c2b83e468d027\"\u003e383c9827536d9376e8248370ce4c2b83e468d027\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eresolve circular imports (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1942\"\u003e#1942\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25c1b064545702cbef087cfcd15fbbb6ef1af74f\"\u003e25c1b064545702cbef087cfcd15fbbb6ef1af74f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremoves \u003ccode\u003econtent-header\u003c/code\u003e from AWS IMDS get request (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1934\"\u003e#1934\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97bfea9e02ede953fc8ee154e0deed3a3cfc6dcc\"\u003e97bfea9e02ede953fc8ee154e0deed3a3cfc6dcc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003edetect correct auth when ADC env var is set but empty (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1374\"\u003e#1374\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/bfc07e1050bd0aa86fa3b08cdf70c9b68b5fe6a2\"\u003ebfc07e1050bd0aa86fa3b08cdf70c9b68b5fe6a2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ereplace deprecated utcfromtimestamp (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1799\"\u003e#1799\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e431f20cf73ccac71926a23ec454468cea92e053\"\u003ee431f20cf73ccac71926a23ec454468cea92e053\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003euser_verification=preferred\u003c/code\u003e for ReAuth WebAuthn challenge (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1798\"\u003e#1798\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3f88a24089c4ee6822d510de0db210b54260d873\"\u003e3f88a24089c4ee6822d510de0db210b54260d873\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.46.0...v2.47.0\"\u003e2.47.0\u003c/a\u003e (2026-01-06)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edrop \u003ccode\u003ecachetools\u003c/code\u003e dependency in favor of simple local implementation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1590\"\u003e#1590\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/5c07e1c4f52bc77a1b16fa3b7b3c5269c242f6f4\"\u003e5c07e1c4f52bc77a1b16fa3b7b3c5269c242f6f4\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1918\"\u003e#1918\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/60dc20014a35ec4ba71e8065b9a33ecbdbeca97a\"\u003e60dc20014a35ec4ba71e8065b9a33ecbdbeca97a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.45.0...v2.46.0\"\u003e2.46.0\u003c/a\u003e (2026-01-05)\u003c/h2\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate urllib3 docstrings for v2 compatibility (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1903\"\u003e#1903\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3f1aeea2d1014ea1d244a4c3470e52d74d55404b\"\u003e3f1aeea2d1014ea1d244a4c3470e52d74d55404b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRecognize workload certificate config in has_default_client_cert_source for mTLS for Agentic Identities (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1907\"\u003e#1907\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0b9107d573123e358c347ffa067637f992af61b4\"\u003e0b9107d573123e358c347ffa067637f992af61b4\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd types to default and verify_token and Request \u003cstrong\u003einit\u003c/strong\u003e based on comments in the source code. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1588\"\u003e#1588\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/59a5f588f7793b59d923a4185c8c07738da618f7\"\u003e59a5f588f7793b59d923a4185c8c07738da618f7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix the document of secure_authorized_session (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1536\"\u003e#1536\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/5d0014707fc359782df5ccfcaa75fd372fe9dce3\"\u003e5d0014707fc359782df5ccfcaa75fd372fe9dce3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremove setup.cfg configuration for creating universal wheels (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1693\"\u003e#1693\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/c767531ce05a89002d109f595187aff1fcaacfb7\"\u003ec767531ce05a89002d109f595187aff1fcaacfb7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse .read() instead of .content.read() in aiohttp transport (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1899\"\u003e#1899\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/12f4470f808809e8abf1141f98d88ab720c3899b\"\u003e12f4470f808809e8abf1141f98d88ab720c3899b\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/googleapis/google-auth-library-python/commit/6a982be06e513a3182069cd910466e743fa7db6a\"\u003e\u003ccode\u003e6a982be\u003c/code\u003e\u003c/a\u003e chore: librarian release pull request: 20260121T162706Z (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1946\"\u003e#1946\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/526d6c63d70aabcfbb69d1d5277831269aac28c1\"\u003e\u003ccode\u003e526d6c6\u003c/code\u003e\u003c/a\u003e chore(tests): add cryptography to constraints file (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1944\"\u003e#1944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/52558ae2881b1e6555f6f5c0d76365c15807ead9\"\u003e\u003ccode\u003e52558ae\u003c/code\u003e\u003c/a\u003e feat: add cryptography as required dependency (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1929\"\u003e#1929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/8dcf91a1b05c85fbbd0bcee78d66e498099102ab\"\u003e\u003ccode\u003e8dcf91a\u003c/code\u003e\u003c/a\u003e feat(iam): Support the mTLS IAM domain for Certificate based Access (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1938\"\u003e#1938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/db17a641a2866e1016fde939567facdfd9935a41\"\u003e\u003ccode\u003edb17a64\u003c/code\u003e\u003c/a\u003e chore(tests): add sleep mocks (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1943\"\u003e#1943\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25c1b064545702cbef087cfcd15fbbb6ef1af74f\"\u003e\u003ccode\u003e25c1b06\u003c/code\u003e\u003c/a\u003e fix: resolve circular imports (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1942\"\u003e#1942\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e5a28b590192d1280c5de3c023e221b70df5e26f\"\u003e\u003ccode\u003ee5a28b5\u003c/code\u003e\u003c/a\u003e tests: system tests for expired User Credentials (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1937\"\u003e#1937\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/4292ab0226dae86e0885cbeb83be39ec6c91ee36\"\u003e\u003ccode\u003e4292ab0\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency google-cloud-compute to v1.42.0 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1939\"\u003e#1939\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/4848ac4fff4d458d797edb938077e348650539d0\"\u003e\u003ccode\u003e4848ac4\u003c/code\u003e\u003c/a\u003e chore: extracts unit tests to individual github actions (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1941\"\u003e#1941\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/71e6e8e5da89f096655a4d61fbf35b8e215b0ad5\"\u003e\u003ccode\u003e71e6e8e\u003c/code\u003e\u003c/a\u003e chore: dedent deprecation warning message (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1932\"\u003e#1932\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.48.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.2.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.2.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport reading .env from FIFOs (Unix) by \u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CI to use trusted publishing on PyPI\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/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003estyle: upgrade to use ruff by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/567\"\u003etheskumar/python-dotenv#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse sys.exit() instead of exit() by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/568\"\u003etheskumar/python-dotenv#568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat:  add \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e flag to disable load_dotenv (fixes \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/510\"\u003e#510\u003c/a\u003e) by \u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded Python@3.14: Github CI \u0026amp; tox.ini by \u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eocs: clarify what load_dotenv() does in README by \u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group across 1 directory with 2 updates 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/theskumar/python-dotenv/pull/577\"\u003etheskumar/python-dotenv#577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove project metadata and config to pyproject.toml by \u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\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/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: ensure find_dotenv work reliably on python 3.13 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003etheskumar/python-dotenv#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cli): issue with execvpe on Windows by \u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\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/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a security policy by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/512\"\u003etheskumar/python-dotenv#512\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep GitHub Actions up to date with GitHub's Dependabot by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/506\"\u003etheskumar/python-dotenv#506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix multiline string in test.yml \u0026amp; use fail-fast strategy by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/514\"\u003etheskumar/python-dotenv#514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnhance dotenv run: Switch to execvpe for better resource management and signal handling by \u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add py3.13 to test.yml by \u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 trove classifier by \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for python 3.13 and drop 3.8 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/551\"\u003etheskumar/python-dotenv#551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update README.md by \u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSome more s/Python-dotenv/python-dotenv/ by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/552\"\u003etheskumar/python-dotenv#552\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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.2.1] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMove more config to \u003ccode\u003epyproject.toml\u003c/code\u003e, removed \u003ccode\u003esetup.cfg\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for reading \u003ccode\u003e.env\u003c/code\u003e from FIFOs (Unix) by [\u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.2.0] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade build system to use PEP 517 \u0026amp; PEP 518 to use \u003ccode\u003ebuild\u003c/code\u003e and \u003ccode\u003epyproject.toml\u003c/code\u003e by [\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/583\"\u003e#583\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14 by [\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for disabling of \u003ccode\u003eload_dotenv()\u003c/code\u003e using \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e env var. by [\u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/569\"\u003e#569\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCLI: revert the use of execvpe on Windows by [\u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003e#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.0] - 2025-03-25\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFeature\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for python 3.13\u003c/li\u003e\n\u003cli\u003eEnhance \u003ccode\u003edotenv run\u003c/code\u003e, switch to \u003ccode\u003eexecvpe\u003c/code\u003e for better resource management and signal handling (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/523\"\u003e#523\u003c/a\u003e) by [\u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efind_dotenv\u003c/code\u003e and \u003ccode\u003eload_dotenv\u003c/code\u003e now correctly looks up at the current directory when running in debugger or pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e by [\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e])\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eMisc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8\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/theskumar/python-dotenv/commit/eaf2a9129ccec6febda0f741eb3bb852c3f947bd\"\u003e\u003ccode\u003eeaf2a91\u003c/code\u003e\u003c/a\u003e Do not remove .coverage file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8716196891532eeb67d24a513e8d975437f5e8b7\"\u003e\u003ccode\u003e8716196\u003c/code\u003e\u003c/a\u003e Bump version: 1.2.0 → 1.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/b87807fcad6e74332c3c63a75c92ce5814fa7a55\"\u003e\u003ccode\u003eb87807f\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/3af77d3029eb717aeec0a3c25f751b6a614a6d3c\"\u003e\u003ccode\u003e3af77d3\u003c/code\u003e\u003c/a\u003e Support reading .env from FIFOs (Unix) (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/467ee22fccb2fb7ccda71a0d9e37c6ea3cb8d993\"\u003e\u003ccode\u003e467ee22\u003c/code\u003e\u003c/a\u003e Fix test failures after moving config to pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/76999e741d87e958ebd74e3ae9834c0514e77a59\"\u003e\u003ccode\u003e76999e7\u003c/code\u003e\u003c/a\u003e Move more config pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/222ce2cc58ebc82ba78da8781269267b9f585932\"\u003e\u003ccode\u003e222ce2c\u003c/code\u003e\u003c/a\u003e Update to use trusted publisher on pypi\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8ed4f79d202eba582b44bdf1f5deb726dd68783d\"\u003e\u003ccode\u003e8ed4f79\u003c/code\u003e\u003c/a\u003e Update docs requirements\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/5bf882241c607445bf02cf5b241535d62e2b99c1\"\u003e\u003ccode\u003e5bf8822\u003c/code\u003e\u003c/a\u003e Bump version: 1.1.1 → 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/1fe11cc737ee4399e9c51d1b69b0dd858f6b4669\"\u003e\u003ccode\u003e1fe11cc\u003c/code\u003e\u003c/a\u003e upadate changelog\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.2.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.2.3 to 2.3.3\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.3\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.3.\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.3.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.3 supports Python 3.9 and higher, and is the first release to support Python 3.14.\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.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\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/pandas-dev/pandas/commit/9c8bc3e55188c8aff37207a74f1dd144980b8874\"\u003e\u003ccode\u003e9c8bc3e\u003c/code\u003e\u003c/a\u003e RLS: 2.3.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/6aa788a00bda9b0f004302076dad94df3edeafc7\"\u003e\u003ccode\u003e6aa788a\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] DOC: prepare 2.3.3 whatsnew notes for release (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62499\"\u003e#62499\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62508\"\u003e#62508\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/b64f0df403d11ac733d9f460f89a5e99c8044ed0\"\u003e\u003ccode\u003eb64f0df\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: avoid validation error for ufunc with string[python] ar...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/058eb2b0edfc408dae9966ef1f03372f2a3ff04c\"\u003e\u003ccode\u003e058eb2b\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: String[pyarrow] comparison with mixed object (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62424\"\u003e#62424\u003c/a\u003e) (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/2ca088daef6a9d9333fea8aedffc7e50d28dfdee\"\u003e\u003ccode\u003e2ca088d\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] DEPR: remove the Period resampling deprecation (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62480\"\u003e#62480\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62\"\u003e#62\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/92bf98f623572ed053d48be5818c8503f1b61888\"\u003e\u003ccode\u003e92bf98f\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: fix .str.isdigit to honor unicode superscript for older...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/e57c7d6a2247316188fba0ba2a0db3c11028d75c\"\u003e\u003ccode\u003ee57c7d6\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62452\"\u003e#62452\u003c/a\u003e on branch 2.3.x (TST: Adjust tests for numexpr 2.13) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62454\"\u003e#62454\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/e0fe9a03c90e560c34a3bbbdd1735a8b64f7b281\"\u003e\u003ccode\u003ee0fe9a0\u003c/code\u003e\u003c/a\u003e Backport to 2.3.x: REGR: from_records not initializing subclasses properly (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/23a1085e641c8e3a5b500e319c5973e4160b9236\"\u003e\u003ccode\u003e23a1085\u003c/code\u003e\u003c/a\u003e BUG: improve future warning for boolean operations with missaligned indexes (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/61136969fb18b438b6660bd5d485d0236dbf4a71\"\u003e\u003ccode\u003e6113696\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62396\"\u003e#62396\u003c/a\u003e on branch 2.3.x (PKG/DOC: indicate Python 3.14 support in ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pandas-dev/pandas/compare/v2.2.3...v2.3.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geoalchemy2` from 0.17.1 to 0.18.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/releases\"\u003egeoalchemy2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix (mysql): Fix failing test for MySQL dialect by \u003ca href=\"https://github.com/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/567\"\u003egeoalchemy/geoalchemy2#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/570\"\u003egeoalchemy/geoalchemy2#570\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Allow scientific notation within WKT string by \u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/573\"\u003egeoalchemy/geoalchemy2#573\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.1 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/574\"\u003egeoalchemy/geoalchemy2#574\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/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/567\"\u003egeoalchemy/geoalchemy2#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/573\"\u003egeoalchemy/geoalchemy2#573\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.18.0...0.18.1\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.18.0...0.18.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/538\"\u003egeoalchemy/geoalchemy2#538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/540\"\u003egeoalchemy/geoalchemy2#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCompile literal binds by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/543\"\u003egeoalchemy/geoalchemy2#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/544\"\u003egeoalchemy/geoalchemy2#544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore (mariadb): Stop converting WKB to WKT by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/545\"\u003egeoalchemy/geoalchemy2#545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker containers by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/546\"\u003egeoalchemy/geoalchemy2#546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/547\"\u003egeoalchemy/geoalchemy2#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/553\"\u003egeoalchemy/geoalchemy2#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/554\"\u003egeoalchemy/geoalchemy2#554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Improve readbility of benchmark results by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/556\"\u003egeoalchemy/geoalchemy2#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/555\"\u003egeoalchemy/geoalchemy2#555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/557\"\u003egeoalchemy/geoalchemy2#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Remove warning message from MySQL/MariaDB reflection by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/560\"\u003egeoalchemy/geoalchemy2#560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/561\"\u003egeoalchemy/geoalchemy2#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: correct doc strings by \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/564\"\u003egeoalchemy/geoalchemy2#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.0 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/565\"\u003egeoalchemy/geoalchemy2#565\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/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.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/geoalchemy/geoalchemy2/blob/main/CHANGES.txt\"\u003egeoalchemy2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Allow scientific notation within WKT string - \u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/573\"\u003e#573\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix (mysql): Fix failing test for MySQL dialect - \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/567\"\u003e#567\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Fix doc strings for cache enabled - \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e(papacodebear/master) Fix: Remove warning from MySQL/MariaDB reflection \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Improve readability of benchmark results \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/547\"\u003e#547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker container \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/546\"\u003e#546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf (mariadb): Stop converting WKB to WKT \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/545\"\u003e#545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/544\"\u003e#544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Compile literal binds properly \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/540\"\u003e#540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/538\"\u003e#538\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/geoalchemy/geoalchemy2/commit/0c311122e5228a885e262d8f79b037cb74c0949b\"\u003e\u003ccode\u003e0c31112\u003c/code\u003e\u003c/a\u003e Release: 0.18.1 (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/574\"\u003e#574\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/75f87fac699ed31579ef93dffc59cc25bda241a8\"\u003e\u003ccode\u003e75f87fa\u003c/code\u003e\u003c/a\u003e Fix: Allow scientific notation within WKT string (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/573\"\u003e#573\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/8653df3a1b0236556f1c39c916f0fb717475a6d1\"\u003e\u003ccode\u003e8653df3\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/570\"\u003e#570\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/3d6099504023afda68137f0ac2d041986159dac9\"\u003e\u003ccode\u003e3d60995\u003c/code\u003e\u003c/a\u003e Fix (mysql): Fix failing test for MySQL dialect (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/567\"\u003e#567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/60767082df9f4587fadd56ab94847ebc39df8295\"\u003e\u003ccode\u003e6076708\u003c/code\u003e\u003c/a\u003e Release: 0.18.0 (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/565\"\u003e#565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/e13112177bdf79cae0d72a6e89d815dc272e3dc5\"\u003e\u003ccode\u003ee131121\u003c/code\u003e\u003c/a\u003e Feat: Add support of spatial indexes for Raster type for PostgreSQL (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/0b432086a0c3b8ab1...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1422","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1422","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1422/packages"},{"uuid":"3795330434","node_id":"PR_kwDOHTdvBs68P6-_","number":1401,"state":"open","title":"deps(ibis): bump the all group across 1 directory with 27 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-01-09T03:32:46.000Z","updated_at":"2026-01-12T07:14:12.529Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":27,"packages":[{"name":"fastapi","old_version":"0.120.1","new_version":"0.128.0","repository_url":"https://github.com/fastapi/fastapi"},{"name":"pydantic","old_version":"2.10.6","new_version":"2.12.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.47.0","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.2.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"orjson","old_version":"3.10.16","new_version":"3.11.5","repository_url":"https://github.com/ijl/orjson"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.18.1","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"anyio","old_version":"4.10.0","new_version":"4.12.1","repository_url":"https://github.com/agronholm/anyio"},{"name":"duckdb","old_version":"1.3.2","new_version":"1.4.3","repository_url":"https://github.com/duckdb/duckdb-python"},{"name":"oracledb","old_version":"3.3.0","new_version":"3.4.1","repository_url":"https://github.com/oracle/python-oracledb"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.40.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"uvicorn-worker","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/Kludex/uvicorn-worker"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.10","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"50.1.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"starlette","old_version":"0.49.3","new_version":"0.50.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"databricks-sql-connector","old_version":"4.2.3","new_version":"4.2.4","repository_url":"https://github.com/databricks/databricks-sql-python"},{"name":"databricks-sdk","old_version":"0.73.0","new_version":"0.77.0","repository_url":"https://github.com/databricks/databricks-sdk-py"},{"name":"pyspark","old_version":"3.5.7","new_version":"4.1.0","repository_url":"https://github.com/apache/spark"},{"name":"plotly","old_version":"6.5.0","new_version":"6.5.1","repository_url":"https://github.com/plotly/plotly.py"},{"name":"pytest","old_version":"8.3.5","new_version":"9.0.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.14.0","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.45","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.5.1","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.14.11","repository_url":"https://github.com/astral-sh/ruff"},{"name":"trino","old_version":"0.335.0","new_version":"0.336.0","repository_url":"https://github.com/trinodb/trino-python-client"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.10.0","repository_url":"https://github.com/ClickHouse/clickhouse-connect"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 27 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.120.1` | `0.128.0` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.12.5` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.47.0` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.2.1` |\n| [orjson](https://github.com/ijl/orjson) | `3.10.16` | `3.11.5` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.3` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.18.1` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.10.0` | `4.12.1` |\n| [duckdb](https://github.com/duckdb/duckdb-python) | `1.3.2` | `1.4.3` |\n| [oracledb](https://github.com/oracle/python-oracledb) | `3.3.0` | `3.4.1` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.40.0` |\n| [uvicorn-worker](https://github.com/Kludex/uvicorn-worker) | `0.3.0` | `0.4.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.10` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `50.1.0` |\n| [starlette](https://github.com/Kludex/starlette) | `0.49.3` | `0.50.0` |\n| [databricks-sql-connector](https://github.com/databricks/databricks-sql-python) | `4.2.3` | `4.2.4` |\n| [databricks-sdk](https://github.com/databricks/databricks-sdk-py) | `0.73.0` | `0.77.0` |\n| [pyspark](https://github.com/apache/spark) | `3.5.7` | `4.1.0` |\n| [plotly](https://github.com/plotly/plotly.py) | `6.5.0` | `6.5.1` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `9.0.2` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.14.0` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.45` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.5.1` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.14.11` |\n| [trino](https://github.com/trinodb/trino-python-client) | `0.335.0` | `0.336.0` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.10.0` |\n\n\nUpdates `fastapi` from 0.120.1 to 0.128.0\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's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.128.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e➖ Drop support for \u003ccode\u003epydantic.v1\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14609\"\u003e#14609\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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✅ Run performance tests only on Pydantic v2. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14608\"\u003e#14608\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.127.1\u003c/h2\u003e\n\u003ch3\u003eRefactors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🔊 Add a custom \u003ccode\u003eFastAPIDeprecationWarning\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14605\"\u003e#14605\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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📝 Add documentary to website. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14600\"\u003e#14600\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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🌐 Update translations for de (update-outdated). PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14602\"\u003e#14602\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Update translations for de (update-outdated). PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14581\"\u003e#14581\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\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🔧 Update pre-commit to use local Ruff instead of hook. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14604\"\u003e#14604\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Add missing tests for code examples. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14569\"\u003e#14569\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👷 Remove \u003ccode\u003elint\u003c/code\u003e job from \u003ccode\u003etest\u003c/code\u003e CI workflow. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14593\"\u003e#14593\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👷 Update secrets check. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14592\"\u003e#14592\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👷 Run CodSpeed tests in parallel to other tests to speed up CI. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14586\"\u003e#14586\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔨 Update scripts and pre-commit to autofix files. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14585\"\u003e#14585\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.127.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🔊 Add deprecation warnings when using \u003ccode\u003epydantic.v1\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14583\"\u003e#14583\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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 LLM prompt file for Korean, generated from the existing translations. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14546\"\u003e#14546\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔧 Add LLM prompt file for Japanese, generated from the existing translations. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14545\"\u003e#14545\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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⬆️ Upgrade OpenAI model for translations to gpt-5.2. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14579\"\u003e#14579\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.126.0\u003c/h2\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e➖ Drop support for Pydantic v1, keeping short temporary support for Pydantic v2's \u003ccode\u003epydantic.v1\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14575\"\u003e#14575\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8322a4445a3b25acd9b26b61192571b2d92f9bcd\"\u003e\u003ccode\u003e8322a44\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.128.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/4b2cfcfd34d0b2e158a05b377426e0c8376b94de\"\u003e\u003ccode\u003e4b2cfcf\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/e3006305518a56ea35f62a31748ad26fe4356fcc\"\u003e\u003ccode\u003ee300630\u003c/code\u003e\u003c/a\u003e ➖ Drop support for \u003ccode\u003epydantic.v1\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14609\"\u003e#14609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/1b3bea8b6be2220cc1544653ea785d2134fcb35b\"\u003e\u003ccode\u003e1b3bea8\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/34e884156f38dff4094a7764ff895c4d4b872060\"\u003e\u003ccode\u003e34e8841\u003c/code\u003e\u003c/a\u003e ✅ Run performance tests only on Pydantic v2 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14608\"\u003e#14608\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/cd90c78391f86f3fd06d5b327bffad9666b05b44\"\u003e\u003ccode\u003ecd90c78\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.127.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/93f4dfd88b7d62bda89eb521ebd9322e357e6fff\"\u003e\u003ccode\u003e93f4dfd\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/535b5daa317a9d1d1f9a1058e57650a7beefa861\"\u003e\u003ccode\u003e535b5da\u003c/code\u003e\u003c/a\u003e 🔊 Add a custom \u003ccode\u003eFastAPIDeprecationWarning\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14605\"\u003e#14605\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/6b53786f626db95a42fd0f66afd360bab161f4b1\"\u003e\u003ccode\u003e6b53786\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d98f4eb56eae3155034fe631d9639d95171fb9ab\"\u003e\u003ccode\u003ed98f4eb\u003c/code\u003e\u003c/a\u003e 🔧 Update pre-commit to use local Ruff instead of hook (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14604\"\u003e#14604\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.120.1...0.128.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.10.6 to 2.12.5\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.5 2025-11-26\u003c/h2\u003e\n\u003ch2\u003ev2.12.5 (2025-11-26)\u003c/h2\u003e\n\u003cp\u003eThis is the fifth 2.12 patch release, addressing an issue with the \u003ccode\u003eMISSING\u003c/code\u003e sentinel and providing several documentation improvements.\u003c/p\u003e\n\u003cp\u003eThe next 2.13 minor release will be published in a couple weeks, and will include a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature addressing\nthe remaining unexpected changes to the \u003cem\u003eserialize as any\u003c/em\u003e behavior.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix pickle error when using \u003ccode\u003emodel_construct()\u003c/code\u003e on a model with \u003ccode\u003eMISSING\u003c/code\u003e as a default value by \u003ca href=\"https://github.com/ornariece\"\u003e\u003ccode\u003e@​ornariece\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12522\"\u003e#12522\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eSeveral updates to the documentation by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\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.12.4...v2.12.5\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.4...v2.12.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.4 2025-11-05\u003c/h2\u003e\n\u003ch2\u003ev2.12.4 (2025-11-05)\u003c/h2\u003e\n\u003cp\u003eThis is the fourth 2.12 patch release, fixing more regressions, and reverting a change in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis patch release also fixes an issue with the serialization of IP address types, when \u003ccode\u003eserialize_as_any\u003c/code\u003e is used. The next patch release\nwill try to address the remaining issues with \u003cem\u003eserialize as any\u003c/em\u003e behavior by introducing a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature, that\nshould be used in most cases in place of \u003cem\u003eserialize as any\u003c/em\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with forward references in parent \u003ccode\u003eTypedDict\u003c/code\u003e classes 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/12427\"\u003e#12427\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis issue is only relevant on Python 3.14 and greater.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExclude fields with \u003ccode\u003eexclude_if\u003c/code\u003e from JSON Schema required fields 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/12430\"\u003e#12430\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRevert URL percent-encoding of credentials in the \u003ccode\u003ebuild()\u003c/code\u003e method of the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1833\"\u003epydantic-core#1833\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis was initially considered as a bugfix, but caused regressions and as such was fully reverted. The next release will include\nan opt-in option to percent-encode components of the URL.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd type inference for IP address types by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1868\"\u003epydantic-core#1868\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe 2.12 changes to the \u003ccode\u003eserialize_as_any\u003c/code\u003e behavior made it so that IP address types could not properly serialize to JSON.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid getting default values from defaultdict by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1853\"\u003epydantic-core#1853\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis fixes a subtle regression in the validation behavior of the \u003ca href=\"https://docs.python.org/3/library/collections.html#collections.defaultdict\"\u003e\u003ccode\u003ecollections.defaultdict\u003c/code\u003e\u003c/a\u003e\ntype.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with field serializers on nested typed dictionaries by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1879\"\u003epydantic-core#1879\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd more \u003ccode\u003epydantic-core\u003c/code\u003e builds for the three-threaded version of Python 3.14 by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1864\"\u003epydantic-core#1864\u003c/a\u003e.\u003c/p\u003e\n\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.12.3...v2.12.4\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.3...v2.12.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.3 2025-10-17\u003c/h2\u003e\n\u003ch2\u003ev2.12.3 (2025-10-17)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eThis is the third 2.13 patch release, fixing issues related to the \u003ccode\u003eFieldInfo\u003c/code\u003e class, and reverting a change to the supported \u003ca href=\"https://docs.pydantic.dev/latest/concepts/validators/#model-validators\"\u003e\u003cem\u003eafter\u003c/em\u003e model validator\u003c/a\u003e function signatures.\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\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.5 (2025-11-26)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis is the fifth 2.12 patch release, addressing an issue with the \u003ccode\u003eMISSING\u003c/code\u003e sentinel and providing several documentation improvements.\u003c/p\u003e\n\u003cp\u003eThe next 2.13 minor release will be published in a couple weeks, and will include a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature addressing\nthe remaining unexpected changes to the \u003cem\u003eserialize as any\u003c/em\u003e behavior.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix pickle error when using \u003ccode\u003emodel_construct()\u003c/code\u003e on a model with \u003ccode\u003eMISSING\u003c/code\u003e as a default value by \u003ca href=\"https://github.com/ornariece\"\u003e\u003ccode\u003e@​ornariece\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12522\"\u003e#12522\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eSeveral updates to the documentation by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.12.4 (2025-11-05)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.4\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis is the fourth 2.12 patch release, fixing more regressions, and reverting a change in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis patch release also fixes an issue with the serialization of IP address types, when \u003ccode\u003eserialize_as_any\u003c/code\u003e is used. The next patch release\nwill try to address the remaining issues with \u003cem\u003eserialize as any\u003c/em\u003e behavior by introducing a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature, that\nshould be used in most cases in place of \u003cem\u003eserialize as any\u003c/em\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with forward references in parent \u003ccode\u003eTypedDict\u003c/code\u003e classes 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/12427\"\u003e#12427\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis issue is only relevant on Python 3.14 and greater.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExclude fields with \u003ccode\u003eexclude_if\u003c/code\u003e from JSON Schema required fields 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/12430\"\u003e#12430\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRevert URL percent-encoding of credentials in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in\n\u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1833\"\u003epydantic-core#1833\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis was initially considered as a bugfix, but caused regressions and as such was fully reverted. The next release will include\nan opt-in option to percent-encode components of the URL.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd type inference for IP address types by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1868\"\u003epydantic-core#1868\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe 2.12 changes to the \u003ccode\u003eserialize_as_any\u003c/code\u003e behavior made it so that IP address types could not properly serialize to JSON.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid getting default values from defaultdict by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1853\"\u003epydantic-core#1853\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis fixes a subtle regression in the validation behavior of the \u003ca href=\"https://docs.python.org/3/library/collections.html#collections.defaultdict\"\u003e\u003ccode\u003ecollections.defaultdict\u003c/code\u003e\u003c/a\u003e\ntype.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with field serializers on nested typed dictionaries by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1879\"\u003epydantic-core#1879\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd more \u003ccode\u003epydantic-core\u003c/code\u003e builds for the three-threaded version of Python 3.14 by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1864\"\u003epydantic-core#1864\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.12.3 (2025-10-17)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.3\"\u003eGitHub release\u003c/a\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/pydantic/pydantic/commit/bd2d0dd0137dfa1a8fdff2529b9dfb1547980150\"\u003e\u003ccode\u003ebd2d0dd\u003c/code\u003e\u003c/a\u003e Prepare release v2.12.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/7d0302ec7ec2cf115de3450a615522875bdd8b56\"\u003e\u003ccode\u003e7d0302e\u003c/code\u003e\u003c/a\u003e Document security implications when using \u003ccode\u003ecreate_model()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/e9ef980def726b6f59b6c495ddc9dc259a0228db\"\u003e\u003ccode\u003ee9ef980\u003c/code\u003e\u003c/a\u003e Fix typo in Standard Library Types documentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/f2c20c00c265a31a13c48f9bae923a87c829952e\"\u003e\u003ccode\u003ef2c20c0\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003epydantic-docs\u003c/code\u003e dev dependency, make use of versioning blocks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a76c1aa26f2d64a3fd080ac515d80832689197e8\"\u003e\u003ccode\u003ea76c1aa\u003c/code\u003e\u003c/a\u003e Update documentation about JSON Schema\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/8cbc72ca489891e574fba45238ee8bd4f8e719a2\"\u003e\u003ccode\u003e8cbc72c\u003c/code\u003e\u003c/a\u003e Add documentation about custom \u003ccode\u003e__init__()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/99eba599069da137b3f708ffa74627f2b456ba73\"\u003e\u003ccode\u003e99eba59\u003c/code\u003e\u003c/a\u003e Add additional test for \u003ccode\u003eFieldInfo.get_default()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c71076988e507ea93844c77c3bf0bbb85a5716af\"\u003e\u003ccode\u003ec710769\u003c/code\u003e\u003c/a\u003e Special case \u003ccode\u003eMISSING\u003c/code\u003e sentinel in \u003ccode\u003esmart_deepcopy()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/20a9d771c210fd77d52366ac923258c4c199727f\"\u003e\u003ccode\u003e20a9d77\u003c/code\u003e\u003c/a\u003e Do not delete mock validator/serializer in \u003ccode\u003erebuild_dataclass()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c86515a3a8f2120148fab2eaedd3bc45925779d0\"\u003e\u003ccode\u003ec86515a\u003c/code\u003e\u003c/a\u003e Update parts of the model and \u003ccode\u003erevalidate_instances\u003c/code\u003e documentation\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.12.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.47.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003egoogle-auth 2.47.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.46.0...v2.47.0\"\u003e2.47.0\u003c/a\u003e (2026-01-06)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edrop \u003ccode\u003ecachetools\u003c/code\u003e dependency in favor of simple local implementation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1590\"\u003e#1590\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/5c07e1c4\"\u003e5c07e1c4\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1918\"\u003e#1918\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/60dc2001\"\u003e60dc2001\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003egoogle-auth 2.46.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.45.0...v2.46.0\"\u003e2.46.0\u003c/a\u003e (2026-01-05)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRecognize workload certificate config in has_default_client_cert_source for mTLS for Agentic Identities (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1907\"\u003e#1907\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0b9107d5\"\u003e0b9107d5\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix test coverage for mtls_helper (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1886\"\u003e#1886\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/02e71631\"\u003e02e71631\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003euse .read() instead of .content.read() in aiohttp transport (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1899\"\u003e#1899\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/12f4470f\"\u003e12f4470f\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eadd types to default and verify_token and Request \u003cstrong\u003einit\u003c/strong\u003e based on comments in the source code. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1588\"\u003e#1588\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/59a5f588\"\u003e59a5f588\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003efix the document of secure_authorized_session (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1536\"\u003e#1536\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/5d001470\"\u003e5d001470\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eraise RefreshError for missing token in impersonated credentials (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1897\"\u003e#1897\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/94d04e09\"\u003e94d04e09\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eremove setup.cfg configuration for creating universal wheels (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1693\"\u003e#1693\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/c767531c\"\u003ec767531c\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate urllib3 docstrings for v2 compatibility (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1903\"\u003e#1903\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3f1aeea2\"\u003e3f1aeea2\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003egoogle-auth 2.45.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.44.0...v2.45.0\"\u003e2.45.0\u003c/a\u003e (2025-12-15)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdding Agent Identity bound token support and handling certificate mismatches with retries (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1890\"\u003e#1890\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b32c934e\"\u003eb32c934e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003egoogle-auth 2.44.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.43.0...v2.44.0\"\u003e2.44.0\u003c/a\u003e (2025-12-12)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMDS connections use mTLS (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1856\"\u003e#1856\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0387bb95\"\u003e0387bb95\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.46.0...v2.47.0\"\u003e2.47.0\u003c/a\u003e (2026-01-06)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edrop \u003ccode\u003ecachetools\u003c/code\u003e dependency in favor of simple local implementation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1590\"\u003e#1590\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/5c07e1c4f52bc77a1b16fa3b7b3c5269c242f6f4\"\u003e5c07e1c4f52bc77a1b16fa3b7b3c5269c242f6f4\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1918\"\u003e#1918\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/60dc20014a35ec4ba71e8065b9a33ecbdbeca97a\"\u003e60dc20014a35ec4ba71e8065b9a33ecbdbeca97a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.45.0...v2.46.0\"\u003e2.46.0\u003c/a\u003e (2026-01-05)\u003c/h2\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate urllib3 docstrings for v2 compatibility (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1903\"\u003e#1903\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3f1aeea2d1014ea1d244a4c3470e52d74d55404b\"\u003e3f1aeea2d1014ea1d244a4c3470e52d74d55404b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRecognize workload certificate config in has_default_client_cert_source for mTLS for Agentic Identities (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1907\"\u003e#1907\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0b9107d573123e358c347ffa067637f992af61b4\"\u003e0b9107d573123e358c347ffa067637f992af61b4\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd types to default and verify_token and Request \u003cstrong\u003einit\u003c/strong\u003e based on comments in the source code. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1588\"\u003e#1588\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/59a5f588f7793b59d923a4185c8c07738da618f7\"\u003e59a5f588f7793b59d923a4185c8c07738da618f7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix the document of secure_authorized_session (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1536\"\u003e#1536\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/5d0014707fc359782df5ccfcaa75fd372fe9dce3\"\u003e5d0014707fc359782df5ccfcaa75fd372fe9dce3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremove setup.cfg configuration for creating universal wheels (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1693\"\u003e#1693\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/c767531ce05a89002d109f595187aff1fcaacfb7\"\u003ec767531ce05a89002d109f595187aff1fcaacfb7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse .read() instead of .content.read() in aiohttp transport (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1899\"\u003e#1899\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/12f4470f808809e8abf1141f98d88ab720c3899b\"\u003e12f4470f808809e8abf1141f98d88ab720c3899b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eraise RefreshError for missing token in impersonated credentials (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1897\"\u003e#1897\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/94d04e090fdfc61926dd32bc1d65f8820b9cede5\"\u003e94d04e090fdfc61926dd32bc1d65f8820b9cede5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix test coverage for mtls_helper (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1886\"\u003e#1886\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/02e71631fe275d93825c2e957e830773e75133f7\"\u003e02e71631fe275d93825c2e957e830773e75133f7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.44.0...v2.45.0\"\u003e2.45.0\u003c/a\u003e (2025-12-15)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdding Agent Identity bound token support and handling certificate mismatches with retries (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1890\"\u003e#1890\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b32c934e6b0d09b94c467cd432a0a635e8b05f5c\"\u003eb32c934e6b0d09b94c467cd432a0a635e8b05f5c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.43.0...v2.44.0\"\u003e2.44.0\u003c/a\u003e (2025-12-13)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esupport Python 3.14 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1822\"\u003e#1822\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0f7097e78f247665b6ef0287d482033f7be2ed6d\"\u003e0f7097e78f247665b6ef0287d482033f7be2ed6d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd ecdsa p-384 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1872\"\u003e#1872\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/39c381a5f6881b590025f36d333d12eff8dc60fc\"\u003e39c381a5f6881b590025f36d333d12eff8dc60fc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMDS connections use mTLS (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1856\"\u003e#1856\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0387bb95713653d47e846cad3a010eb55ef2db4c\"\u003e0387bb95713653d47e846cad3a010eb55ef2db4c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImplement token revocation in STS client and add revoke() metho… (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1849\"\u003e#1849\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/d5638986ca03ee95bfffa9ad821124ed7e903e63\"\u003ed5638986ca03ee95bfffa9ad821124ed7e903e63\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/googleapis/google-auth-library-python/commit/f32301a03372eb72a8b5542a4cc223e01ee1e33b\"\u003e\u003ccode\u003ef32301a\u003c/code\u003e\u003c/a\u003e chore: librarian release pull request: 20260106T130342Z (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1922\"\u003e#1922\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25f4ca658c1880c7a27ed817ded4c17d84c26854\"\u003e\u003ccode\u003e25f4ca6\u003c/code\u003e\u003c/a\u003e chore: remove Python 3.7 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1919\"\u003e#1919\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/60dc20014a35ec4ba71e8065b9a33ecbdbeca97a\"\u003e\u003ccode\u003e60dc200\u003c/code\u003e\u003c/a\u003e fix: Python 3.8 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1918\"\u003e#1918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/5c07e1c4f52bc77a1b16fa3b7b3c5269c242f6f4\"\u003e\u003ccode\u003e5c07e1c\u003c/code\u003e\u003c/a\u003e feat: drop \u003ccode\u003ecachetools\u003c/code\u003e dependency in favor of simple local implementation (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2cbc2a2e2e75e8797bf3709eb1e624ad39e7e7d4\"\u003e\u003ccode\u003e2cbc2a2\u003c/code\u003e\u003c/a\u003e chore: librarian release pull request: 20260105T122553Z (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1913\"\u003e#1913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/5b7b5d83adafe275351989a96328472b1845c4be\"\u003e\u003ccode\u003e5b7b5d8\u003c/code\u003e\u003c/a\u003e chore: librarian update image pull request: 20260105T112538Z (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1912\"\u003e#1912\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7dbf05a56c5c8f1c01f985af140dc8c5ea29656a\"\u003e\u003ccode\u003e7dbf05a\u003c/code\u003e\u003c/a\u003e chore: rename _refresh_token to _perform_refresh_token (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1900\"\u003e#1900\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/855a45af913a5d099e30036b80d8ba3b0c324a62\"\u003e\u003ccode\u003e855a45a\u003c/code\u003e\u003c/a\u003e chore(deps): update all dependencies (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1894\"\u003e#1894\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/77c8bc48b5638cbe8c4415fdd378853e9db6e156\"\u003e\u003ccode\u003e77c8bc4\u003c/code\u003e\u003c/a\u003e tests: make the TLS tests skip when pyopenssl isn't available (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1873\"\u003e#1873\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0b9107d573123e358c347ffa067637f992af61b4\"\u003e\u003ccode\u003e0b9107d\u003c/code\u003e\u003c/a\u003e feat: Recognize workload certificate config in has_default_client_cert_source...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.47.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.2.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.2.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport reading .env from FIFOs (Unix) by \u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CI to use trusted publishing on PyPI\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/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003estyle: upgrade to use ruff by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/567\"\u003etheskumar/python-dotenv#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse sys.exit() instead of exit() by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/568\"\u003etheskumar/python-dotenv#568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat:  add \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e flag to disable load_dotenv (fixes \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/510\"\u003e#510\u003c/a\u003e) by \u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded Python@3.14: Github CI \u0026amp; tox.ini by \u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eocs: clarify what load_dotenv() does in README by \u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group across 1 directory with 2 updates 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/theskumar/python-dotenv/pull/577\"\u003etheskumar/python-dotenv#577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove project metadata and config to pyproject.toml by \u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\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/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: ensure find_dotenv work reliably on python 3.13 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003etheskumar/python-dotenv#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cli): issue with execvpe on Windows by \u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\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/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a security policy by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/512\"\u003etheskumar/python-dotenv#512\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep GitHub Actions up to date with GitHub's Dependabot by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/506\"\u003etheskumar/python-dotenv#506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix multiline string in test.yml \u0026amp; use fail-fast strategy by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/514\"\u003etheskumar/python-dotenv#514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnhance dotenv run: Switch to execvpe for better resource management and signal handling by \u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add py3.13 to test.yml by \u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 trove classifier by \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for python 3.13 and drop 3.8 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/551\"\u003etheskumar/python-dotenv#551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update README.md by \u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSome more s/Python-dotenv/python-dotenv/ by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/552\"\u003etheskumar/python-dotenv#552\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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.2.1] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMove more config to \u003ccode\u003epyproject.toml\u003c/code\u003e, removed \u003ccode\u003esetup.cfg\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for reading \u003ccode\u003e.env\u003c/code\u003e from FIFOs (Unix) by [\u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.2.0] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade build system to use PEP 517 \u0026amp; PEP 518 to use \u003ccode\u003ebuild\u003c/code\u003e and \u003ccode\u003epyproject.toml\u003c/code\u003e by [\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/583\"\u003e#583\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14 by [\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for disabling of \u003ccode\u003eload_dotenv()\u003c/code\u003e using \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e env var. by [\u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/569\"\u003e#569\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCLI: revert the use of execvpe on Windows by [\u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003e#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.0] - 2025-03-25\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFeature\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for python 3.13\u003c/li\u003e\n\u003cli\u003eEnhance \u003ccode\u003edotenv run\u003c/code\u003e, switch to \u003ccode\u003eexecvpe\u003c/code\u003e for better resource management and signal handling (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/523\"\u003e#523\u003c/a\u003e) by [\u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efind_dotenv\u003c/code\u003e and \u003ccode\u003eload_dotenv\u003c/code\u003e now correctly looks up at the current directory when running in debugger or pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e by [\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e])\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eMisc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8\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/theskumar/python-dotenv/commit/eaf2a9129ccec6febda0f741eb3bb852c3f947bd\"\u003e\u003ccode\u003eeaf2a91\u003c/code\u003e\u003c/a\u003e Do not remove .coverage file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8716196891532eeb67d24a513e8d975437f5e8b7\"\u003e\u003ccode\u003e8716196\u003c/code\u003e\u003c/a\u003e Bump version: 1.2.0 → 1.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/b87807fcad6e74332c3c63a75c92ce5814fa7a55\"\u003e\u003ccode\u003eb87807f\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/3af77d3029eb717aeec0a3c25f751b6a614a6d3c\"\u003e\u003ccode\u003e3af77d3\u003c/code\u003e\u003c/a\u003e Support reading .env from FIFOs (Unix) (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/467ee22fccb2fb7ccda71a0d9e37c6ea3cb8d993\"\u003e\u003ccode\u003e467ee22\u003c/code\u003e\u003c/a\u003e Fix test failures after moving config to pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/76999e741d87e958ebd74e3ae9834c0514e77a59\"\u003e\u003ccode\u003e76999e7\u003c/code\u003e\u003c/a\u003e Move more config pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/222ce2cc58ebc82ba78da8781269267b9f585932\"\u003e\u003ccode\u003e222ce2c\u003c/code\u003e\u003c/a\u003e Update to use trusted publisher on pypi\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8ed4f79d202eba582b44bdf1f5deb726dd68783d\"\u003e\u003ccode\u003e8ed4f79\u003c/code\u003e\u003c/a\u003e Update docs requirements\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/5bf882241c607445bf02cf5b241535d62e2b99c1\"\u003e\u003ccode\u003e5bf8822\u003c/code\u003e\u003c/a\u003e Bump version: 1.1.1 → 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/1fe11cc737ee4399e9c51d1b69b0dd858f6b4669\"\u003e\u003ccode\u003e1fe11cc\u003c/code\u003e\u003c/a\u003e upadate changelog\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `orjson` from 3.10.16 to 3.11.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ijl/orjson/releases\"\u003eorjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.5\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eShow simple error message instead of traceback when attempting to\nbuild on unsupported Python versions.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.4\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eABI compatibility with CPython 3.15 alpha 1.\u003c/li\u003e\n\u003cli\u003ePublish PyPI wheels for 3.14 and manylinux i686, manylinux arm7,\nmanylinux ppc64le, manylinux s390x.\u003c/li\u003e\n\u003cli\u003eBuild now requires a C compiler.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared buffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17\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/ijl/orjson/blob/master/CHANGELOG.md\"\u003eorjson's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.5 - 2025-12-06\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eShow simple error message instead of traceback when attempting to\nbuild on unsupported Python versions.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.4 - 2025-10-24\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eABI compatibility with CPython 3.15 alpha 1.\u003c/li\u003e\n\u003cli\u003ePublish PyPI wheels for 3.14 and manylinux i686, manylinux arm7,\nmanylinux ppc64le, manylinux s390x.\u003c/li\u003e\n\u003cli\u003eBuild now requires a C compiler.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.3 - 2025-08-26\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1 - 2025-07-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures. This was introduced in 3.11.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 - 2025-07-15\u003c/h2\u003e\n\u003ch3\u003eChanged\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/ijl/orjson/commit/fb3eb1f729c7e7b019f780af5695722c99c7c695\"\u003e\u003ccode\u003efb3eb1f\u003c/code\u003e\u003c/a\u003e 3.11.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/52688e02c51c845cde24a46cd1011a6010d10eb8\"\u003e\u003ccode\u003e52688e0\u003c/code\u003e\u003c/a\u003e Record contributors in headers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/dc083e87d5262e7dde3ba4b1d2a377b5b065a27c\"\u003e\u003ccode\u003edc083e8\u003c/code\u003e\u003c/a\u003e Further compatibility and build misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/18f0186d47fbadd53c9db4e39a442d5b04225418\"\u003e\u003ccode\u003e18f0186\u003c/code\u003e\u003c/a\u003e Compatibility and build misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/a4fdeb3aff125d501ec0dd0577f9b38b2b977b4f\"\u003e\u003ccode\u003ea4fdeb3\u003c/code\u003e\u003c/a\u003e 3.11.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2e80d68afacafca8751e6a64ca05d0d4087dbd15\"\u003e\u003ccode\u003e2e80d68\u003c/code\u003e\u003c/a\u003e unlikely to cold_path, remove intrinsics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/27edea92f8da2fdfc3f1342474e2f1686f1edf55\"\u003e\u003ccode\u003e27edea9\u003c/code\u003e\u003c/a\u003e FFI through crate::ffi, partial non-CPython compatibility\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/416a8c9578da780d0d58b5e6b751793deafc610d\"\u003e\u003ccode\u003e416a8c9\u003c/code\u003e\u003c/a\u003e Unconditionally build yyjson\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/c8c1a17dca8436a2fee05ca060febd096e653d98\"\u003e\u003ccode\u003ec8c1a17\u003c/code\u003e\u003c/a\u003e edition 2024\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/af4179a1fa0aafffd0f867203b6c36e9a522f165\"\u003e\u003ccode\u003eaf4179a\u003c/code\u003e\u003c/a\u003e build maintenance, panic_immediate_abort break, test 3.15\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ijl/orjson/compare/3.10.16...3.11.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` from 2.2.3 to 2.3.3\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.3\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.3.\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.3.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.3 supports Python 3.9 and higher, and is the first release to support Python 3.14.\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.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\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/pandas-dev/pandas/commit/9c8bc3e55188c8aff37207a74f1dd144980b8874\"\u003e\u003ccode\u003e9c8bc3e\u003c/code\u003e\u003c/a\u003e RLS: 2.3.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/6aa788a00bda9b0f004302076dad94df3edeafc7\"\u003e\u003ccode\u003e6aa788a\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] DOC: prepare 2.3.3 whatsnew notes for release (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62499\"\u003e#62499\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62508\"\u003e#62508\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/b64f0df403d11ac733d9f460f89a5e99c8044ed0\"\u003e\u003ccode\u003eb64f0df\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: avoid validation error for ufunc with string[python] ar...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/058eb2b0edfc408dae9966ef1f03372f2a3ff04c\"\u003e\u003ccode\u003e058eb2b\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: String[pyarrow] comparison with mixed object (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62424\"\u003e#62424\u003c/a\u003e) (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/2ca088daef6a9d9333fea8aedffc7e50d28dfdee\"\u003e\u003ccode\u003e2ca088d\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] DEPR: remove the Period resampling deprecation (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62480\"\u003e#62480\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62\"\u003e#62\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/92bf98f623572ed053d48be5818c8503f1b61888\"\u003e\u003ccode\u003e92bf98f\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: fix .str.isdigit to honor unicode superscript for older...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/e57c7d6a2247316188fba0ba2a0db3c11028d75c\"\u003e\u003ccode\u003ee57c7d6\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62452\"\u003e#62452\u003c/a\u003e on branch 2.3.x (TST: Adjust tests for numexpr 2.13) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62454\"\u003e#62454\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/e0fe9a03c90e560c34a3bbbdd1735a8b64f7b281\"\u003e\u003ccode\u003ee0fe9a0\u003c/code\u003e\u003c/a\u003e Backport to 2.3.x: REGR: from_records not initializing subclasses properly (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/23a1085e641c8e3a5b500e319c5973e4160b9236\"\u003e\u003ccode\u003e23a1085\u003c/code\u003e\u003c/a\u003e BUG: improve future warning for boolean operations with missaligned indexes (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/61136969fb18b438b6660bd5d485d0236dbf4a71\"\u003e\u003ccode\u003e6113696\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62396\"\u003e#62396\u003c/a\u003e on branch 2.3.x (PKG/DOC: indicate Python 3.14 support in ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pandas-dev/pandas/compare/v2.2.3...v2.3.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geoalchemy2` from 0.17.1 to 0.18.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/releases\"\u003egeoalchemy2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix (mysql): Fix failing test for MySQL dialect by \u003ca href=\"https://github.com/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/567\"\u003egeoalchemy/geoalchemy2#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/570\"\u003egeoalchemy/geoalchemy2#570\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Allow scientific notation within WKT string by \u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/573\"\u003egeoalchemy/geoalchemy2#573\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.1 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/574\"\u003egeoalchemy/geoalchemy2#574\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/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/567\"\u003egeoalchemy/geoalchemy2#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/573\"\u003egeoalchemy/geoalchemy2#573\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.18.0...0.18.1\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.18.0...0.18.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/538\"\u003egeoalchemy/geoalchemy2#538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/540\"\u003egeoalchemy/geoalchemy2#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCompile literal binds by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/543\"\u003egeoalchemy/geoalchemy2#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/544\"\u003egeoalchemy/geoalchemy2#544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore (mariadb): Stop converting WKB to WKT by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/545\"\u003egeoalchemy/geoalchemy2#545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker containers by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/546\"\u003egeoalchemy/geoalchemy2#546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/547\"\u003egeoalchemy/geoalchemy2#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/553\"\u003egeoalchemy/geoalchemy2#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/554\"\u003egeoalchemy/geoalchemy2#554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Improve readbility of benchmark results by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/556\"\u003egeoalchemy/geoalchemy2#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/555\"\u003egeoalchemy/geoalchemy2#555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/557\"\u003egeoalchemy/geoalchemy2#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Remove warning message from MySQL/MariaDB reflection by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/560\"\u003egeoalchemy/geoalchemy2#560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/561\"\u003egeoalchemy/geoalchemy2#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: correct doc strings by \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/564\"\u003egeoalchemy/geoalchemy2#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.0 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/565\"\u003egeoalchemy/geoalchemy2#565\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/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.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/geoalchemy/geoalchemy2/blob/master/CHANGES.txt\"\u003egeoalchemy2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Allow scientific notation within WKT string - \u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/573\"\u003e#573\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix (mysql): Fix failing test for MySQL dialect - \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/567\"\u003e#567\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Fix doc strings for cache enabled - \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e(papacodebear/master) Fix: Remove warning from MySQL/MariaDB reflection \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Improve readability of benchmark results \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/547\"\u003e#547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker container \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/546\"\u003e#546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf (mariadb): Stop converting WKB to WKT \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/545\"\u003e#545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issu...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1401","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1401","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1401/packages"},{"uuid":"3768072730","node_id":"PR_kwDOHTdvBs663EKr","number":1397,"state":"open","title":"deps(ibis): bump the all group across 1 directory with 32 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-12-29T18:38:50.000Z","updated_at":"2025-12-29T18:39:07.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":32,"packages":[{"name":"fastapi","old_version":"0.120.1","new_version":"0.128.0","repository_url":"https://github.com/fastapi/fastapi"},{"name":"pydantic","old_version":"2.10.6","new_version":"2.12.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.45.0","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.2.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"orjson","old_version":"3.10.16","new_version":"3.11.5","repository_url":"https://github.com/ijl/orjson"},{"name":"geopandas","old_version":"1.1.1","new_version":"1.1.2","repository_url":"https://github.com/geopandas/geopandas"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.18.1","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"anyio","old_version":"4.10.0","new_version":"4.12.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"duckdb","old_version":"1.3.2","new_version":"1.4.3","repository_url":"https://github.com/duckdb/duckdb-python"},{"name":"oracledb","old_version":"3.3.0","new_version":"3.4.1","repository_url":"https://github.com/oracle/python-oracledb"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.40.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"uvicorn-worker","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/Kludex/uvicorn-worker"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.10","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"50.1.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"starlette","old_version":"0.49.1","new_version":"0.50.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"databricks-sql-connector","old_version":"4.1.4","new_version":"4.2.3","repository_url":"https://github.com/databricks/databricks-sql-python"},{"name":"databricks-sdk","old_version":"0.73.0","new_version":"0.76.0","repository_url":"https://github.com/databricks/databricks-sdk-py"},{"name":"jupyterlab","old_version":"4.4.9","new_version":"4.5.1","repository_url":"https://github.com/jupyterlab/jupyterlab"},{"name":"ipykernel","old_version":"6.30.1","new_version":"7.1.0","repository_url":"https://github.com/ipython/ipykernel"},{"name":"ipywidgets","old_version":"8.1.7","new_version":"8.1.8","repository_url":"https://github.com/jupyter-widgets/ipywidgets"},{"name":"matplotlib","old_version":"3.10.6","new_version":"3.10.8","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"plotly","old_version":"6.3.0","new_version":"6.5.0","repository_url":"https://github.com/plotly/plotly.py"},{"name":"pytest","old_version":"8.3.5","new_version":"9.0.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.13.3","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.45","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.5.1","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.14.10","repository_url":"https://github.com/astral-sh/ruff"},{"name":"trino","old_version":"0.335.0","new_version":"0.336.0","repository_url":"https://github.com/trinodb/trino-python-client"},{"name":"psycopg2","old_version":"2.9.10","new_version":"2.9.11","repository_url":"https://github.com/psycopg/psycopg2"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.10.0","repository_url":"https://github.com/ClickHouse/clickhouse-connect"},{"name":"polars","old_version":"1.33.1","new_version":"1.36.1","repository_url":"https://github.com/pola-rs/polars"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 32 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.120.1` | `0.128.0` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.12.5` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.45.0` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.2.1` |\n| [orjson](https://github.com/ijl/orjson) | `3.10.16` | `3.11.5` |\n| [geopandas](https://github.com/geopandas/geopandas) | `1.1.1` | `1.1.2` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.18.1` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.10.0` | `4.12.0` |\n| [duckdb](https://github.com/duckdb/duckdb-python) | `1.3.2` | `1.4.3` |\n| [oracledb](https://github.com/oracle/python-oracledb) | `3.3.0` | `3.4.1` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.40.0` |\n| [uvicorn-worker](https://github.com/Kludex/uvicorn-worker) | `0.3.0` | `0.4.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.10` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `50.1.0` |\n| [starlette](https://github.com/Kludex/starlette) | `0.49.1` | `0.50.0` |\n| [databricks-sql-connector](https://github.com/databricks/databricks-sql-python) | `4.1.4` | `4.2.3` |\n| [databricks-sdk](https://github.com/databricks/databricks-sdk-py) | `0.73.0` | `0.76.0` |\n| [jupyterlab](https://github.com/jupyterlab/jupyterlab) | `4.4.9` | `4.5.1` |\n| [ipykernel](https://github.com/ipython/ipykernel) | `6.30.1` | `7.1.0` |\n| [ipywidgets](https://github.com/jupyter-widgets/ipywidgets) | `8.1.7` | `8.1.8` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.10.6` | `3.10.8` |\n| [plotly](https://github.com/plotly/plotly.py) | `6.3.0` | `6.5.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `9.0.2` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.13.3` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.45` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.5.1` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.14.10` |\n| [trino](https://github.com/trinodb/trino-python-client) | `0.335.0` | `0.336.0` |\n| [psycopg2](https://github.com/psycopg/psycopg2) | `2.9.10` | `2.9.11` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.10.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.33.1` | `1.36.1` |\n\n\nUpdates `fastapi` from 0.120.1 to 0.128.0\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's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.128.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e➖ Drop support for \u003ccode\u003epydantic.v1\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14609\"\u003e#14609\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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✅ Run performance tests only on Pydantic v2. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14608\"\u003e#14608\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.127.1\u003c/h2\u003e\n\u003ch3\u003eRefactors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🔊 Add a custom \u003ccode\u003eFastAPIDeprecationWarning\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14605\"\u003e#14605\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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📝 Add documentary to website. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14600\"\u003e#14600\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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🌐 Update translations for de (update-outdated). PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14602\"\u003e#14602\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Update translations for de (update-outdated). PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14581\"\u003e#14581\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\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🔧 Update pre-commit to use local Ruff instead of hook. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14604\"\u003e#14604\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Add missing tests for code examples. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14569\"\u003e#14569\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👷 Remove \u003ccode\u003elint\u003c/code\u003e job from \u003ccode\u003etest\u003c/code\u003e CI workflow. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14593\"\u003e#14593\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👷 Update secrets check. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14592\"\u003e#14592\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👷 Run CodSpeed tests in parallel to other tests to speed up CI. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14586\"\u003e#14586\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔨 Update scripts and pre-commit to autofix files. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14585\"\u003e#14585\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.127.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🔊 Add deprecation warnings when using \u003ccode\u003epydantic.v1\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14583\"\u003e#14583\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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 LLM prompt file for Korean, generated from the existing translations. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14546\"\u003e#14546\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔧 Add LLM prompt file for Japanese, generated from the existing translations. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14545\"\u003e#14545\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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⬆️ Upgrade OpenAI model for translations to gpt-5.2. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14579\"\u003e#14579\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.126.0\u003c/h2\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e➖ Drop support for Pydantic v1, keeping short temporary support for Pydantic v2's \u003ccode\u003epydantic.v1\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14575\"\u003e#14575\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8322a4445a3b25acd9b26b61192571b2d92f9bcd\"\u003e\u003ccode\u003e8322a44\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.128.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/4b2cfcfd34d0b2e158a05b377426e0c8376b94de\"\u003e\u003ccode\u003e4b2cfcf\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/e3006305518a56ea35f62a31748ad26fe4356fcc\"\u003e\u003ccode\u003ee300630\u003c/code\u003e\u003c/a\u003e ➖ Drop support for \u003ccode\u003epydantic.v1\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14609\"\u003e#14609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/1b3bea8b6be2220cc1544653ea785d2134fcb35b\"\u003e\u003ccode\u003e1b3bea8\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/34e884156f38dff4094a7764ff895c4d4b872060\"\u003e\u003ccode\u003e34e8841\u003c/code\u003e\u003c/a\u003e ✅ Run performance tests only on Pydantic v2 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14608\"\u003e#14608\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/cd90c78391f86f3fd06d5b327bffad9666b05b44\"\u003e\u003ccode\u003ecd90c78\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.127.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/93f4dfd88b7d62bda89eb521ebd9322e357e6fff\"\u003e\u003ccode\u003e93f4dfd\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/535b5daa317a9d1d1f9a1058e57650a7beefa861\"\u003e\u003ccode\u003e535b5da\u003c/code\u003e\u003c/a\u003e 🔊 Add a custom \u003ccode\u003eFastAPIDeprecationWarning\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14605\"\u003e#14605\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/6b53786f626db95a42fd0f66afd360bab161f4b1\"\u003e\u003ccode\u003e6b53786\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d98f4eb56eae3155034fe631d9639d95171fb9ab\"\u003e\u003ccode\u003ed98f4eb\u003c/code\u003e\u003c/a\u003e 🔧 Update pre-commit to use local Ruff instead of hook (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14604\"\u003e#14604\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.120.1...0.128.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.10.6 to 2.12.5\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.5 2025-11-26\u003c/h2\u003e\n\u003ch2\u003ev2.12.5 (2025-11-26)\u003c/h2\u003e\n\u003cp\u003eThis is the fifth 2.12 patch release, addressing an issue with the \u003ccode\u003eMISSING\u003c/code\u003e sentinel and providing several documentation improvements.\u003c/p\u003e\n\u003cp\u003eThe next 2.13 minor release will be published in a couple weeks, and will include a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature addressing\nthe remaining unexpected changes to the \u003cem\u003eserialize as any\u003c/em\u003e behavior.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix pickle error when using \u003ccode\u003emodel_construct()\u003c/code\u003e on a model with \u003ccode\u003eMISSING\u003c/code\u003e as a default value by \u003ca href=\"https://github.com/ornariece\"\u003e\u003ccode\u003e@​ornariece\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12522\"\u003e#12522\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eSeveral updates to the documentation by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\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.12.4...v2.12.5\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.4...v2.12.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.4 2025-11-05\u003c/h2\u003e\n\u003ch2\u003ev2.12.4 (2025-11-05)\u003c/h2\u003e\n\u003cp\u003eThis is the fourth 2.12 patch release, fixing more regressions, and reverting a change in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis patch release also fixes an issue with the serialization of IP address types, when \u003ccode\u003eserialize_as_any\u003c/code\u003e is used. The next patch release\nwill try to address the remaining issues with \u003cem\u003eserialize as any\u003c/em\u003e behavior by introducing a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature, that\nshould be used in most cases in place of \u003cem\u003eserialize as any\u003c/em\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with forward references in parent \u003ccode\u003eTypedDict\u003c/code\u003e classes 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/12427\"\u003e#12427\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis issue is only relevant on Python 3.14 and greater.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExclude fields with \u003ccode\u003eexclude_if\u003c/code\u003e from JSON Schema required fields 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/12430\"\u003e#12430\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRevert URL percent-encoding of credentials in the \u003ccode\u003ebuild()\u003c/code\u003e method of the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1833\"\u003epydantic-core#1833\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis was initially considered as a bugfix, but caused regressions and as such was fully reverted. The next release will include\nan opt-in option to percent-encode components of the URL.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd type inference for IP address types by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1868\"\u003epydantic-core#1868\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe 2.12 changes to the \u003ccode\u003eserialize_as_any\u003c/code\u003e behavior made it so that IP address types could not properly serialize to JSON.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid getting default values from defaultdict by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1853\"\u003epydantic-core#1853\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis fixes a subtle regression in the validation behavior of the \u003ca href=\"https://docs.python.org/3/library/collections.html#collections.defaultdict\"\u003e\u003ccode\u003ecollections.defaultdict\u003c/code\u003e\u003c/a\u003e\ntype.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with field serializers on nested typed dictionaries by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1879\"\u003epydantic-core#1879\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd more \u003ccode\u003epydantic-core\u003c/code\u003e builds for the three-threaded version of Python 3.14 by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1864\"\u003epydantic-core#1864\u003c/a\u003e.\u003c/p\u003e\n\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.12.3...v2.12.4\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.3...v2.12.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.3 2025-10-17\u003c/h2\u003e\n\u003ch2\u003ev2.12.3 (2025-10-17)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eThis is the third 2.13 patch release, fixing issues related to the \u003ccode\u003eFieldInfo\u003c/code\u003e class, and reverting a change to the supported \u003ca href=\"https://docs.pydantic.dev/latest/concepts/validators/#model-validators\"\u003e\u003cem\u003eafter\u003c/em\u003e model validator\u003c/a\u003e function signatures.\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\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.5 (2025-11-26)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis is the fifth 2.12 patch release, addressing an issue with the \u003ccode\u003eMISSING\u003c/code\u003e sentinel and providing several documentation improvements.\u003c/p\u003e\n\u003cp\u003eThe next 2.13 minor release will be published in a couple weeks, and will include a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature addressing\nthe remaining unexpected changes to the \u003cem\u003eserialize as any\u003c/em\u003e behavior.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix pickle error when using \u003ccode\u003emodel_construct()\u003c/code\u003e on a model with \u003ccode\u003eMISSING\u003c/code\u003e as a default value by \u003ca href=\"https://github.com/ornariece\"\u003e\u003ccode\u003e@​ornariece\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12522\"\u003e#12522\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eSeveral updates to the documentation by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.12.4 (2025-11-05)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.4\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis is the fourth 2.12 patch release, fixing more regressions, and reverting a change in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis patch release also fixes an issue with the serialization of IP address types, when \u003ccode\u003eserialize_as_any\u003c/code\u003e is used. The next patch release\nwill try to address the remaining issues with \u003cem\u003eserialize as any\u003c/em\u003e behavior by introducing a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature, that\nshould be used in most cases in place of \u003cem\u003eserialize as any\u003c/em\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with forward references in parent \u003ccode\u003eTypedDict\u003c/code\u003e classes 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/12427\"\u003e#12427\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis issue is only relevant on Python 3.14 and greater.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExclude fields with \u003ccode\u003eexclude_if\u003c/code\u003e from JSON Schema required fields 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/12430\"\u003e#12430\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRevert URL percent-encoding of credentials in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in\n\u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1833\"\u003epydantic-core#1833\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis was initially considered as a bugfix, but caused regressions and as such was fully reverted. The next release will include\nan opt-in option to percent-encode components of the URL.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd type inference for IP address types by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1868\"\u003epydantic-core#1868\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe 2.12 changes to the \u003ccode\u003eserialize_as_any\u003c/code\u003e behavior made it so that IP address types could not properly serialize to JSON.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid getting default values from defaultdict by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1853\"\u003epydantic-core#1853\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis fixes a subtle regression in the validation behavior of the \u003ca href=\"https://docs.python.org/3/library/collections.html#collections.defaultdict\"\u003e\u003ccode\u003ecollections.defaultdict\u003c/code\u003e\u003c/a\u003e\ntype.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with field serializers on nested typed dictionaries by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1879\"\u003epydantic-core#1879\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd more \u003ccode\u003epydantic-core\u003c/code\u003e builds for the three-threaded version of Python 3.14 by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1864\"\u003epydantic-core#1864\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.12.3 (2025-10-17)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.3\"\u003eGitHub release\u003c/a\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/pydantic/pydantic/commit/bd2d0dd0137dfa1a8fdff2529b9dfb1547980150\"\u003e\u003ccode\u003ebd2d0dd\u003c/code\u003e\u003c/a\u003e Prepare release v2.12.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/7d0302ec7ec2cf115de3450a615522875bdd8b56\"\u003e\u003ccode\u003e7d0302e\u003c/code\u003e\u003c/a\u003e Document security implications when using \u003ccode\u003ecreate_model()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/e9ef980def726b6f59b6c495ddc9dc259a0228db\"\u003e\u003ccode\u003ee9ef980\u003c/code\u003e\u003c/a\u003e Fix typo in Standard Library Types documentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/f2c20c00c265a31a13c48f9bae923a87c829952e\"\u003e\u003ccode\u003ef2c20c0\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003epydantic-docs\u003c/code\u003e dev dependency, make use of versioning blocks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a76c1aa26f2d64a3fd080ac515d80832689197e8\"\u003e\u003ccode\u003ea76c1aa\u003c/code\u003e\u003c/a\u003e Update documentation about JSON Schema\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/8cbc72ca489891e574fba45238ee8bd4f8e719a2\"\u003e\u003ccode\u003e8cbc72c\u003c/code\u003e\u003c/a\u003e Add documentation about custom \u003ccode\u003e__init__()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/99eba599069da137b3f708ffa74627f2b456ba73\"\u003e\u003ccode\u003e99eba59\u003c/code\u003e\u003c/a\u003e Add additional test for \u003ccode\u003eFieldInfo.get_default()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c71076988e507ea93844c77c3bf0bbb85a5716af\"\u003e\u003ccode\u003ec710769\u003c/code\u003e\u003c/a\u003e Special case \u003ccode\u003eMISSING\u003c/code\u003e sentinel in \u003ccode\u003esmart_deepcopy()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/20a9d771c210fd77d52366ac923258c4c199727f\"\u003e\u003ccode\u003e20a9d77\u003c/code\u003e\u003c/a\u003e Do not delete mock validator/serializer in \u003ccode\u003erebuild_dataclass()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c86515a3a8f2120148fab2eaedd3bc45925779d0\"\u003e\u003ccode\u003ec86515a\u003c/code\u003e\u003c/a\u003e Update parts of the model and \u003ccode\u003erevalidate_instances\u003c/code\u003e documentation\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.12.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.45.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003egoogle-auth 2.45.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.44.0...v2.45.0\"\u003e2.45.0\u003c/a\u003e (2025-12-15)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdding Agent Identity bound token support and handling certificate mismatches with retries (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1890\"\u003e#1890\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b32c934e\"\u003eb32c934e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003egoogle-auth 2.44.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.43.0...v2.44.0\"\u003e2.44.0\u003c/a\u003e (2025-12-12)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eMDS connections use mTLS (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1856\"\u003e#1856\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0387bb95\"\u003e0387bb95\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003esupport Python 3.14 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1822\"\u003e#1822\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0f7097e7\"\u003e0f7097e7\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eadd ecdsa p-384 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1872\"\u003e#1872\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/39c381a5\"\u003e39c381a5\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd shlex to correctly parse executable commands with spaces (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1855\"\u003e#1855\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/cf6fc3cc\"\u003ecf6fc3cc\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eImplement token revocation in STS client and add revoke() metho… (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1849\"\u003e#1849\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/d5638986\"\u003ed5638986\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd temporary patch to workload cert logic to accomodate Cloud Run mis-configuration (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1880\"\u003e#1880\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/78de7907\"\u003e78de7907\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDelegate workload cert and key default lookup to helper function (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1877\"\u003e#1877\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b0993c7e\"\u003eb0993c7e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUse public refresh method for source credentials in ImpersonatedCredentials (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1884\"\u003e#1884\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e0c3296f\"\u003ee0c3296f\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003egoogle-auth 2.43.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.42.1...v2.43.0\"\u003e2.43.0\u003c/a\u003e (2025-11-05)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd public wrapper for _mtls_helper.check_use_client_cert which enables mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE is not set, when the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1859\"\u003e#1859\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/1535eccb\"\u003e1535eccb\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eEnable mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE  is not set, if the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1848\"\u003e#1848\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/395e405b\"\u003e395e405b\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eonboard \u003ccode\u003egoogle-auth\u003c/code\u003e to librarian (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1838\"\u003e#1838\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/c503eaa5\"\u003ec503eaa5\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.42.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.42.0...v2.42.1\"\u003e2.42.1\u003c/a\u003e (2025-10-30)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCatch ValueError for json.loads() (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1842\"\u003e#1842\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b074cad460589633adfc6744c01726ae86f2aa2b\"\u003eb074cad\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.42.0\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.44.0...v2.45.0\"\u003e2.45.0\u003c/a\u003e (2025-12-15)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdding Agent Identity bound token support and handling certificate mismatches with retries (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1890\"\u003e#1890\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b32c934e6b0d09b94c467cd432a0a635e8b05f5c\"\u003eb32c934e6b0d09b94c467cd432a0a635e8b05f5c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.43.0...v2.44.0\"\u003e2.44.0\u003c/a\u003e (2025-12-13)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esupport Python 3.14 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1822\"\u003e#1822\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0f7097e78f247665b6ef0287d482033f7be2ed6d\"\u003e0f7097e78f247665b6ef0287d482033f7be2ed6d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd ecdsa p-384 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1872\"\u003e#1872\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/39c381a5f6881b590025f36d333d12eff8dc60fc\"\u003e39c381a5f6881b590025f36d333d12eff8dc60fc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMDS connections use mTLS (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1856\"\u003e#1856\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0387bb95713653d47e846cad3a010eb55ef2db4c\"\u003e0387bb95713653d47e846cad3a010eb55ef2db4c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImplement token revocation in STS client and add revoke() metho… (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1849\"\u003e#1849\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/d5638986ca03ee95bfffa9ad821124ed7e903e63\"\u003ed5638986ca03ee95bfffa9ad821124ed7e903e63\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd shlex to correctly parse executable commands with spaces (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1855\"\u003e#1855\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/cf6fc3cced78bc1362a7fe596c32ebc9ce03c26b\"\u003ecf6fc3cced78bc1362a7fe596c32ebc9ce03c26b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse public refresh method for source credentials in ImpersonatedCredentials (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1884\"\u003e#1884\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e0c3296f471747258f6d98d2d9bfde636358ecde\"\u003ee0c3296f471747258f6d98d2d9bfde636358ecde\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd temporary patch to workload cert logic to accomodate Cloud Run mis-configuration (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1880\"\u003e#1880\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/78de7907b8bdb7b5510e3c6fa8a3f3721e2436d7\"\u003e78de7907b8bdb7b5510e3c6fa8a3f3721e2436d7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDelegate workload cert and key default lookup to helper function (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1877\"\u003e#1877\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b0993c7edaba505d0fb0628af28760c43034c959\"\u003eb0993c7edaba505d0fb0628af28760c43034c959\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-python/compare/google-auth-v2.42.1...google-auth-v2.43.0\"\u003e2.43.0\u003c/a\u003e (2025-11-05)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd public wrapper for _mtls_helper.check_use_client_cert which enables mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE is not set, when the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1859\"\u003e#1859\u003c/a\u003e) Add public wrapper for check_use_client_cert which enables mTLS if\nGOOGLE_API_USE_CLIENT_CERTIFICATE is not set, when the MWID/X.509 cert\nsources detected. Also, fix check_use_client_cert to return boolean\nvalue.\nChange \u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1848\"\u003e#1848\u003c/a\u003e added the check_use_client_cert method that helps know if\nclient cert should be used for mTLS connection. However, that was in a\nprivate class, thus, created a public wrapper of the same function so\nthat it can be used by python Client Libraries. Also, updated\ncheck_use_client_cert to return a boolean value instead of existing\nstring value for better readability and future scope.\n--------- (\u003ca href=\"https://github.com/googleapis/google-cloud-python/commit/1535eccbff0ad8f3fd6a9775316ac8b77dca66ba\"\u003e1535eccbff0ad8f3fd6a9775316ac8b77dca66ba\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnable mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE  is not set, if the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1848\"\u003e#1848\u003c/a\u003e) The Python SDK will use a hybrid approach for mTLS enablement:\u003c/li\u003e\n\u003c/ul\u003e\n\u003cul\u003e\n\u003cli\u003eIf the GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is set\n(either true or false), the SDK will respect that setting. This is\nnecessary for test scenarios and users who need to explicitly control\nmTLS behavior.\u003c/li\u003e\n\u003cli\u003eIf the GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is not\nset, the SDK will automatically enable mTLS only if it detects Managed\nWorkload Identity (MWID) or X.509 Workforce Identity Federation (WIF)\ncertificate sources. In other cases where the variable is not set, mTLS\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/googleapis/google-auth-library-python/commit/08fabf776c02dc6a70472b3ddd9733d66d0053bf\"\u003e\u003ccode\u003e08fabf7\u003c/code\u003e\u003c/a\u003e chore: librarian release pull request: 20251215T132028Z (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1891\"\u003e#1891\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b32c934e6b0d09b94c467cd432a0a635e8b05f5c\"\u003e\u003ccode\u003eb32c934\u003c/code\u003e\u003c/a\u003e feat: Adding Agent Identity bound token support and handling certificate mism...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/262eb9e33d58ffeb536ecd083c22d9fb12c808e6\"\u003e\u003ccode\u003e262eb9e\u003c/code\u003e\u003c/a\u003e chore: librarian release pull request: 20251212T161150Z (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1888\"\u003e#1888\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0f7097e78f247665b6ef0287d482033f7be2ed6d\"\u003e\u003ccode\u003e0f7097e\u003c/code\u003e\u003c/a\u003e feat: support Python 3.14 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1822\"\u003e#1822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e0c3296f471747258f6d98d2d9bfde636358ecde\"\u003e\u003ccode\u003ee0c3296\u003c/code\u003e\u003c/a\u003e fix(auth): Use public refresh method for source credentials in ImpersonatedCr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/78de7907b8bdb7b5510e3c6fa8a3f3721e2436d7\"\u003e\u003ccode\u003e78de790\u003c/code\u003e\u003c/a\u003e fix(auth): Add temporary patch to workload cert logic to accomodate Cloud Run...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3e8a56687fd050ff44a35cc8db0e95e996648173\"\u003e\u003ccode\u003e3e8a566\u003c/code\u003e\u003c/a\u003e chore(tests): allow expired secret in system tests (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1883\"\u003e#1883\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b0993c7edaba505d0fb0628af28760c43034c959\"\u003e\u003ccode\u003eb0993c7\u003c/code\u003e\u003c/a\u003e fix(auth): Delegate workload cert and key default lookup to helper function (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2c374d36a61569b75d11c17fae124d591c52ddc6\"\u003e\u003ccode\u003e2c374d3\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1879\"\u003e#1879\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/39c381a5f6881b590025f36d333d12eff8dc60fc\"\u003e\u003ccode\u003e39c381a\u003c/code\u003e\u003c/a\u003e feat: add ecdsa p-384 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1872\"\u003e#1872\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.45.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.2.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.2.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport reading .env from FIFOs (Unix) by \u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CI to use trusted publishing on PyPI\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/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003estyle: upgrade to use ruff by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/567\"\u003etheskumar/python-dotenv#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse sys.exit() instead of exit() by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/568\"\u003etheskumar/python-dotenv#568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat:  add \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e flag to disable load_dotenv (fixes \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/510\"\u003e#510\u003c/a\u003e) by \u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded Python@3.14: Github CI \u0026amp; tox.ini by \u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eocs: clarify what load_dotenv() does in README by \u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group across 1 directory with 2 updates 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/theskumar/python-dotenv/pull/577\"\u003etheskumar/python-dotenv#577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove project metadata and config to pyproject.toml by \u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\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/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: ensure find_dotenv work reliably on python 3.13 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003etheskumar/python-dotenv#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cli): issue with execvpe on Windows by \u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\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/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a security policy by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/512\"\u003etheskumar/python-dotenv#512\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep GitHub Actions up to date with GitHub's Dependabot by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/506\"\u003etheskumar/python-dotenv#506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix multiline string in test.yml \u0026amp; use fail-fast strategy by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/514\"\u003etheskumar/python-dotenv#514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnhance dotenv run: Switch to execvpe for better resource management and signal handling by \u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add py3.13 to test.yml by \u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 trove classifier by \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for python 3.13 and drop 3.8 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/551\"\u003etheskumar/python-dotenv#551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update README.md by \u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSome more s/Python-dotenv/python-dotenv/ by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/552\"\u003etheskumar/python-dotenv#552\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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.2.1] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMove more config to \u003ccode\u003epyproject.toml\u003c/code\u003e, removed \u003ccode\u003esetup.cfg\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for reading \u003ccode\u003e.env\u003c/code\u003e from FIFOs (Unix) by [\u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.2.0] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade build system to use PEP 517 \u0026amp; PEP 518 to use \u003ccode\u003ebuild\u003c/code\u003e and \u003ccode\u003epyproject.toml\u003c/code\u003e by [\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/583\"\u003e#583\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14 by [\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for disabling of \u003ccode\u003eload_dotenv()\u003c/code\u003e using \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e env var. by [\u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/569\"\u003e#569\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCLI: revert the use of execvpe on Windows by [\u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003e#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.0] - 2025-03-25\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFeature\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for python 3.13\u003c/li\u003e\n\u003cli\u003eEnhance \u003ccode\u003edotenv run\u003c/code\u003e, switch to \u003ccode\u003eexecvpe\u003c/code\u003e for better resource management and signal handling (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/523\"\u003e#523\u003c/a\u003e) by [\u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efind_dotenv\u003c/code\u003e and \u003ccode\u003eload_dotenv\u003c/code\u003e now correctly looks up at the current directory when running in debugger or pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e by [\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e])\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eMisc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8\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/theskumar/python-dotenv/commit/eaf2a9129ccec6febda0f741eb3bb852c3f947bd\"\u003e\u003ccode\u003eeaf2a91\u003c/code\u003e\u003c/a\u003e Do not remove .coverage file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8716196891532eeb67d24a513e8d975437f5e8b7\"\u003e\u003ccode\u003e8716196\u003c/code\u003e\u003c/a\u003e Bump version: 1.2.0 → 1.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/b87807fcad6e74332c3c63a75c92ce5814fa7a55\"\u003e\u003ccode\u003eb87807f\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/3af77d3029eb717aeec0a3c25f751b6a614a6d3c\"\u003e\u003ccode\u003e3af77d3\u003c/code\u003e\u003c/a\u003e Support reading .env from FIFOs (Unix) (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/467ee22fccb2fb7ccda71a0d9e37c6ea3cb8d993\"\u003e\u003ccode\u003e467ee22\u003c/code\u003e\u003c/a\u003e Fix test failures after moving config to pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/76999e741d87e958ebd74e3ae9834c0514e77a59\"\u003e\u003ccode\u003e76999e7\u003c/code\u003e\u003c/a\u003e Move more config pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/222ce2cc58ebc82ba78da8781269267b9f585932\"\u003e\u003ccode\u003e222ce2c\u003c/code\u003e\u003c/a\u003e Update to use trusted publisher on pypi\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8ed4f79d202eba582b44bdf1f5deb726dd68783d\"\u003e\u003ccode\u003e8ed4f79\u003c/code\u003e\u003c/a\u003e Update docs requirements\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/5bf882241c607445bf02cf5b241535d62e2b99c1\"\u003e\u003ccode\u003e5bf8822\u003c/code\u003e\u003c/a\u003e Bump version: 1.1.1 → 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/1fe11cc737ee4399e9c51d1b69b0dd858f6b4669\"\u003e\u003ccode\u003e1fe11cc\u003c/code\u003e\u003c/a\u003e upadate changelog\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `orjson` from 3.10.16 to 3.11.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ijl/orjson/releases\"\u003eorjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.5\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eShow simple error message instead of traceback when attempting to\nbuild on unsupported Python versions.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.4\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eABI compatibility with CPython 3.15 alpha 1.\u003c/li\u003e\n\u003cli\u003ePublish PyPI wheels for 3.14 and manylinux i686, manylinux arm7,\nmanylinux ppc64le, manylinux s390x.\u003c/li\u003e\n\u003cli\u003eBuild now requires a C compiler.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared buffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17\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/ijl/orjson/blob/master/CHANGELOG.md\"\u003eorjson's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.5 - 2025-12-06\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eShow simple error message instead of traceback when attempting to\nbuild on unsupported Python versions.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.4 - 2025-10-24\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eABI compatibility with CPython 3.15 alpha 1.\u003c/li\u003e\n\u003cli\u003ePublish PyPI wheels for 3.14 and manylinux i686, manylinux arm7,\nmanylinux ppc64le, manylinux s390x.\u003c/li\u003e\n\u003cli\u003eBuild now requires a C compiler.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.3 - 2025-08-26\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1 - 2025-07-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures. This was introduced in 3.11.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 - 2025-07-15\u003c/h2\u003e\n\u003ch3\u003eChanged\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/ijl/orjson/commit/fb3eb1f729c7e7b019f780af5695722c99c7c695\"\u003e\u003ccode\u003efb3eb1f\u003c/code\u003e\u003c/a\u003e 3.11.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/52688e02c51c845cde24a46cd1011a6010d10eb8\"\u003e\u003ccode\u003e52688e0\u003c/code\u003e\u003c/a\u003e Record contributors in headers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/dc083e87d5262e7dde3ba4b1d2a377b5b065a27c\"\u003e\u003ccode\u003edc083e8\u003c/code\u003e\u003c/a\u003e Further compatibility and build misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/18f0186d47fbadd53c9db4e39a442d5b04225418\"\u003e\u003ccode\u003e18f0186\u003c/code\u003e\u003c/a\u003e Compatibility and build misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/a4fdeb3aff125d501ec0dd0577f9b38b2b977b4f\"\u003e\u003ccode\u003ea4fdeb3\u003c/code\u003e\u003c/a\u003e 3.11.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2e80d68afacafca8751e6a64ca05d0d4087dbd15\"\u003e\u003ccode\u003e2e80d68\u003c/code\u003e\u003c/a\u003e unlikely to cold_path, remove intrinsics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/27edea92f8da2fdfc3f1342474e2f1686f1edf55\"\u003e\u003ccode\u003e27edea9\u003c/code\u003e\u003c/a\u003e FFI through crate::ffi, partial non-CPython compatibility\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/416a8c9578da780d0d58b5e6b751793deafc610d\"\u003e\u003ccode\u003e416a8c9\u003c/code\u003e\u003c/a\u003e Unconditionally build yyjson\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/c8c1a17dca8436a2fee05ca060febd096e653d98\"\u003e\u003ccode\u003ec8c1a17\u003c/code\u003e\u003c/a\u003e edition 2024\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/af4179a1fa0aafffd0f867203b6c36e9a522f165\"\u003e\u003ccode\u003eaf4179a\u003c/code\u003e\u003c/a\u003e build maintenance, panic_immediate_abort break, test 3.15\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ijl/orjson/compare/3.10.16...3.11.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geopandas` from 1.1.1 to 1.1.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geopandas/geopandas/releases\"\u003egeopandas's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.1.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix an issue that caused an error in \u003ccode\u003eGeoDataFrame.from_features\u003c/code\u003e when there is no \u003ccode\u003eproperties\u003c/code\u003e field (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3599\"\u003e#3599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eread_file\u003c/code\u003e and \u003ccode\u003eto_file\u003c/code\u003e errors (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3682\"\u003e#3682\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eread_parquet\u003c/code\u003e with \u003ccode\u003eto_pandas_kwargs\u003c/code\u003e for complex (list/struct) arrow types (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3640\"\u003e#3640\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evalue_counts\u003c/code\u003e on GeoSeries now preserves CRS in index (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3669\"\u003e#3669\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix f-string placeholders appearing in error messages when \u003ccode\u003epyogrio\u003c/code\u003e cannot be imported (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3682\"\u003e#3682\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eread_parquet\u003c/code\u003e with \u003ccode\u003eto_pandas_kwargs\u003c/code\u003e for complex (list/struct) arrow types (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3640\"\u003e#3640\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e.to_json\u003c/code\u003e now provides a clearer error message when called on a GeoDataFrame without an active geometry\ncolumn (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3648\"\u003e#3648\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eCalling \u003ccode\u003edel gdf[\u0026quot;geometry\u0026quot;]\u003c/code\u003e now will downcast to a \u003ccode\u003epd.DataFrame\u003c/code\u003e if there are no geometry columns left\nin the dataframe (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3648\"\u003e#3648\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix SQL injection in \u003ccode\u003eto_postgis\u003c/code\u003e via geometry column name (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3681\"\u003e#3681\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geopandas/geopandas/compare/v1.1.1...v1.1.2\"\u003ehttps://github.com/geopandas/geopandas/compare/v1.1.1...v1.1.2\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/geopandas/geopandas/blob/main/CHANGELOG.md\"\u003egeopandas's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.1.2 (December 22, 2025)\u003c/h2\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix an issue that caused an error in \u003ccode\u003eGeoDataFrame.from_features\u003c/code\u003e when there is no \u003ccode\u003eproperties\u003c/code\u003e field (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3599\"\u003e#3599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eread_file\u003c/code\u003e and \u003ccode\u003eto_file\u003c/code\u003e errors (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3682\"\u003e#3682\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eread_parquet\u003c/code\u003e with \u003ccode\u003eto_pandas_kwargs\u003c/code\u003e for complex (list/struct) arrow types (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3640\"\u003e#3640\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evalue_counts\u003c/code\u003e on GeoSeries now preserves CRS in index (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3669\"\u003e#3669\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix f-string placeholders appearing in error messages when \u003ccode\u003epyogrio\u003c/code\u003e cannot be imported (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3682\"\u003e#3682\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eread_parquet\u003c/code\u003e with \u003ccode\u003eto_pandas_kwargs\u003c/code\u003e for complex (list/struct) arrow types (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3640\"\u003e#3640\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e.to_json\u003c/code\u003e now provides a clearer error message when called on a GeoDataFrame without an active geometry\ncolumn (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3648\"\u003e#3648\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eCalling \u003ccode\u003edel gdf[\u0026quot;geometry\u0026quot;]\u003c/code\u003e now will downcast to a \u003ccode\u003epd.DataFrame\u003c/code\u003e if there are no geometry columns left\nin the dataframe (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3648\"\u003e#3648\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix SQL injection in \u003ccode\u003eto_postgis\u003c/code\u003e via geometry column name (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3681\"\u003e#3681\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/geopandas/geopandas/commit/81214bf9f3eaba9f5fdcfd141ae8d16fa17fd860\"\u003e\u003ccode\u003e81214bf\u003c/code\u003e\u003c/a\u003e RLS: backport fixes for 1.1.2 (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3693\"\u003e#3693\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/62dd4a2469bb6236b83fb91466a8183321da04da\"\u003e\u003ccode\u003e62dd4a2\u003c/code\u003e\u003c/a\u003e COMPAT: pandas 3 refactor breaks \u003cstrong\u003efinalize\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3611\"\u003e#3611\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3621\"\u003e#3621\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/geopandas/geopandas/compare/v1.1.1...v1.1.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geoalchemy2` from 0.17.1 to 0.18.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/releases\"\u003egeoalchemy2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix (mysql): Fix failing test for MySQL dialect by \u003ca href=\"https://github.com/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/567\"\u003egeoalchemy/geoalchemy2#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/570\"\u003egeoalchemy/geoalchemy2#570\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Allow scientific notation within WKT string by \u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/573\"\u003egeoalchemy/geoalchemy2#573\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.1 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/574\"\u003egeoalchemy/geoalchemy2#574\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/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/567\"\u003egeoalchemy/geoalchemy2#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/573\"\u003egeoalchemy/geoalchemy2#573\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.18.0...0.18.1\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.18.0...0.18.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/538\"\u003egeoalchemy/geoalchemy2#538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/540\"\u003egeoalchemy/geoalchemy2#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCompile literal binds by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/543\"\u003egeoalchemy/geoalchemy2#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/544\"\u003egeoalchemy/geoalchemy2#544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore (mariadb): Stop converting WKB to WKT by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/545\"\u003egeoalchemy/geoalchemy2#545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker containers by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/546\"\u003egeoalchemy/geoalchemy2#546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/547\"\u003egeoalchemy/geoalchemy2#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/553\"\u003egeoalchemy/geoalchemy2#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/554\"\u003egeoalchemy/geoalchemy2#554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Improve readbility of benchmark results by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/556\"\u003egeoalchemy/geoalchemy2#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/555\"\u003egeoalchemy/geoalchemy2#555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/557\"\u003egeoalchemy/geoalchemy2#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Remove warning message from MySQL/MariaDB reflection by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/560\"\u003egeoalchemy/geoalchemy2#560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/561\"\u003egeoalchemy/geoalchemy2#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: correct doc strings by \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/564\"\u003egeoalchemy/geoalchemy2#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.0 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/565\"\u003egeoalchemy/geoalchemy2#565\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/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.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/geoalchemy/geoalchemy2/blob/master/CHANGES.txt\"\u003egeoalchemy2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Allow scientific notation within WKT string - \u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/573\"\u003e#573\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix (mysql): Fix failing test for MySQL dialect - \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/567\"\u003e#567\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Fix doc strings for cache enabled - \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e(papacodebear/master) Fix: Remove warning from MySQL/MariaDB reflection \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Improve readability of benchmark results \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/547\"\u003e#547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker container \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/546\"\u003e#546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf (mariadb): Stop converting WKB to WKT \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/545\"\u003e#545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/544\"\u003e#544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Compile literal binds properly \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redi...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1397","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1397","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1397/packages"},{"uuid":"3731680920","node_id":"PR_kwDOHTdvBs64_Xbv","number":1388,"state":"open","title":"deps(ibis): bump the all group across 1 directory with 31 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-12-15T18:44:22.000Z","updated_at":"2025-12-15T18:44:36.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":31,"packages":[{"name":"fastapi","old_version":"0.120.1","new_version":"0.124.4","repository_url":"https://github.com/fastapi/fastapi"},{"name":"pydantic","old_version":"2.10.6","new_version":"2.12.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.44.0","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.2.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"orjson","old_version":"3.10.16","new_version":"3.11.5","repository_url":"https://github.com/ijl/orjson"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.18.1","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"anyio","old_version":"4.10.0","new_version":"4.12.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"duckdb","old_version":"1.3.2","new_version":"1.4.3","repository_url":"https://github.com/duckdb/duckdb-python"},{"name":"oracledb","old_version":"3.3.0","new_version":"3.4.1","repository_url":"https://github.com/oracle/python-oracledb"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.38.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"uvicorn-worker","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/Kludex/uvicorn-worker"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.10","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"50.1.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"starlette","old_version":"0.49.1","new_version":"0.50.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"databricks-sql-connector","old_version":"4.1.4","new_version":"4.2.2","repository_url":"https://github.com/databricks/databricks-sql-python"},{"name":"databricks-sdk","old_version":"0.73.0","new_version":"0.74.0","repository_url":"https://github.com/databricks/databricks-sdk-py"},{"name":"jupyterlab","old_version":"4.4.9","new_version":"4.5.1","repository_url":"https://github.com/jupyterlab/jupyterlab"},{"name":"ipykernel","old_version":"6.30.1","new_version":"7.1.0","repository_url":"https://github.com/ipython/ipykernel"},{"name":"ipywidgets","old_version":"8.1.7","new_version":"8.1.8","repository_url":"https://github.com/jupyter-widgets/ipywidgets"},{"name":"matplotlib","old_version":"3.10.6","new_version":"3.10.8","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"plotly","old_version":"6.3.0","new_version":"6.5.0","repository_url":"https://github.com/plotly/plotly.py"},{"name":"pytest","old_version":"8.3.5","new_version":"9.0.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.13.3","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.45","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.5.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.14.9","repository_url":"https://github.com/astral-sh/ruff"},{"name":"trino","old_version":"0.335.0","new_version":"0.336.0","repository_url":"https://github.com/trinodb/trino-python-client"},{"name":"psycopg2","old_version":"2.9.10","new_version":"2.9.11","repository_url":"https://github.com/psycopg/psycopg2"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.10.0","repository_url":"https://github.com/ClickHouse/clickhouse-connect"},{"name":"polars","old_version":"1.33.1","new_version":"1.36.1","repository_url":"https://github.com/pola-rs/polars"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 31 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.120.1` | `0.124.4` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.12.5` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.44.0` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.2.1` |\n| [orjson](https://github.com/ijl/orjson) | `3.10.16` | `3.11.5` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.18.1` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.10.0` | `4.12.0` |\n| [duckdb](https://github.com/duckdb/duckdb-python) | `1.3.2` | `1.4.3` |\n| [oracledb](https://github.com/oracle/python-oracledb) | `3.3.0` | `3.4.1` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.38.0` |\n| [uvicorn-worker](https://github.com/Kludex/uvicorn-worker) | `0.3.0` | `0.4.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.10` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `50.1.0` |\n| [starlette](https://github.com/Kludex/starlette) | `0.49.1` | `0.50.0` |\n| [databricks-sql-connector](https://github.com/databricks/databricks-sql-python) | `4.1.4` | `4.2.2` |\n| [databricks-sdk](https://github.com/databricks/databricks-sdk-py) | `0.73.0` | `0.74.0` |\n| [jupyterlab](https://github.com/jupyterlab/jupyterlab) | `4.4.9` | `4.5.1` |\n| [ipykernel](https://github.com/ipython/ipykernel) | `6.30.1` | `7.1.0` |\n| [ipywidgets](https://github.com/jupyter-widgets/ipywidgets) | `8.1.7` | `8.1.8` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.10.6` | `3.10.8` |\n| [plotly](https://github.com/plotly/plotly.py) | `6.3.0` | `6.5.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `9.0.2` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.13.3` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.45` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.5.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.14.9` |\n| [trino](https://github.com/trinodb/trino-python-client) | `0.335.0` | `0.336.0` |\n| [psycopg2](https://github.com/psycopg/psycopg2) | `2.9.10` | `2.9.11` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.10.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.33.1` | `1.36.1` |\n\n\nUpdates `fastapi` from 0.120.1 to 0.124.4\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's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.124.4\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix parameter aliases. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14371\"\u003e#14371\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.124.3\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for tagged union with discriminator inside of \u003ccode\u003eAnnotated\u003c/code\u003e with \u003ccode\u003eBody()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14512\"\u003e#14512\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRefactors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✅ Add set of tests for request parameters and alias. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14358\"\u003e#14358\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\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📝 Tweak links format. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14505\"\u003e#14505\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Update docs about re-raising validation errors, do not include string as is to not leak information. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14487\"\u003e#14487\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔥 Remove external links section. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14486\"\u003e#14486\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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🌐 Sync Russian docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14509\"\u003e#14509\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Sync German docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14488\"\u003e#14488\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\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👷 Tweak coverage to not pass Smokeshow max file size limit. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14507\"\u003e#14507\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Expand test matrix to include Windows and MacOS. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14171\"\u003e#14171\u003c/a\u003e by \u003ca href=\"https://github.com/svlandeg\"\u003e\u003ccode\u003e@​svlandeg\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.124.2\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for \u003ccode\u003eif TYPE_CHECKING\u003c/code\u003e,  non-evaluated stringified annotations. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14485\"\u003e#14485\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.124.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix handling arbitrary types when using \u003ccode\u003earbitrary_types_allowed=True\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14482\"\u003e#14482\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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📝 Add variants for code examples in \u0026quot;Advanced User Guide\u0026quot;. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14413\"\u003e#14413\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Update tech stack in project generation docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14472\"\u003e#14472\u003c/a\u003e by \u003ca href=\"https://github.com/alejsdev\"\u003e\u003ccode\u003e@​alejsdev\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✅ Add test for Pydantic v2, dataclasses, UUID, and \u003ccode\u003e__annotations__\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14477\"\u003e#14477\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.124.0\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/fastapi/fastapi/commit/b1d9769f97295a238df8c2d318ad65dd6a40c6ff\"\u003e\u003ccode\u003eb1d9769\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.124.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/89157a803c4c75332566a5ca499afd5358c42049\"\u003e\u003ccode\u003e89157a8\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d86c47477e4d91b5e1f07973b3437908558a8b4b\"\u003e\u003ccode\u003ed86c474\u003c/code\u003e\u003c/a\u003e 🐛 Fix parameter aliases (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14371\"\u003e#14371\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/3fe6522aaed4d36d6a38175a4a8137ee0fc62451\"\u003e\u003ccode\u003e3fe6522\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.124.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/80d1f732e5e10efe75e03427558271d46cd663e3\"\u003e\u003ccode\u003e80d1f73\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/c0556ac3a50420d0ba298b5641517c61f3c1c2c4\"\u003e\u003ccode\u003ec0556ac\u003c/code\u003e\u003c/a\u003e 🐛 Fix support for tagged union with discriminator inside of \u003ccode\u003eAnnotated\u003c/code\u003e with ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/1fcec88ad2df4541b6a81c4786c4d039dc745e1e\"\u003e\u003ccode\u003e1fcec88\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/f8b216df30f4d4fd36dccf7c7e885154a2699838\"\u003e\u003ccode\u003ef8b216d\u003c/code\u003e\u003c/a\u003e 🌐 Sync Russian docs (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14509\"\u003e#14509\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/4b905b614c84fbf4a278bdb69f4a22d52a43721e\"\u003e\u003ccode\u003e4b905b6\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/6c54bcefd3c37c8656e909980af00f86acea99c3\"\u003e\u003ccode\u003e6c54bce\u003c/code\u003e\u003c/a\u003e ✅ Add set of tests for request parameters and alias (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14358\"\u003e#14358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.120.1...0.124.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.10.6 to 2.12.5\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.5 2025-11-26\u003c/h2\u003e\n\u003ch2\u003ev2.12.5 (2025-11-26)\u003c/h2\u003e\n\u003cp\u003eThis is the fifth 2.12 patch release, addressing an issue with the \u003ccode\u003eMISSING\u003c/code\u003e sentinel and providing several documentation improvements.\u003c/p\u003e\n\u003cp\u003eThe next 2.13 minor release will be published in a couple weeks, and will include a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature addressing\nthe remaining unexpected changes to the \u003cem\u003eserialize as any\u003c/em\u003e behavior.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix pickle error when using \u003ccode\u003emodel_construct()\u003c/code\u003e on a model with \u003ccode\u003eMISSING\u003c/code\u003e as a default value by \u003ca href=\"https://github.com/ornariece\"\u003e\u003ccode\u003e@​ornariece\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12522\"\u003e#12522\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eSeveral updates to the documentation by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\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.12.4...v2.12.5\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.4...v2.12.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.4 2025-11-05\u003c/h2\u003e\n\u003ch2\u003ev2.12.4 (2025-11-05)\u003c/h2\u003e\n\u003cp\u003eThis is the fourth 2.12 patch release, fixing more regressions, and reverting a change in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis patch release also fixes an issue with the serialization of IP address types, when \u003ccode\u003eserialize_as_any\u003c/code\u003e is used. The next patch release\nwill try to address the remaining issues with \u003cem\u003eserialize as any\u003c/em\u003e behavior by introducing a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature, that\nshould be used in most cases in place of \u003cem\u003eserialize as any\u003c/em\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with forward references in parent \u003ccode\u003eTypedDict\u003c/code\u003e classes 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/12427\"\u003e#12427\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis issue is only relevant on Python 3.14 and greater.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExclude fields with \u003ccode\u003eexclude_if\u003c/code\u003e from JSON Schema required fields 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/12430\"\u003e#12430\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRevert URL percent-encoding of credentials in the \u003ccode\u003ebuild()\u003c/code\u003e method of the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1833\"\u003epydantic-core#1833\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis was initially considered as a bugfix, but caused regressions and as such was fully reverted. The next release will include\nan opt-in option to percent-encode components of the URL.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd type inference for IP address types by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1868\"\u003epydantic-core#1868\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe 2.12 changes to the \u003ccode\u003eserialize_as_any\u003c/code\u003e behavior made it so that IP address types could not properly serialize to JSON.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid getting default values from defaultdict by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1853\"\u003epydantic-core#1853\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis fixes a subtle regression in the validation behavior of the \u003ca href=\"https://docs.python.org/3/library/collections.html#collections.defaultdict\"\u003e\u003ccode\u003ecollections.defaultdict\u003c/code\u003e\u003c/a\u003e\ntype.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with field serializers on nested typed dictionaries by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1879\"\u003epydantic-core#1879\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd more \u003ccode\u003epydantic-core\u003c/code\u003e builds for the three-threaded version of Python 3.14 by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1864\"\u003epydantic-core#1864\u003c/a\u003e.\u003c/p\u003e\n\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.12.3...v2.12.4\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.3...v2.12.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.3 2025-10-17\u003c/h2\u003e\n\u003ch2\u003ev2.12.3 (2025-10-17)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eThis is the third 2.13 patch release, fixing issues related to the \u003ccode\u003eFieldInfo\u003c/code\u003e class, and reverting a change to the supported \u003ca href=\"https://docs.pydantic.dev/latest/concepts/validators/#model-validators\"\u003e\u003cem\u003eafter\u003c/em\u003e model validator\u003c/a\u003e function signatures.\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\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.5 (2025-11-26)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis is the fifth 2.12 patch release, addressing an issue with the \u003ccode\u003eMISSING\u003c/code\u003e sentinel and providing several documentation improvements.\u003c/p\u003e\n\u003cp\u003eThe next 2.13 minor release will be published in a couple weeks, and will include a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature addressing\nthe remaining unexpected changes to the \u003cem\u003eserialize as any\u003c/em\u003e behavior.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix pickle error when using \u003ccode\u003emodel_construct()\u003c/code\u003e on a model with \u003ccode\u003eMISSING\u003c/code\u003e as a default value by \u003ca href=\"https://github.com/ornariece\"\u003e\u003ccode\u003e@​ornariece\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12522\"\u003e#12522\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eSeveral updates to the documentation by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.12.4 (2025-11-05)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.4\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis is the fourth 2.12 patch release, fixing more regressions, and reverting a change in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis patch release also fixes an issue with the serialization of IP address types, when \u003ccode\u003eserialize_as_any\u003c/code\u003e is used. The next patch release\nwill try to address the remaining issues with \u003cem\u003eserialize as any\u003c/em\u003e behavior by introducing a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature, that\nshould be used in most cases in place of \u003cem\u003eserialize as any\u003c/em\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with forward references in parent \u003ccode\u003eTypedDict\u003c/code\u003e classes 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/12427\"\u003e#12427\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis issue is only relevant on Python 3.14 and greater.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExclude fields with \u003ccode\u003eexclude_if\u003c/code\u003e from JSON Schema required fields 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/12430\"\u003e#12430\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRevert URL percent-encoding of credentials in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in\n\u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1833\"\u003epydantic-core#1833\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis was initially considered as a bugfix, but caused regressions and as such was fully reverted. The next release will include\nan opt-in option to percent-encode components of the URL.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd type inference for IP address types by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1868\"\u003epydantic-core#1868\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe 2.12 changes to the \u003ccode\u003eserialize_as_any\u003c/code\u003e behavior made it so that IP address types could not properly serialize to JSON.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid getting default values from defaultdict by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1853\"\u003epydantic-core#1853\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis fixes a subtle regression in the validation behavior of the \u003ca href=\"https://docs.python.org/3/library/collections.html#collections.defaultdict\"\u003e\u003ccode\u003ecollections.defaultdict\u003c/code\u003e\u003c/a\u003e\ntype.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with field serializers on nested typed dictionaries by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1879\"\u003epydantic-core#1879\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd more \u003ccode\u003epydantic-core\u003c/code\u003e builds for the three-threaded version of Python 3.14 by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1864\"\u003epydantic-core#1864\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.12.3 (2025-10-17)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.3\"\u003eGitHub release\u003c/a\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/pydantic/pydantic/commit/bd2d0dd0137dfa1a8fdff2529b9dfb1547980150\"\u003e\u003ccode\u003ebd2d0dd\u003c/code\u003e\u003c/a\u003e Prepare release v2.12.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/7d0302ec7ec2cf115de3450a615522875bdd8b56\"\u003e\u003ccode\u003e7d0302e\u003c/code\u003e\u003c/a\u003e Document security implications when using \u003ccode\u003ecreate_model()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/e9ef980def726b6f59b6c495ddc9dc259a0228db\"\u003e\u003ccode\u003ee9ef980\u003c/code\u003e\u003c/a\u003e Fix typo in Standard Library Types documentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/f2c20c00c265a31a13c48f9bae923a87c829952e\"\u003e\u003ccode\u003ef2c20c0\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003epydantic-docs\u003c/code\u003e dev dependency, make use of versioning blocks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a76c1aa26f2d64a3fd080ac515d80832689197e8\"\u003e\u003ccode\u003ea76c1aa\u003c/code\u003e\u003c/a\u003e Update documentation about JSON Schema\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/8cbc72ca489891e574fba45238ee8bd4f8e719a2\"\u003e\u003ccode\u003e8cbc72c\u003c/code\u003e\u003c/a\u003e Add documentation about custom \u003ccode\u003e__init__()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/99eba599069da137b3f708ffa74627f2b456ba73\"\u003e\u003ccode\u003e99eba59\u003c/code\u003e\u003c/a\u003e Add additional test for \u003ccode\u003eFieldInfo.get_default()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c71076988e507ea93844c77c3bf0bbb85a5716af\"\u003e\u003ccode\u003ec710769\u003c/code\u003e\u003c/a\u003e Special case \u003ccode\u003eMISSING\u003c/code\u003e sentinel in \u003ccode\u003esmart_deepcopy()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/20a9d771c210fd77d52366ac923258c4c199727f\"\u003e\u003ccode\u003e20a9d77\u003c/code\u003e\u003c/a\u003e Do not delete mock validator/serializer in \u003ccode\u003erebuild_dataclass()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c86515a3a8f2120148fab2eaedd3bc45925779d0\"\u003e\u003ccode\u003ec86515a\u003c/code\u003e\u003c/a\u003e Update parts of the model and \u003ccode\u003erevalidate_instances\u003c/code\u003e documentation\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.12.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.44.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003egoogle-auth 2.44.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.43.0...v2.44.0\"\u003e2.44.0\u003c/a\u003e (2025-12-12)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eMDS connections use mTLS (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1856\"\u003e#1856\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0387bb95\"\u003e0387bb95\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003esupport Python 3.14 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1822\"\u003e#1822\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0f7097e7\"\u003e0f7097e7\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eadd ecdsa p-384 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1872\"\u003e#1872\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/39c381a5\"\u003e39c381a5\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd shlex to correctly parse executable commands with spaces (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1855\"\u003e#1855\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/cf6fc3cc\"\u003ecf6fc3cc\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eImplement token revocation in STS client and add revoke() metho… (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1849\"\u003e#1849\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/d5638986\"\u003ed5638986\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd temporary patch to workload cert logic to accomodate Cloud Run mis-configuration (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1880\"\u003e#1880\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/78de7907\"\u003e78de7907\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDelegate workload cert and key default lookup to helper function (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1877\"\u003e#1877\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b0993c7e\"\u003eb0993c7e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUse public refresh method for source credentials in ImpersonatedCredentials (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1884\"\u003e#1884\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e0c3296f\"\u003ee0c3296f\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003egoogle-auth 2.43.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.42.1...v2.43.0\"\u003e2.43.0\u003c/a\u003e (2025-11-05)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd public wrapper for _mtls_helper.check_use_client_cert which enables mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE is not set, when the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1859\"\u003e#1859\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/1535eccb\"\u003e1535eccb\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eEnable mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE  is not set, if the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1848\"\u003e#1848\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/395e405b\"\u003e395e405b\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eonboard \u003ccode\u003egoogle-auth\u003c/code\u003e to librarian (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1838\"\u003e#1838\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/c503eaa5\"\u003ec503eaa5\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.42.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.42.0...v2.42.1\"\u003e2.42.1\u003c/a\u003e (2025-10-30)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCatch ValueError for json.loads() (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1842\"\u003e#1842\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b074cad460589633adfc6744c01726ae86f2aa2b\"\u003eb074cad\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.42.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.41.1...v2.42.0\"\u003e2.42.0\u003c/a\u003e (2025-10-24)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd trust boundary support for external accounts. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1809\"\u003e#1809\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/36ecb1d65883477d27faf9c2281fc289659b9903\"\u003e36ecb1d\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.43.0...v2.44.0\"\u003e2.44.0\u003c/a\u003e (2025-12-13)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esupport Python 3.14 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1822\"\u003e#1822\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0f7097e78f247665b6ef0287d482033f7be2ed6d\"\u003e0f7097e78f247665b6ef0287d482033f7be2ed6d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd ecdsa p-384 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1872\"\u003e#1872\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/39c381a5f6881b590025f36d333d12eff8dc60fc\"\u003e39c381a5f6881b590025f36d333d12eff8dc60fc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMDS connections use mTLS (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1856\"\u003e#1856\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0387bb95713653d47e846cad3a010eb55ef2db4c\"\u003e0387bb95713653d47e846cad3a010eb55ef2db4c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImplement token revocation in STS client and add revoke() metho… (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1849\"\u003e#1849\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/d5638986ca03ee95bfffa9ad821124ed7e903e63\"\u003ed5638986ca03ee95bfffa9ad821124ed7e903e63\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd shlex to correctly parse executable commands with spaces (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1855\"\u003e#1855\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/cf6fc3cced78bc1362a7fe596c32ebc9ce03c26b\"\u003ecf6fc3cced78bc1362a7fe596c32ebc9ce03c26b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse public refresh method for source credentials in ImpersonatedCredentials (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1884\"\u003e#1884\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e0c3296f471747258f6d98d2d9bfde636358ecde\"\u003ee0c3296f471747258f6d98d2d9bfde636358ecde\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd temporary patch to workload cert logic to accomodate Cloud Run mis-configuration (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1880\"\u003e#1880\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/78de7907b8bdb7b5510e3c6fa8a3f3721e2436d7\"\u003e78de7907b8bdb7b5510e3c6fa8a3f3721e2436d7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDelegate workload cert and key default lookup to helper function (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1877\"\u003e#1877\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b0993c7edaba505d0fb0628af28760c43034c959\"\u003eb0993c7edaba505d0fb0628af28760c43034c959\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-python/compare/google-auth-v2.42.1...google-auth-v2.43.0\"\u003e2.43.0\u003c/a\u003e (2025-11-05)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd public wrapper for _mtls_helper.check_use_client_cert which enables mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE is not set, when the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1859\"\u003e#1859\u003c/a\u003e) Add public wrapper for check_use_client_cert which enables mTLS if\nGOOGLE_API_USE_CLIENT_CERTIFICATE is not set, when the MWID/X.509 cert\nsources detected. Also, fix check_use_client_cert to return boolean\nvalue.\nChange \u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1848\"\u003e#1848\u003c/a\u003e added the check_use_client_cert method that helps know if\nclient cert should be used for mTLS connection. However, that was in a\nprivate class, thus, created a public wrapper of the same function so\nthat it can be used by python Client Libraries. Also, updated\ncheck_use_client_cert to return a boolean value instead of existing\nstring value for better readability and future scope.\n--------- (\u003ca href=\"https://github.com/googleapis/google-cloud-python/commit/1535eccbff0ad8f3fd6a9775316ac8b77dca66ba\"\u003e1535eccbff0ad8f3fd6a9775316ac8b77dca66ba\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnable mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE  is not set, if the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1848\"\u003e#1848\u003c/a\u003e) The Python SDK will use a hybrid approach for mTLS enablement:\u003c/li\u003e\n\u003c/ul\u003e\n\u003cul\u003e\n\u003cli\u003eIf the GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is set\n(either true or false), the SDK will respect that setting. This is\nnecessary for test scenarios and users who need to explicitly control\nmTLS behavior.\u003c/li\u003e\n\u003cli\u003eIf the GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is not\nset, the SDK will automatically enable mTLS only if it detects Managed\nWorkload Identity (MWID) or X.509 Workforce Identity Federation (WIF)\ncertificate sources. In other cases where the variable is not set, mTLS\nwill remain disabled.\n** This change also adds the helper method \u003ccode\u003echeck_use_client_cert\u003c/code\u003e and\nit's unit test, which will be used for checking the criteria for setting\nthe mTLS to true\n** This change is only for Auth-Library, other changes will be created\nfor Client-Library use-cases.\n--------- (\u003ca href=\"https://github.com/googleapis/google-cloud-python/commit/395e405b64b56ddb82ee639958c2e8056ad2e82b\"\u003e395e405b64b56ddb82ee639958c2e8056ad2e82b\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/googleapis/google-auth-library-python/commit/262eb9e33d58ffeb536ecd083c22d9fb12c808e6\"\u003e\u003ccode\u003e262eb9e\u003c/code\u003e\u003c/a\u003e chore: librarian release pull request: 20251212T161150Z (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1888\"\u003e#1888\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0f7097e78f247665b6ef0287d482033f7be2ed6d\"\u003e\u003ccode\u003e0f7097e\u003c/code\u003e\u003c/a\u003e feat: support Python 3.14 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1822\"\u003e#1822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e0c3296f471747258f6d98d2d9bfde636358ecde\"\u003e\u003ccode\u003ee0c3296\u003c/code\u003e\u003c/a\u003e fix(auth): Use public refresh method for source credentials in ImpersonatedCr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/78de7907b8bdb7b5510e3c6fa8a3f3721e2436d7\"\u003e\u003ccode\u003e78de790\u003c/code\u003e\u003c/a\u003e fix(auth): Add temporary patch to workload cert logic to accomodate Cloud Run...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3e8a56687fd050ff44a35cc8db0e95e996648173\"\u003e\u003ccode\u003e3e8a566\u003c/code\u003e\u003c/a\u003e chore(tests): allow expired secret in system tests (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1883\"\u003e#1883\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b0993c7edaba505d0fb0628af28760c43034c959\"\u003e\u003ccode\u003eb0993c7\u003c/code\u003e\u003c/a\u003e fix(auth): Delegate workload cert and key default lookup to helper function (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2c374d36a61569b75d11c17fae124d591c52ddc6\"\u003e\u003ccode\u003e2c374d3\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1879\"\u003e#1879\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/39c381a5f6881b590025f36d333d12eff8dc60fc\"\u003e\u003ccode\u003e39c381a\u003c/code\u003e\u003c/a\u003e feat: add ecdsa p-384 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1872\"\u003e#1872\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/daabaa714820008565133efdf4d928143b8fe518\"\u003e\u003ccode\u003edaabaa7\u003c/code\u003e\u003c/a\u003e chore(tests): update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1876\"\u003e#1876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0387bb95713653d47e846cad3a010eb55ef2db4c\"\u003e\u003ccode\u003e0387bb9\u003c/code\u003e\u003c/a\u003e feat: MDS connections use mTLS (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1856\"\u003e#1856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.44.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.2.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.2.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport reading .env from FIFOs (Unix) by \u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CI to use trusted publishing on PyPI\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/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003estyle: upgrade to use ruff by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/567\"\u003etheskumar/python-dotenv#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse sys.exit() instead of exit() by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/568\"\u003etheskumar/python-dotenv#568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat:  add \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e flag to disable load_dotenv (fixes \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/510\"\u003e#510\u003c/a\u003e) by \u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded Python@3.14: Github CI \u0026amp; tox.ini by \u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eocs: clarify what load_dotenv() does in README by \u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group across 1 directory with 2 updates 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/theskumar/python-dotenv/pull/577\"\u003etheskumar/python-dotenv#577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove project metadata and config to pyproject.toml by \u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\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/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: ensure find_dotenv work reliably on python 3.13 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003etheskumar/python-dotenv#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cli): issue with execvpe on Windows by \u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\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/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a security policy by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/512\"\u003etheskumar/python-dotenv#512\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep GitHub Actions up to date with GitHub's Dependabot by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/506\"\u003etheskumar/python-dotenv#506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix multiline string in test.yml \u0026amp; use fail-fast strategy by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/514\"\u003etheskumar/python-dotenv#514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnhance dotenv run: Switch to execvpe for better resource management and signal handling by \u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add py3.13 to test.yml by \u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 trove classifier by \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for python 3.13 and drop 3.8 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/551\"\u003etheskumar/python-dotenv#551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update README.md by \u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSome more s/Python-dotenv/python-dotenv/ by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/552\"\u003etheskumar/python-dotenv#552\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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.2.1] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMove more config to \u003ccode\u003epyproject.toml\u003c/code\u003e, removed \u003ccode\u003esetup.cfg\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for reading \u003ccode\u003e.env\u003c/code\u003e from FIFOs (Unix) by [\u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.2.0] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade build system to use PEP 517 \u0026amp; PEP 518 to use \u003ccode\u003ebuild\u003c/code\u003e and \u003ccode\u003epyproject.toml\u003c/code\u003e by [\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/583\"\u003e#583\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14 by [\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for disabling of \u003ccode\u003eload_dotenv()\u003c/code\u003e using \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e env var. by [\u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/569\"\u003e#569\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCLI: revert the use of execvpe on Windows by [\u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003e#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.0] - 2025-03-25\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFeature\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for python 3.13\u003c/li\u003e\n\u003cli\u003eEnhance \u003ccode\u003edotenv run\u003c/code\u003e, switch to \u003ccode\u003eexecvpe\u003c/code\u003e for better resource management and signal handling (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/523\"\u003e#523\u003c/a\u003e) by [\u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efind_dotenv\u003c/code\u003e and \u003ccode\u003eload_dotenv\u003c/code\u003e now correctly looks up at the current directory when running in debugger or pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e by [\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e])\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eMisc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8\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/theskumar/python-dotenv/commit/eaf2a9129ccec6febda0f741eb3bb852c3f947bd\"\u003e\u003ccode\u003eeaf2a91\u003c/code\u003e\u003c/a\u003e Do not remove .coverage file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8716196891532eeb67d24a513e8d975437f5e8b7\"\u003e\u003ccode\u003e8716196\u003c/code\u003e\u003c/a\u003e Bump version: 1.2.0 → 1.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/b87807fcad6e74332c3c63a75c92ce5814fa7a55\"\u003e\u003ccode\u003eb87807f\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/3af77d3029eb717aeec0a3c25f751b6a614a6d3c\"\u003e\u003ccode\u003e3af77d3\u003c/code\u003e\u003c/a\u003e Support reading .env from FIFOs (Unix) (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/467ee22fccb2fb7ccda71a0d9e37c6ea3cb8d993\"\u003e\u003ccode\u003e467ee22\u003c/code\u003e\u003c/a\u003e Fix test failures after moving config to pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/76999e741d87e958ebd74e3ae9834c0514e77a59\"\u003e\u003ccode\u003e76999e7\u003c/code\u003e\u003c/a\u003e Move more config pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/222ce2cc58ebc82ba78da8781269267b9f585932\"\u003e\u003ccode\u003e222ce2c\u003c/code\u003e\u003c/a\u003e Update to use trusted publisher on pypi\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8ed4f79d202eba582b44bdf1f5deb726dd68783d\"\u003e\u003ccode\u003e8ed4f79\u003c/code\u003e\u003c/a\u003e Update docs requirements\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/5bf882241c607445bf02cf5b241535d62e2b99c1\"\u003e\u003ccode\u003e5bf8822\u003c/code\u003e\u003c/a\u003e Bump version: 1.1.1 → 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/1fe11cc737ee4399e9c51d1b69b0dd858f6b4669\"\u003e\u003ccode\u003e1fe11cc\u003c/code\u003e\u003c/a\u003e upadate changelog\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `orjson` from 3.10.16 to 3.11.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ijl/orjson/releases\"\u003eorjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.5\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eShow simple error message instead of traceback when attempting to\nbuild on unsupported Python versions.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.4\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eABI compatibility with CPython 3.15 alpha 1.\u003c/li\u003e\n\u003cli\u003ePublish PyPI wheels for 3.14 and manylinux i686, manylinux arm7,\nmanylinux ppc64le, manylinux s390x.\u003c/li\u003e\n\u003cli\u003eBuild now requires a C compiler.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared buffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17\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/ijl/orjson/blob/master/CHANGELOG.md\"\u003eorjson's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.5 - 2025-12-06\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eShow simple error message instead of traceback when attempting to\nbuild on unsupported Python versions.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.4 - 2025-10-24\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eABI compatibility with CPython 3.15 alpha 1.\u003c/li\u003e\n\u003cli\u003ePublish PyPI wheels for 3.14 and manylinux i686, manylinux arm7,\nmanylinux ppc64le, manylinux s390x.\u003c/li\u003e\n\u003cli\u003eBuild now requires a C compiler.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.3 - 2025-08-26\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1 - 2025-07-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures. This was introduced in 3.11.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 - 2025-07-15\u003c/h2\u003e\n\u003ch3\u003eChanged\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/ijl/orjson/commit/fb3eb1f729c7e7b019f780af5695722c99c7c695\"\u003e\u003ccode\u003efb3eb1f\u003c/code\u003e\u003c/a\u003e 3.11.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/52688e02c51c845cde24a46cd1011a6010d10eb8\"\u003e\u003ccode\u003e52688e0\u003c/code\u003e\u003c/a\u003e Record contributors in headers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/dc083e87d5262e7dde3ba4b1d2a377b5b065a27c\"\u003e\u003ccode\u003edc083e8\u003c/code\u003e\u003c/a\u003e Further compatibility and build misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/18f0186d47fbadd53c9db4e39a442d5b04225418\"\u003e\u003ccode\u003e18f0186\u003c/code\u003e\u003c/a\u003e Compatibility and build misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/a4fdeb3aff125d501ec0dd0577f9b38b2b977b4f\"\u003e\u003ccode\u003ea4fdeb3\u003c/code\u003e\u003c/a\u003e 3.11.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2e80d68afacafca8751e6a64ca05d0d4087dbd15\"\u003e\u003ccode\u003e2e80d68\u003c/code\u003e\u003c/a\u003e unlikely to cold_path, remove intrinsics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/27edea92f8da2fdfc3f1342474e2f1686f1edf55\"\u003e\u003ccode\u003e27edea9\u003c/code\u003e\u003c/a\u003e FFI through crate::ffi, partial non-CPython compatibility\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/416a8c9578da780d0d58b5e6b751793deafc610d\"\u003e\u003ccode\u003e416a8c9\u003c/code\u003e\u003c/a\u003e Unconditionally build yyjson\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/c8c1a17dca8436a2fee05ca060febd096e653d98\"\u003e\u003ccode\u003ec8c1a17\u003c/code\u003e\u003c/a\u003e edition 2024\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/af4179a1fa0aafffd0f867203b6c36e9a522f165\"\u003e\u003ccode\u003eaf4179a\u003c/code\u003e\u003c/a\u003e build maintenance, panic_immediate_abort break, test 3.15\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ijl/orjson/compare/3.10.16...3.11.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geoalchemy2` from 0.17.1 to 0.18.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/releases\"\u003egeoalchemy2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix (mysql): Fix failing test for MySQL dialect by \u003ca href=\"https://github.com/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/567\"\u003egeoalchemy/geoalchemy2#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/570\"\u003egeoalchemy/geoalchemy2#570\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Allow scientific notation within WKT string by \u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/573\"\u003egeoalchemy/geoalchemy2#573\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.1 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/574\"\u003egeoalchemy/geoalchemy2#574\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/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/567\"\u003egeoalchemy/geoalchemy2#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/573\"\u003egeoalchemy/geoalchemy2#573\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.18.0...0.18.1\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.18.0...0.18.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/538\"\u003egeoalchemy/geoalchemy2#538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/540\"\u003egeoalchemy/geoalchemy2#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCompile literal binds by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/543\"\u003egeoalchemy/geoalchemy2#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/544\"\u003egeoalchemy/geoalchemy2#544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore (mariadb): Stop converting WKB to WKT by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/545\"\u003egeoalchemy/geoalchemy2#545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker containers by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/546\"\u003egeoalchemy/geoalchemy2#546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/547\"\u003egeoalchemy/geoalchemy2#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/553\"\u003egeoalchemy/geoalchemy2#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/554\"\u003egeoalchemy/geoalchemy2#554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Improve readbility of benchmark results by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/556\"\u003egeoalchemy/geoalchemy2#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/555\"\u003egeoalchemy/geoalchemy2#555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/557\"\u003egeoalchemy/geoalchemy2#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Remove warning message from MySQL/MariaDB reflection by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/560\"\u003egeoalchemy/geoalchemy2#560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/561\"\u003egeoalchemy/geoalchemy2#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: correct doc strings by \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/564\"\u003egeoalchemy/geoalchemy2#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.0 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/565\"\u003egeoalchemy/geoalchemy2#565\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/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.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/geoalchemy/geoalchemy2/blob/master/CHANGES.txt\"\u003egeoalchemy2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Allow scientific notation within WKT string - \u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/573\"\u003e#573\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix (mysql): Fix failing test for MySQL dialect - \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/567\"\u003e#567\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Fix doc strings for cache enabled - \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e(papacodebear/master) Fix: Remove warning from MySQL/MariaDB reflection \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Improve readability of benchmark results \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/547\"\u003e#547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker container \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/546\"\u003e#546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf (mariadb): Stop converting WKB to WKT \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/545\"\u003e#545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/544\"\u003e#544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Compile literal binds properly \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/540\"\u003e#540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/538\"\u003e#538\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/geoalchemy/geoalchemy2/commit/0c311122e5228a885e262d8f79b037cb74c0949b\"\u003e\u003ccode\u003e0c31112\u003c/code\u003e\u003c/a\u003e Release: 0.18.1 (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/574\"\u003e#574\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/75f87fac699ed31579ef93dffc59cc25bda241a8\"\u003e\u003ccode\u003e75f87fa\u003c/code\u003e\u003c/a\u003e Fix: Allow scientific notation within WKT string (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/573\"\u003e#573\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/8653df3a1b0236556f1c39c916f0fb717475a6d1\"\u003e\u003ccode\u003e8653df3\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/570\"\u003e#570\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/3d6099504023afda68137f0ac2d041986159dac9\"\u003e\u003ccode\u003e3d60995\u003c/code\u003e\u003c/a\u003e Fix (mysql): Fix failing test for MySQL dialect (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/567\"\u003e#567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/60767082df9f4587fadd56ab94847ebc39df8295\"\u003e\u003ccode\u003e6076708\u003c/code\u003e\u003c/a\u003e Release: 0.18.0 (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/565\"\u003e#565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/e13112177bdf79cae0d72a6e89d815dc272e3dc5\"\u003e\u003ccode\u003ee131121\u003c/code\u003e\u003c/a\u003e Feat: Add support of spatial indexes for Raster type for PostgreSQL (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/0b432086a0c3b8ab160c5cc1864aa65e02f35362\"\u003e\u003ccode\u003e0b43208\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/8791b2eec013f21f599ca060d9fee4aba72ec2a1\"\u003e\u003ccode\u003e8791b2e\u003c/code\u003e\u003c/a\u003e Docs: Fix doc strings for cache enabled (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/d3c1d04c8b462c61132403e44a7a4f04a487c142\"\u003e\u003ccode\u003ed3c1d04\u003c/code\u003e\u003c/a\u003e Chore: Move reflection type registering (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/24dc5d05d97fb9a2a57103c1823a58f06940a5e8\"\u003e\u003ccode\u003e24dc5d0\u003c/code\u003e\u003c/a\u003e Fix: Remove warning from MySQL/MariaDB reflection (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gql` from 3.5.2 to 4.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/graphql-python/gql/releases\"\u003egql's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eChange transports prototype using GraphQLRequest (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/551\"\u003e#551\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUsing GraphQLRequest instead of DocumentNode for gql, execute, subscribe methods (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/556\"\u003e#556\u003c/a\u003e):\n\u003cstrong\u003eThis is a big change:\u003c/strong\u003e\n\u003cul\u003e\n\u003cli\u003ethe \u003ccode\u003egql\u003c/code\u003e and \u003ccode\u003edsl_gql\u003c/code\u003e methods will now return a \u003ccode\u003eGraphQLRequest\u003c/code\u003e instead of a \u003ccode\u003eDocument\u003c/code\u003e Node\na \u003ccode\u003eGraphQLRequest\u003c/code\u003e is an object containing the document and optional \u003ccode\u003evariable_values\u003c/code\u003e and \u003ccode\u003eoperation_name\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eALL the \u003ccode\u003eexecute\u003c/code\u003e and \u003ccode\u003esubscribe\u003c/code\u003e methods now receive a \u003ccode\u003eGraphQLRequest\u003c/code\u003e as main argument instead of\na \u003ccode\u003eDocumentNode\u003c/code\u003e, \u003ccode\u003evariable_values\u003c/code\u003e and \u003ccode\u003eoperation_name\u003c/code\u003e arguments\u003c/li\u003e\n\u003cli\u003eThe old method of sending \u003ccode\u003evariable_values\u003c/code\u003e as an argument of \u003ccode\u003eexecute\u003c/code\u003e or \u003ccode\u003esubscribe\u003c/code\u003e still works but is deprecated\nSee \u003ca href=\"https://gql.readthedocs.io/en/latest/usage/variables.html\"\u003ehttps://gql.readthedocs.io/en/latest/usage/variables.html\u003c/a\u003e for the new syntax.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix subscription task cancel exception swallow (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/548\"\u003e#548\u003c/a\u003e):\nPreviously if a task was cancelled while a subscription task was active,\nthe \u003ccode\u003easyncio.CancelledError\u003c/code\u003e Exception would be swallowed by our code.\nThis is not the case anymore so you should now trap that Exception yourself.\u003c/li\u003e\n\u003cli\u003eClean up the file upload interface with FileVar class (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/549\"\u003e#549\u003c/a\u003e):\nThe file upload functionality has been modified to require \u003ccode\u003eFileVar\u003c/code\u003e instances\nfor uploaded files (the old method still works but is deprecated).\nSee \u003ca href=\"https://gql.readthedocs.io/en/latest/usage/file_upload.html\"\u003ehttps://gql.readthedocs.io/en/latest/usage/file_upload.html\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSet logging level to DEBUG for all transports (\u003ca href=\"https://redirect.github.com/g...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1388","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1388","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1388/packages"},{"uuid":"3708266052","node_id":"PR_kwDOKF4tPs63x7Rz","number":2819,"state":"closed","title":"Build: Bump datafusion from 48.0.0 to 50.1.0","user":"dependabot[bot]","labels":["dependencies","python:uv"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-13T02:39:11.000Z","author_association":null,"state_reason":null,"created_at":"2025-12-08T22:32:47.000Z","updated_at":"2026-01-13T02:39:13.000Z","time_to_close":3038784,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Build: Bump","packages":[{"name":"datafusion","old_version":"48.0.0","new_version":"50.1.0","repository_url":"https://github.com/apache/datafusion-python"}],"path":null,"ecosystem":"pip"},"body":"Bumps [datafusion](https://github.com/apache/datafusion-python) from 48.0.0 to 50.1.0.\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/5646693c2b9f040e8801606f5916b24221738774\"\u003e\u003ccode\u003e5646693\u003c/code\u003e\u003c/a\u003e Update cargo lock\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/aac428c0c07251171ce1407216db0a073303565a\"\u003e\u003ccode\u003eaac428c\u003c/code\u003e\u003c/a\u003e Update version to 50.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/08901d537fa32897234f1adf1c98a0c650ca80d7\"\u003e\u003ccode\u003e08901d5\u003c/code\u003e\u003c/a\u003e feat: expose\u003ccode\u003e DataFrame.parse_sql_expr\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1274\"\u003e#1274\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/16d4c038e0d45ec89144a465992e5a929d48e667\"\u003e\u003ccode\u003e16d4c03\u003c/code\u003e\u003c/a\u003e chore: update dependencies (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1269\"\u003e#1269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/f5fdf59663b075cb1dbaed5b87cca3b0092e5f3c\"\u003e\u003ccode\u003ef5fdf59\u003c/code\u003e\u003c/a\u003e feat: expose DataFrame.write_table (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1264\"\u003e#1264\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/6f3b1cab75cfaa0cdf914f9b6fa023cb9afccd7d\"\u003e\u003ccode\u003e6f3b1ca\u003c/code\u003e\u003c/a\u003e Unify Table representations (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1256\"\u003e#1256\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/af1c07b712d2aa9387e2ec5a55c9bd5198d5c97b\"\u003e\u003ccode\u003eaf1c07b\u003c/code\u003e\u003c/a\u003e Freeze PyO3 wrappers \u0026amp; introduce interior mutability to avoid PyO3 borrow err...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/e75addfa64a91c0d91ef059917a451e04495b83a\"\u003e\u003ccode\u003ee75addf\u003c/code\u003e\u003c/a\u003e macos-13 is deprecated (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1259\"\u003e#1259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/709c918ef810d7207f12c09b82c2e1b1c4ad8290\"\u003e\u003ccode\u003e709c918\u003c/code\u003e\u003c/a\u003e REVERT CHANGES to commit\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/0154c03129ac901aea9d6cf6b5d1ff25131c486d\"\u003e\u003ccode\u003e0154c03\u003c/code\u003e\u003c/a\u003e CHANGES to review\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/datafusion-python/compare/48.0.0...50.1.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=datafusion\u0026package-manager=uv\u0026previous-version=48.0.0\u0026new-version=50.1.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nYou can trigger a rebase of this PR 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\n\n\u003e **Note**\n\u003e Automatic rebases have been disabled on this pull request as it has been open for over 30 days.\n","html_url":"https://github.com/apache/iceberg-python/pull/2819","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Ficeberg-python/issues/2819","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2819/packages"},{"uuid":"3634630258","node_id":"PR_kwDOHTdvBs6z7O3d","number":1379,"state":"open","title":"deps(ibis): bump the all group across 1 directory with 30 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-11-17T18:59:44.000Z","updated_at":"2025-11-17T19:00:20.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":30,"packages":[{"name":"fastapi","old_version":"0.120.1","new_version":"0.121.2","repository_url":"https://github.com/fastapi/fastapi"},{"name":"pydantic","old_version":"2.10.6","new_version":"2.12.4","repository_url":"https://github.com/pydantic/pydantic"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.43.0","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.2.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"orjson","old_version":"3.10.16","new_version":"3.11.4","repository_url":"https://github.com/ijl/orjson"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.18.0","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"anyio","old_version":"4.10.0","new_version":"4.11.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"duckdb","old_version":"1.3.2","new_version":"1.4.2","repository_url":"https://github.com/duckdb/duckdb-python"},{"name":"oracledb","old_version":"3.3.0","new_version":"3.4.1","repository_url":"https://github.com/oracle/python-oracledb"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.38.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"uvicorn-worker","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/Kludex/uvicorn-worker"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.9","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"50.1.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"starlette","old_version":"0.49.1","new_version":"0.49.3","repository_url":"https://github.com/Kludex/starlette"},{"name":"databricks-sql-connector","old_version":"4.1.4","new_version":"4.2.0","repository_url":"https://github.com/databricks/databricks-sql-python"},{"name":"jupyterlab","old_version":"4.4.9","new_version":"4.4.10","repository_url":"https://github.com/jupyterlab/jupyterlab"},{"name":"ipykernel","old_version":"6.30.1","new_version":"7.1.0","repository_url":"https://github.com/ipython/ipykernel"},{"name":"ipywidgets","old_version":"8.1.7","new_version":"8.1.8","repository_url":"https://github.com/jupyter-widgets/ipywidgets"},{"name":"matplotlib","old_version":"3.10.6","new_version":"3.10.7","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"plotly","old_version":"6.3.0","new_version":"6.5.0","repository_url":"https://github.com/plotly/plotly.py"},{"name":"pytest","old_version":"8.3.5","new_version":"9.0.1","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.13.3","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.44","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.4.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.14.5","repository_url":"https://github.com/astral-sh/ruff"},{"name":"trino","old_version":"0.335.0","new_version":"0.336.0","repository_url":"https://github.com/trinodb/trino-python-client"},{"name":"psycopg2","old_version":"2.9.10","new_version":"2.9.11","repository_url":"https://github.com/psycopg/psycopg2"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.10.0","repository_url":"https://github.com/ClickHouse/clickhouse-connect"},{"name":"polars","old_version":"1.33.1","new_version":"1.35.2","repository_url":"https://github.com/pola-rs/polars"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 30 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.120.1` | `0.121.2` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.12.4` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.43.0` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.2.1` |\n| [orjson](https://github.com/ijl/orjson) | `3.10.16` | `3.11.4` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.18.0` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.10.0` | `4.11.0` |\n| [duckdb](https://github.com/duckdb/duckdb-python) | `1.3.2` | `1.4.2` |\n| [oracledb](https://github.com/oracle/python-oracledb) | `3.3.0` | `3.4.1` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.38.0` |\n| [uvicorn-worker](https://github.com/Kludex/uvicorn-worker) | `0.3.0` | `0.4.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.9` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `50.1.0` |\n| [starlette](https://github.com/Kludex/starlette) | `0.49.1` | `0.49.3` |\n| [databricks-sql-connector](https://github.com/databricks/databricks-sql-python) | `4.1.4` | `4.2.0` |\n| [jupyterlab](https://github.com/jupyterlab/jupyterlab) | `4.4.9` | `4.4.10` |\n| [ipykernel](https://github.com/ipython/ipykernel) | `6.30.1` | `7.1.0` |\n| [ipywidgets](https://github.com/jupyter-widgets/ipywidgets) | `8.1.7` | `8.1.8` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.10.6` | `3.10.7` |\n| [plotly](https://github.com/plotly/plotly.py) | `6.3.0` | `6.5.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `9.0.1` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.13.3` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.44` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.4.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.14.5` |\n| [trino](https://github.com/trinodb/trino-python-client) | `0.335.0` | `0.336.0` |\n| [psycopg2](https://github.com/psycopg/psycopg2) | `2.9.10` | `2.9.11` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.10.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.33.1` | `1.35.2` |\n\n\nUpdates `fastapi` from 0.120.1 to 0.121.2\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's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.121.2\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix handling of JSON Schema attributes named \u0026quot;$ref\u0026quot;. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14349\"\u003e#14349\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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📝 Add EuroPython talk \u0026amp; podcast episode with Sebastián Ramírez. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14260\"\u003e#14260\u003c/a\u003e by \u003ca href=\"https://github.com/clytaemnestra\"\u003e\u003ccode\u003e@​clytaemnestra\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✏️ Fix links and add missing permalink in docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14217\"\u003e#14217\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\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🌐 Update Portuguese translations with LLM prompt. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14228\"\u003e#14228\u003c/a\u003e by \u003ca href=\"https://github.com/ceb10n\"\u003e\u003ccode\u003e@​ceb10n\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔨 Add Portuguese translations LLM prompt. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14208\"\u003e#14208\u003c/a\u003e by \u003ca href=\"https://github.com/ceb10n\"\u003e\u003ccode\u003e@​ceb10n\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Sync Russian docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14331\"\u003e#14331\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Sync German docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14317\"\u003e#14317\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.121.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eDepends(func, scope='function')\u003c/code\u003e for top level (parameterless) dependencies. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14301\"\u003e#14301\u003c/a\u003e by \u003ca href=\"https://github.com/luzzodev\"\u003e\u003ccode\u003e@​luzzodev\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📝 Upate docs for advanced dependencies with \u003ccode\u003eyield\u003c/code\u003e, noting the changes in 0.121.0, adding \u003ccode\u003escope\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14287\"\u003e#14287\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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⬆ Bump ruff from 0.13.2 to 0.14.3. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14276\"\u003e#14276\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ [pre-commit.ci] pre-commit autoupdate. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14289\"\u003e#14289\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\u003ch2\u003e0.121.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Add support for dependencies with scopes, support \u003ccode\u003escope=\u0026quot;request\u0026quot;\u003c/code\u003e for dependencies with \u003ccode\u003eyield\u003c/code\u003e that exit before the response is sent. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14262\"\u003e#14262\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\n\u003cul\u003e\n\u003cli\u003eNew docs: \u003ca href=\"https://fastapi.tiangolo.com/tutorial/dependencies/dependencies-with-yield/#early-exit-and-scope\"\u003eDependencies with \u003ccode\u003eyield\u003c/code\u003e - Early exit and \u003ccode\u003escope\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e👥 Update FastAPI People - Contributors and Translators. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14273\"\u003e#14273\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👥 Update FastAPI People - Sponsors. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14274\"\u003e#14274\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👥 Update FastAPI GitHub topic repositories. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14280\"\u003e#14280\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump mkdocs-macros-plugin from 1.4.0 to 1.4.1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14277\"\u003e#14277\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump mkdocstrings[python] from 0.26.1 to 0.30.1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14279\"\u003e#14279\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.120.4\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix security schemes in OpenAPI when added at the top level app. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14266\"\u003e#14266\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/02e108d1663149faac4156dd23595cbdf74287c2\"\u003e\u003ccode\u003e02e108d\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.121.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d3b75974f48cd180f6f87de39adc475c7bf8900a\"\u003e\u003ccode\u003ed3b7597\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/5d40dfbc9bc1df1c7801acc53857ec7a072b7697\"\u003e\u003ccode\u003e5d40dfb\u003c/code\u003e\u003c/a\u003e 🐛 Fix handling of JSON Schema attributes named \u0026quot;$ref\u0026quot; (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14349\"\u003e#14349\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/eaf611f9ee56de4f16c837d4f487a4b9fca507c4\"\u003e\u003ccode\u003eeaf611f\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/004ab1a9d1c746bf885d4d6428a721074b2c2d78\"\u003e\u003ccode\u003e004ab1a\u003c/code\u003e\u003c/a\u003e 📝 Add EuroPython talk \u0026amp; podcast episode with Sebastián Ramírez (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14260\"\u003e#14260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d1be85c728c64aa3d99f8bc7e9865b342f209117\"\u003e\u003ccode\u003ed1be85c\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/42930fe60065420034b7d6ff4932b25993a68481\"\u003e\u003ccode\u003e42930fe\u003c/code\u003e\u003c/a\u003e ✏️ Fix links and add missing permalink in docs (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14217\"\u003e#14217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/9e362d9f6e66078c67295e5ed5e5918739dfe5f0\"\u003e\u003ccode\u003e9e362d9\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/540a83da65b2e3b219ee3d41c4be7837ab05dc84\"\u003e\u003ccode\u003e540a83d\u003c/code\u003e\u003c/a\u003e 🌐 Update Portuguese translations with LLM prompt (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14228\"\u003e#14228\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/1a2e4152ed1173dc129bf4feb45c84b704c55eb8\"\u003e\u003ccode\u003e1a2e415\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.120.1...0.121.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.10.6 to 2.12.4\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.4 2025-11-05\u003c/h2\u003e\n\u003ch2\u003ev2.12.4 (2025-11-05)\u003c/h2\u003e\n\u003cp\u003eThis is the fourth 2.12 patch release, fixing more regressions, and reverting a change in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis patch release also fixes an issue with the serialization of IP address types, when \u003ccode\u003eserialize_as_any\u003c/code\u003e is used. The next patch release\nwill try to address the remaining issues with \u003cem\u003eserialize as any\u003c/em\u003e behavior by introducing a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature, that\nshould be used in most cases in place of \u003cem\u003eserialize as any\u003c/em\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with forward references in parent \u003ccode\u003eTypedDict\u003c/code\u003e classes 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/12427\"\u003e#12427\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis issue is only relevant on Python 3.14 and greater.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExclude fields with \u003ccode\u003eexclude_if\u003c/code\u003e from JSON Schema required fields 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/12430\"\u003e#12430\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRevert URL percent-encoding of credentials in the \u003ccode\u003ebuild()\u003c/code\u003e method of the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1833\"\u003epydantic-core#1833\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis was initially considered as a bugfix, but caused regressions and as such was fully reverted. The next release will include\nan opt-in option to percent-encode components of the URL.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd type inference for IP address types by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1868\"\u003epydantic-core#1868\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe 2.12 changes to the \u003ccode\u003eserialize_as_any\u003c/code\u003e behavior made it so that IP address types could not properly serialize to JSON.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid getting default values from defaultdict by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1853\"\u003epydantic-core#1853\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis fixes a subtle regression in the validation behavior of the \u003ca href=\"https://docs.python.org/3/library/collections.html#collections.defaultdict\"\u003e\u003ccode\u003ecollections.defaultdict\u003c/code\u003e\u003c/a\u003e\ntype.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with field serializers on nested typed dictionaries by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1879\"\u003epydantic-core#1879\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd more \u003ccode\u003epydantic-core\u003c/code\u003e builds for the three-threaded version of Python 3.14 by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1864\"\u003epydantic-core#1864\u003c/a\u003e.\u003c/p\u003e\n\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.12.3...v2.12.4\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.3...v2.12.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.3 2025-10-17\u003c/h2\u003e\n\u003ch2\u003ev2.12.3 (2025-10-17)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eThis is the third 2.13 patch release, fixing issues related to the \u003ccode\u003eFieldInfo\u003c/code\u003e class, and reverting a change to the supported \u003ca href=\"https://docs.pydantic.dev/latest/concepts/validators/#model-validators\"\u003e\u003cem\u003eafter\u003c/em\u003e model validator\u003c/a\u003e function signatures.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRaise a warning when an invalid after model validator function signature is raised 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/12414\"\u003e#12414\u003c/a\u003e.\nStarting in 2.12.0, using class methods for \u003cem\u003eafter\u003c/em\u003e model validators raised an error, but the error wasn't raised concistently. We decided to emit a deprecation warning instead.\u003c/li\u003e\n\u003cli\u003eAdd \u003ca href=\"https://docs.pydantic.dev/latest/api/fields/#pydantic.fields.FieldInfo.asdict\"\u003e\u003ccode\u003eFieldInfo.asdict()\u003c/code\u003e\u003c/a\u003e method, improve documentation around \u003ccode\u003eFieldInfo\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/12411\"\u003e#12411\u003c/a\u003e.\nThis also adds back support for mutations on \u003ccode\u003eFieldInfo\u003c/code\u003e classes, that are reused as \u003ccode\u003eAnnotated\u003c/code\u003e metadata. \u003cstrong\u003eHowever\u003c/strong\u003e, note that this is still \u003cem\u003enot\u003c/em\u003e a supported pattern. Instead, please refer to the \u003ca href=\"https://docs.pydantic.dev/latest/examples/dynamic_models/\"\u003eadded example\u003c/a\u003e in the documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThe \u003ca href=\"https://pydantic.dev/articles/pydantic-v2-12-release#changes\"\u003eblog post\u003c/a\u003e section on changes was also updated to document the changes related to \u003ccode\u003eserialize_as_any\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.12.2...v2.12.3\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.2...v2.12.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.2 2025-10-14\u003c/h2\u003e\n\u003ch2\u003ev2.12.2 (2025-10-14)\u003c/h2\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pydantic/pydantic/blob/v2.12.4/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.12.4 (2025-11-05)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.4\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis is the fourth 2.12 patch release, fixing more regressions, and reverting a change in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis patch release also fixes an issue with the serialization of IP address types, when \u003ccode\u003eserialize_as_any\u003c/code\u003e is used. The next patch release\nwill try to address the remaining issues with \u003cem\u003eserialize as any\u003c/em\u003e behavior by introducing a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature, that\nshould be used in most cases in place of \u003cem\u003eserialize as any\u003c/em\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with forward references in parent \u003ccode\u003eTypedDict\u003c/code\u003e classes 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/12427\"\u003e#12427\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis issue is only relevant on Python 3.14 and greater.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExclude fields with \u003ccode\u003eexclude_if\u003c/code\u003e from JSON Schema required fields 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/12430\"\u003e#12430\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRevert URL percent-encoding of credentials in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in\n\u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1833\"\u003epydantic-core#1833\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis was initially considered as a bugfix, but caused regressions and as such was fully reverted. The next release will include\nan opt-in option to percent-encode components of the URL.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd type inference for IP address types by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1868\"\u003epydantic-core#1868\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe 2.12 changes to the \u003ccode\u003eserialize_as_any\u003c/code\u003e behavior made it so that IP address types could not properly serialize to JSON.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid getting default values from defaultdict by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1853\"\u003epydantic-core#1853\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis fixes a subtle regression in the validation behavior of the \u003ca href=\"https://docs.python.org/3/library/collections.html#collections.defaultdict\"\u003e\u003ccode\u003ecollections.defaultdict\u003c/code\u003e\u003c/a\u003e\ntype.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with field serializers on nested typed dictionaries by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1879\"\u003epydantic-core#1879\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd more \u003ccode\u003epydantic-core\u003c/code\u003e builds for the three-threaded version of Python 3.14 by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1864\"\u003epydantic-core#1864\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.12.3 (2025-10-17)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.3\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eThis is the third 2.12 patch release, fixing issues related to the \u003ccode\u003eFieldInfo\u003c/code\u003e class, and reverting a change to the supported\n\u003ca href=\"https://docs.pydantic.dev/latest/concepts/validators/#model-validators\"\u003e\u003cem\u003eafter\u003c/em\u003e model validator\u003c/a\u003e function signatures.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRaise a warning when an invalid after model validator function signature is raised 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/12414\"\u003e#12414\u003c/a\u003e.\nStarting in 2.12.0, using class methods for \u003cem\u003eafter\u003c/em\u003e model validators raised an error, but the error wasn't raised concistently. We decided\nto emit a deprecation warning instead.\u003c/li\u003e\n\u003cli\u003eAdd \u003ca href=\"https://docs.pydantic.dev/latest/api/fields/#pydantic.fields.FieldInfo.asdict\"\u003e\u003ccode\u003eFieldInfo.asdict()\u003c/code\u003e\u003c/a\u003e method, improve documentation around \u003ccode\u003eFieldInfo\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/12411\"\u003e#12411\u003c/a\u003e.\nThis also add back support for mutations on \u003ccode\u003eFieldInfo\u003c/code\u003e classes, that are reused as \u003ccode\u003eAnnotated\u003c/code\u003e metadata. \u003cstrong\u003eHowever\u003c/strong\u003e, note that this is still\n\u003cem\u003enot\u003c/em\u003e a supported pattern. Instead, please refer to the \u003ca href=\"https://docs.pydantic.dev/latest/examples/dynamic_models/\"\u003eadded example\u003c/a\u003e in the documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThe \u003ca href=\"https://pydantic.dev/articles/pydantic-v2-12-release#changes\"\u003eblog post\u003c/a\u003e section on changes was also updated to document the changes related to \u003ccode\u003eserialize_as_any\u003c/code\u003e.\u003c/p\u003e\n\u003ch2\u003ev2.12.2 (2025-10-14)\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/pydantic/pydantic/commit/5c842dfc9c245fb37aa1f5ec5b55c1aed10bd7e6\"\u003e\u003ccode\u003e5c842df\u003c/code\u003e\u003c/a\u003e Prepare release v2.12.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c678a710e8b8bb2ff4dce6233c6d5c88dc579136\"\u003e\u003ccode\u003ec678a71\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003epydantic-core\u003c/code\u003e to v2.41.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a7cd29254b2611c5768beb86e7ffd2c1c130a19a\"\u003e\u003ccode\u003ea7cd292\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003ecloudpickle\u003c/code\u003e to v3.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/21f627801b5eedfa87bed55925f73cf329cc9c2c\"\u003e\u003ccode\u003e21f6278\u003c/code\u003e\u003c/a\u003e Bump actions/setup-node from 5 to 6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/8d6be8fea9662203977b95758d97ec298edcd54a\"\u003e\u003ccode\u003e8d6be8f\u003c/code\u003e\u003c/a\u003e Bump astral-sh/setup-uv from 6 to 7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/17865ea3a1fd389ba697990b762f82a419a48221\"\u003e\u003ccode\u003e17865ea\u003c/code\u003e\u003c/a\u003e Bump actions/upload-artifact from 4 to 5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/90ad0af6b9340f72dde77997ed18fc180771e69f\"\u003e\u003ccode\u003e90ad0af\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 5 to 6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/18e6672b6fdeaeb75ccbbcb3c7883509b1f56cb3\"\u003e\u003ccode\u003e18e6672\u003c/code\u003e\u003c/a\u003e Drop testing under PyPy 3.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/650215be2d2336a72af481b724b368fed356d7e8\"\u003e\u003ccode\u003e650215b\u003c/code\u003e\u003c/a\u003e Document workaround for \u003ccode\u003eMongoDsn\u003c/code\u003e default port\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/e3267902272d8290ed6d1ae06f43052b2968ef14\"\u003e\u003ccode\u003ee326790\u003c/code\u003e\u003c/a\u003e Fix example of for \u003ccode\u003ebytes_invalid_encoding\u003c/code\u003e validation error\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.12.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.43.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003egoogle-auth 2.43.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.42.1...v2.43.0\"\u003e2.43.0\u003c/a\u003e (2025-11-05)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd public wrapper for _mtls_helper.check_use_client_cert which enables mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE is not set, when the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1859\"\u003e#1859\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/1535eccb\"\u003e1535eccb\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eEnable mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE  is not set, if the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1848\"\u003e#1848\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/395e405b\"\u003e395e405b\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eonboard \u003ccode\u003egoogle-auth\u003c/code\u003e to librarian (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1838\"\u003e#1838\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/c503eaa5\"\u003ec503eaa5\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.42.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.42.0...v2.42.1\"\u003e2.42.1\u003c/a\u003e (2025-10-30)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCatch ValueError for json.loads() (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1842\"\u003e#1842\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b074cad460589633adfc6744c01726ae86f2aa2b\"\u003eb074cad\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.42.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.41.1...v2.42.0\"\u003e2.42.0\u003c/a\u003e (2025-10-24)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd trust boundary support for external accounts. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1809\"\u003e#1809\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/36ecb1d65883477d27faf9c2281fc289659b9903\"\u003e36ecb1d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRead scopes from ADC json for impersoanted cred (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1820\"\u003e#1820\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/62c0fc82a3625542381f85c698595446fc99ddae\"\u003e62c0fc8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.41.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.41.0...v2.41.1\"\u003e2.41.1\u003c/a\u003e (2025-09-30)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSuppress deprecation warning for ADC (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1815\"\u003e#1815\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/751ce3f625eb24029e9f0c59c081bdd3e18eb583\"\u003e751ce3f\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.41.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.3...v2.41.0\"\u003e2.41.0\u003c/a\u003e (2025-09-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for cachetools 6.0 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1773\"\u003e#1773\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/af18060d521baf86c219d66a26631decb3b28e79\"\u003eaf18060\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd trust boundary support for service accounts and impersonation. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1778\"\u003e#1778\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/99be2ce19401296718f880c7a80cd2e841df78bf\"\u003e99be2ce\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-python/compare/google-auth-v2.42.1...google-auth-v2.43.0\"\u003e2.43.0\u003c/a\u003e (2025-11-05)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd public wrapper for _mtls_helper.check_use_client_cert which enables mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE is not set, when the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1859\"\u003e#1859\u003c/a\u003e) Add public wrapper for check_use_client_cert which enables mTLS if\nGOOGLE_API_USE_CLIENT_CERTIFICATE is not set, when the MWID/X.509 cert\nsources detected. Also, fix check_use_client_cert to return boolean\nvalue.\nChange \u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1848\"\u003e#1848\u003c/a\u003e added the check_use_client_cert method that helps know if\nclient cert should be used for mTLS connection. However, that was in a\nprivate class, thus, created a public wrapper of the same function so\nthat it can be used by python Client Libraries. Also, updated\ncheck_use_client_cert to return a boolean value instead of existing\nstring value for better readability and future scope.\n--------- (\u003ca href=\"https://github.com/googleapis/google-cloud-python/commit/1535eccbff0ad8f3fd6a9775316ac8b77dca66ba\"\u003e1535eccbff0ad8f3fd6a9775316ac8b77dca66ba\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnable mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE  is not set, if the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1848\"\u003e#1848\u003c/a\u003e) The Python SDK will use a hybrid approach for mTLS enablement:\u003c/li\u003e\n\u003c/ul\u003e\n\u003cul\u003e\n\u003cli\u003eIf the GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is set\n(either true or false), the SDK will respect that setting. This is\nnecessary for test scenarios and users who need to explicitly control\nmTLS behavior.\u003c/li\u003e\n\u003cli\u003eIf the GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is not\nset, the SDK will automatically enable mTLS only if it detects Managed\nWorkload Identity (MWID) or X.509 Workforce Identity Federation (WIF)\ncertificate sources. In other cases where the variable is not set, mTLS\nwill remain disabled.\n** This change also adds the helper method \u003ccode\u003echeck_use_client_cert\u003c/code\u003e and\nit's unit test, which will be used for checking the criteria for setting\nthe mTLS to true\n** This change is only for Auth-Library, other changes will be created\nfor Client-Library use-cases.\n--------- (\u003ca href=\"https://github.com/googleapis/google-cloud-python/commit/395e405b64b56ddb82ee639958c2e8056ad2e82b\"\u003e395e405b64b56ddb82ee639958c2e8056ad2e82b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cul\u003e\n\u003cli\u003eonboard \u003ccode\u003egoogle-auth\u003c/code\u003e to librarian (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1838\"\u003e#1838\u003c/a\u003e) This PR onboards \u003ccode\u003egoogle-auth\u003c/code\u003e library to the Librarian system.\nWait for\n\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/pull/1819\"\u003egoogleapis/google-auth-library-python#1819\u003c/a\u003e. (\u003ca href=\"https://github.com/googleapis/google-cloud-python/commit/c503eaa511357d7a76cc1e1f1d3a3be2dabd5bca\"\u003ec503eaa511357d7a76cc1e1f1d3a3be2dabd5bca\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.42.0...v2.42.1\"\u003e2.42.1\u003c/a\u003e (2025-10-30)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCatch ValueError for json.loads() (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1842\"\u003e#1842\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b074cad460589633adfc6744c01726ae86f2aa2b\"\u003eb074cad\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.41.1...v2.42.0\"\u003e2.42.0\u003c/a\u003e (2025-10-24)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd trust boundary support for external accounts. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1809\"\u003e#1809\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/36ecb1d65883477d27faf9c2281fc289659b9903\"\u003e36ecb1d\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/googleapis/google-auth-library-python/commit/89a883824b437e9be0c97309ed36f35e5c071f11\"\u003e\u003ccode\u003e89a8838\u003c/code\u003e\u003c/a\u003e chore: librarian release pull request: 20251105T230735Z (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1863\"\u003e#1863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/79564e20cf5644a29a2269dcc91902b023f4afac\"\u003e\u003ccode\u003e79564e2\u003c/code\u003e\u003c/a\u003e chore: update prev version in state (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1862\"\u003e#1862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/1535eccbff0ad8f3fd6a9775316ac8b77dca66ba\"\u003e\u003ccode\u003e1535ecc\u003c/code\u003e\u003c/a\u003e feat: Add public wrapper for _mtls_helper.check_use_client_cert which enables...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/54502a73170dbe14f04769463c45c9d940f4999b\"\u003e\u003ccode\u003e54502a7\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1860\"\u003e#1860\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/395e405b64b56ddb82ee639958c2e8056ad2e82b\"\u003e\u003ccode\u003e395e405\u003c/code\u003e\u003c/a\u003e feat: Enable mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE  is not set, if the MW...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/f2708b282b108713a8a9a04a5c0d58b253ce2217\"\u003e\u003ccode\u003ef2708b2\u003c/code\u003e\u003c/a\u003e chore: secret upadte (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1857\"\u003e#1857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/c503eaa511357d7a76cc1e1f1d3a3be2dabd5bca\"\u003e\u003ccode\u003ec503eaa\u003c/code\u003e\u003c/a\u003e feat: onboard \u003ccode\u003egoogle-auth\u003c/code\u003e to librarian (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1838\"\u003e#1838\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/5d1b862db2b23b4b7ae7d243f6dbb23165636bd5\"\u003e\u003ccode\u003e5d1b862\u003c/code\u003e\u003c/a\u003e chore(main): release 2.42.1 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1853\"\u003e#1853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b074cad460589633adfc6744c01726ae86f2aa2b\"\u003e\u003ccode\u003eb074cad\u003c/code\u003e\u003c/a\u003e fix: catch ValueError for json.loads() (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1842\"\u003e#1842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/cb62f5727854965e108c4e1790c4f9f9306fe3ce\"\u003e\u003ccode\u003ecb62f57\u003c/code\u003e\u003c/a\u003e chore: secret update (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1851\"\u003e#1851\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.43.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.2.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.2.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport reading .env from FIFOs (Unix) by \u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CI to use trusted publishing on PyPI\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/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003estyle: upgrade to use ruff by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/567\"\u003etheskumar/python-dotenv#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse sys.exit() instead of exit() by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/568\"\u003etheskumar/python-dotenv#568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat:  add \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e flag to disable load_dotenv (fixes \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/510\"\u003e#510\u003c/a\u003e) by \u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded Python@3.14: Github CI \u0026amp; tox.ini by \u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eocs: clarify what load_dotenv() does in README by \u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group across 1 directory with 2 updates 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/theskumar/python-dotenv/pull/577\"\u003etheskumar/python-dotenv#577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove project metadata and config to pyproject.toml by \u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\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/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: ensure find_dotenv work reliably on python 3.13 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003etheskumar/python-dotenv#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cli): issue with execvpe on Windows by \u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\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/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a security policy by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/512\"\u003etheskumar/python-dotenv#512\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep GitHub Actions up to date with GitHub's Dependabot by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/506\"\u003etheskumar/python-dotenv#506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix multiline string in test.yml \u0026amp; use fail-fast strategy by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/514\"\u003etheskumar/python-dotenv#514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnhance dotenv run: Switch to execvpe for better resource management and signal handling by \u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add py3.13 to test.yml by \u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 trove classifier by \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for python 3.13 and drop 3.8 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/551\"\u003etheskumar/python-dotenv#551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update README.md by \u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSome more s/Python-dotenv/python-dotenv/ by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/552\"\u003etheskumar/python-dotenv#552\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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.2.1] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMove more config to \u003ccode\u003epyproject.toml\u003c/code\u003e, removed \u003ccode\u003esetup.cfg\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for reading \u003ccode\u003e.env\u003c/code\u003e from FIFOs (Unix) by [\u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.2.0] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade build system to use PEP 517 \u0026amp; PEP 518 to use \u003ccode\u003ebuild\u003c/code\u003e and \u003ccode\u003epyproject.toml\u003c/code\u003e by [\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/583\"\u003e#583\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14 by [\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for disabling of \u003ccode\u003eload_dotenv()\u003c/code\u003e using \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e env var. by [\u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/569\"\u003e#569\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCLI: revert the use of execvpe on Windows by [\u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003e#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.0] - 2025-03-25\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFeature\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for python 3.13\u003c/li\u003e\n\u003cli\u003eEnhance \u003ccode\u003edotenv run\u003c/code\u003e, switch to \u003ccode\u003eexecvpe\u003c/code\u003e for better resource management and signal handling (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/523\"\u003e#523\u003c/a\u003e) by [\u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efind_dotenv\u003c/code\u003e and \u003ccode\u003eload_dotenv\u003c/code\u003e now correctly looks up at the current directory when running in debugger or pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e by [\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e])\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eMisc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8\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/theskumar/python-dotenv/commit/eaf2a9129ccec6febda0f741eb3bb852c3f947bd\"\u003e\u003ccode\u003eeaf2a91\u003c/code\u003e\u003c/a\u003e Do not remove .coverage file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8716196891532eeb67d24a513e8d975437f5e8b7\"\u003e\u003ccode\u003e8716196\u003c/code\u003e\u003c/a\u003e Bump version: 1.2.0 → 1.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/b87807fcad6e74332c3c63a75c92ce5814fa7a55\"\u003e\u003ccode\u003eb87807f\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/3af77d3029eb717aeec0a3c25f751b6a614a6d3c\"\u003e\u003ccode\u003e3af77d3\u003c/code\u003e\u003c/a\u003e Support reading .env from FIFOs (Unix) (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/467ee22fccb2fb7ccda71a0d9e37c6ea3cb8d993\"\u003e\u003ccode\u003e467ee22\u003c/code\u003e\u003c/a\u003e Fix test failures after moving config to pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/76999e741d87e958ebd74e3ae9834c0514e77a59\"\u003e\u003ccode\u003e76999e7\u003c/code\u003e\u003c/a\u003e Move more config pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/222ce2cc58ebc82ba78da8781269267b9f585932\"\u003e\u003ccode\u003e222ce2c\u003c/code\u003e\u003c/a\u003e Update to use trusted publisher on pypi\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8ed4f79d202eba582b44bdf1f5deb726dd68783d\"\u003e\u003ccode\u003e8ed4f79\u003c/code\u003e\u003c/a\u003e Update docs requirements\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/5bf882241c607445bf02cf5b241535d62e2b99c1\"\u003e\u003ccode\u003e5bf8822\u003c/code\u003e\u003c/a\u003e Bump version: 1.1.1 → 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/1fe11cc737ee4399e9c51d1b69b0dd858f6b4669\"\u003e\u003ccode\u003e1fe11cc\u003c/code\u003e\u003c/a\u003e upadate changelog\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `orjson` from 3.10.16 to 3.11.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ijl/orjson/releases\"\u003eorjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.4\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eABI compatibility with CPython 3.15 alpha 1.\u003c/li\u003e\n\u003cli\u003ePublish PyPI wheels for 3.14 and manylinux i686, manylinux arm7,\nmanylinux ppc64le, manylinux s390x.\u003c/li\u003e\n\u003cli\u003eBuild now requires a C compiler.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared buffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI Windows aarch64/arm64 wheels.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 alpha 7.\u003c/li\u003e\n\u003cli\u003eFix incompatibility running on Python 3.13 using WASM.\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/ijl/orjson/blob/master/CHANGELOG.md\"\u003eorjson's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.4 - 2025-10-24\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eABI compatibility with CPython 3.15 alpha 1.\u003c/li\u003e\n\u003cli\u003ePublish PyPI wheels for 3.14 and manylinux i686, manylinux arm7,\nmanylinux ppc64le, manylinux s390x.\u003c/li\u003e\n\u003cli\u003eBuild now requires a C compiler.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.3 - 2025-08-26\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1 - 2025-07-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures. This was introduced in 3.11.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 - 2025-07-15\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared\nbuffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18 - 2025-04-29\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/ijl/orjson/commit/a4fdeb3aff125d501ec0dd0577f9b38b2b977b4f\"\u003e\u003ccode\u003ea4fdeb3\u003c/code\u003e\u003c/a\u003e 3.11.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2e80d68afacafca8751e6a64ca05d0d4087dbd15\"\u003e\u003ccode\u003e2e80d68\u003c/code\u003e\u003c/a\u003e unlikely to cold_path, remove intrinsics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/27edea92f8da2fdfc3f1342474e2f1686f1edf55\"\u003e\u003ccode\u003e27edea9\u003c/code\u003e\u003c/a\u003e FFI through crate::ffi, partial non-CPython compatibility\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/416a8c9578da780d0d58b5e6b751793deafc610d\"\u003e\u003ccode\u003e416a8c9\u003c/code\u003e\u003c/a\u003e Unconditionally build yyjson\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/c8c1a17dca8436a2fee05ca060febd096e653d98\"\u003e\u003ccode\u003ec8c1a17\u003c/code\u003e\u003c/a\u003e edition 2024\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/af4179a1fa0aafffd0f867203b6c36e9a522f165\"\u003e\u003ccode\u003eaf4179a\u003c/code\u003e\u003c/a\u003e build maintenance, panic_immediate_abort break, test 3.15\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/aa8c946cfbe2aba29016bc9c9ddc8713cb00173b\"\u003e\u003ccode\u003eaa8c946\u003c/code\u003e\u003c/a\u003e 3.11.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2442efc125068e43bec97c26e3a6b5da8932936c\"\u003e\u003ccode\u003e2442efc\u003c/code\u003e\u003c/a\u003e Fix PyPI project metadata when using maturin 1.9.2 or later\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/ba760146e7bc407d729436d8dbcb9e1495c83773\"\u003e\u003ccode\u003eba76014\u003c/code\u003e\u003c/a\u003e 3.11.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/49315905a4f071f2279b6df87125ca94780b5173\"\u003e\u003ccode\u003e4931590\u003c/code\u003e\u003c/a\u003e CPython compatibility misc\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ijl/orjson/compare/3.10.16...3.11.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geoalchemy2` from 0.17.1 to 0.18.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/releases\"\u003egeoalchemy2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/538\"\u003egeoalchemy/geoalchemy2#538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/540\"\u003egeoalchemy/geoalchemy2#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCompile literal binds by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/543\"\u003egeoalchemy/geoalchemy2#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/544\"\u003egeoalchemy/geoalchemy2#544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore (mariadb): Stop converting WKB to WKT by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/545\"\u003egeoalchemy/geoalchemy2#545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker containers by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/546\"\u003egeoalchemy/geoalchemy2#546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/547\"\u003egeoalchemy/geoalchemy2#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/553\"\u003egeoalchemy/geoalchemy2#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/554\"\u003egeoalchemy/geoalchemy2#554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Improve readbility of benchmark results by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/556\"\u003egeoalchemy/geoalchemy2#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/555\"\u003egeoalchemy/geoalchemy2#555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/557\"\u003egeoalchemy/geoalchemy2#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Remove warning message from MySQL/MariaDB reflection by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/560\"\u003egeoalchemy/geoalchemy2#560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/561\"\u003egeoalchemy/geoalchemy2#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: correct doc strings by \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/564\"\u003egeoalchemy/geoalchemy2#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.0 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/565\"\u003egeoalchemy/geoalchemy2#565\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/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.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/geoalchemy/geoalchemy2/blob/master/CHANGES.txt\"\u003egeoalchemy2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Fix doc strings for cache enabled - \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e(papacodebear/master) Fix: Remove warning from MySQL/MariaDB reflection \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Improve readability of benchmark results \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/547\"\u003e#547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker container \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/546\"\u003e#546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf (mariadb): Stop converting WKB to WKT \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/545\"\u003e#545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/544\"\u003e#544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Compile literal binds properly \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/540\"\u003e#540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/538\"\u003e#538\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/geoalchemy/geoalchemy2/commit/60767082df9f4587fadd56ab94847ebc39df8295\"\u003e\u003ccode\u003e6076708\u003c/code\u003e\u003c/a\u003e Release: 0.18.0 (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/565\"\u003e#565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/e13112177bdf79cae0d72a6e89d815dc272e3dc5\"\u003e\u003ccode\u003ee131121\u003c/code\u003e\u003c/a\u003e Feat: Add support of spatial indexes for Raster type for PostgreSQL (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/0b432086a0c3b8ab160c5cc1864aa65e02f35362\"\u003e\u003ccode\u003e0b43208\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/8791b2eec013f21f599ca060d9fee4aba72ec2a1\"\u003e\u003ccode\u003e8791b2e\u003c/code\u003e\u003c/a\u003e Docs: Fix doc strings for cache enabled (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/d3c1d04c8b462c61132403e44a7a4f04a487c142\"\u003e\u003ccode\u003ed3c1d04\u003c/code\u003e\u003c/a\u003e Chore: Move reflection type registering (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/24dc5d05d97fb9a2a57103c1823a58f06940a5e8\"\u003e\u003ccode\u003e24dc5d0\u003c/code\u003e\u003c/a\u003e Fix: Remove warning from MySQL/MariaDB reflection (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/71f7914d4ddf7d9c46c772e36a8463e20901966a\"\u003e\u003ccode\u003e71f7914\u003c/code\u003e\u003c/a\u003e Feat: Handle computed columns (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/c139cdbca62019d92d18f12429706732777c38e2\"\u003e\u003ccode\u003ec139cdb\u003c/code\u003e\u003c/a\u003e Perf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/2e94baa4f3ac23e0160ed841d4efe7ceb3fa2378\"\u003e\u003ccode\u003e2e94baa\u003c/code\u003e\u003c/a\u003e Test: Improve readbility of benchmark results (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/84292bc352ab7ff1102a0529772d32afb0309616\"\u003e\u003ccode\u003e84292bc\u003c/code\u003e\u003c/a\u003e Chore: Create FUNDING.yml (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gql` from 3.5.2 to 4.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/graphql-python/gql/releases\"\u003egql's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eChange transports prototype using GraphQLRequest (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/551\"\u003e#551\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUsing GraphQLRequest instead of DocumentNode for gql, execute, subscribe methods (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/556\"\u003e#556\u003c/a\u003e):\n\u003cstrong\u003eThis is a big change:\u003c/strong\u003e\n\u003cul\u003e\n\u003cli\u003ethe \u003ccode\u003egql\u003c/code\u003e and \u003ccode\u003edsl_gql\u003c/code\u003e methods will now return a \u003ccode\u003eGraphQLRequest\u003c/code\u003e instead of a \u003ccode\u003eDocument\u003c/code\u003e Node\na \u003ccode\u003eGraphQLRequest\u003c/code\u003e is an object containing the document and optional \u003ccode\u003evariable_values\u003c/code\u003e and \u003ccode\u003eoperation_name\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eALL the \u003ccode\u003eexecute\u003c/code\u003e and \u003ccode\u003esubscribe\u003c/code\u003e methods now receive a \u003ccode\u003eGraphQLRequest\u003c/code\u003e as main argument instead of\na \u003ccode\u003eDocumentNode\u003c/code\u003e, \u003ccode\u003evariable_values\u003c/code\u003e and \u003ccode\u003eoperation_name\u003c/code\u003e arguments\u003c/li\u003e\n\u003cli\u003eThe old method of sending \u003ccode\u003evariable_values\u003c/code\u003e as an argument of \u003ccode\u003eexecute\u003c/code\u003e or \u003ccode\u003esubscribe\u003c/code\u003e still works but is deprecated\nSee \u003ca href=\"https://gql.readthedocs.io/en/latest/usage/variables.html\"\u003ehttps://gql.readthedocs.io/en/latest/usage/variables.html\u003c/a\u003e for the new syntax.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix subscription task cancel exception swallow (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/548\"\u003e#548\u003c/a\u003e):\nPreviously if a task was cancelled while a subscription task was active,\nthe \u003ccode\u003easyncio.CancelledError\u003c/code\u003e Exception would be swallowed by our code.\nThis is not the case anymore so you should now trap that Exception yourself.\u003c/li\u003e\n\u003cli\u003eClean up the file upload interface with FileVar class (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/549\"\u003e#549\u003c/a\u003e):\nThe file upload functionality has been modified to require \u003ccode\u003eFileVar\u003c/code\u003e instances\nfor uploaded files (the old method still works but is deprecated).\nSee \u003ca href=\"https://gql.readthedocs.io/en/latest/usage/file_upload.html\"\u003ehttps://gql.readthedocs.io/en/latest/usage/file_upload.html\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSet logging level to DEBUG for all transports (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/552\"\u003e#552\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eintrospection now requests deprecated input fields by default (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/553\"\u003e#553\u003c/a\u003e)\nNote that some backends might not support this and return \u003ccode\u003eUnknown argument includeDeprecated\u003c/code\u003e. See \u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/564\"\u003e#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTrapping dependencies Exceptions into TransportConnectionFailed (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/558\"\u003e#558\u003c/a\u003e):\nNow gql will trap Exceptions raised by dependencies when executing a request and will\nencapsulate that Exception into the \u003ccode\u003eTransportConnectionFailed\u003c/code\u003e Exception\u003c/li\u003e\n\u003cli\u003eSet \u003cstrong\u003essl=True\u003c/strong\u003e by default for AIOHTTPTransport (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/538\"\u003e#538\u003c/a\u003e) (issue \u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/529\"\u003e#529\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eTransportConnectionClosed\u003c/code\u003e Exception replacing \u003ccode\u003eConnectionClosed\u003c/code\u003e Exception (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/536\"\u003e#536\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ewebsocket\u003c/code\u003e attribute removed from transport, now using \u003ccode\u003e_connected\u003c/code\u003e instead (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/536\"\u003e#536\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade lastest websockets and Exceptions overhaul (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cp\u003eBatching requests is now fully supported, on sync or async transports, with automatic batching:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImplementation of execute_batch for async transports (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/550\"\u003e#550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImplementation of automatic batching for async (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://gql.readthedocs.io/en/latest/advanced/batching_requests.html\"\u003ehttps://gql.readthedocs.io/en/latest/advanced/batching_requests.html\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix httpx test deprecated warning (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/542\"\u003e#542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRefactor websoc...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1379","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1379","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1379/packages"},{"uuid":"3558163248","node_id":"PR_kwDOHTdvBs6v93uY","number":1355,"state":"closed","title":"deps(ibis): bump the all group across 1 directory with 29 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2025-11-03T18:56:38.000Z","author_association":null,"state_reason":null,"created_at":"2025-10-27T18:52:08.000Z","updated_at":"2025-11-03T18:56:40.000Z","time_to_close":605070,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":29,"packages":[{"name":"fastapi","old_version":"0.116.1","new_version":"0.120.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"pydantic","old_version":"2.10.6","new_version":"2.12.3","repository_url":"https://github.com/pydantic/pydantic"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.41.1","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.2.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"orjson","old_version":"3.10.16","new_version":"3.11.4","repository_url":"https://github.com/ijl/orjson"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.18.0","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"sqlglot","old_version":"27.14.0","new_version":"27.28.1","repository_url":"https://github.com/tobymao/sqlglot"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"anyio","old_version":"4.10.0","new_version":"4.11.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"duckdb","old_version":"1.3.2","new_version":"1.4.1","repository_url":"https://github.com/duckdb/duckdb-python"},{"name":"oracledb","old_version":"3.3.0","new_version":"3.4.0","repository_url":"https://github.com/oracle/python-oracledb"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.38.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"uvicorn-worker","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/Kludex/uvicorn-worker"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.9","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"50.1.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"jupyterlab","old_version":"4.4.9","new_version":"4.4.10","repository_url":"https://github.com/jupyterlab/jupyterlab"},{"name":"ipykernel","old_version":"6.30.1","new_version":"7.1.0","repository_url":"https://github.com/ipython/ipykernel"},{"name":"matplotlib","old_version":"3.10.6","new_version":"3.10.7","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"plotly","old_version":"6.3.0","new_version":"6.3.1","repository_url":"https://github.com/plotly/plotly.py"},{"name":"pytest","old_version":"8.3.5","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.13.2","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.44","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.14.2","repository_url":"https://github.com/astral-sh/ruff"},{"name":"trino","old_version":"0.335.0","new_version":"0.336.0","repository_url":"https://github.com/trinodb/trino-python-client"},{"name":"psycopg2","old_version":"2.9.10","new_version":"2.9.11","repository_url":"https://github.com/psycopg/psycopg2"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.9.2","repository_url":"https://github.com/ClickHouse/clickhouse-connect"},{"name":"polars","old_version":"1.33.1","new_version":"1.34.0","repository_url":"https://github.com/pola-rs/polars"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 29 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.116.1` | `0.120.1` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.12.3` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.41.1` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.2.1` |\n| [orjson](https://github.com/ijl/orjson) | `3.10.16` | `3.11.4` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.3` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.18.0` |\n| [sqlglot](https://github.com/tobymao/sqlglot) | `27.14.0` | `27.28.1` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.10.0` | `4.11.0` |\n| [duckdb](https://github.com/duckdb/duckdb-python) | `1.3.2` | `1.4.1` |\n| [oracledb](https://github.com/oracle/python-oracledb) | `3.3.0` | `3.4.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.38.0` |\n| [uvicorn-worker](https://github.com/Kludex/uvicorn-worker) | `0.3.0` | `0.4.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.9` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `50.1.0` |\n| [jupyterlab](https://github.com/jupyterlab/jupyterlab) | `4.4.9` | `4.4.10` |\n| [ipykernel](https://github.com/ipython/ipykernel) | `6.30.1` | `7.1.0` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.10.6` | `3.10.7` |\n| [plotly](https://github.com/plotly/plotly.py) | `6.3.0` | `6.3.1` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `8.4.2` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.13.2` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.44` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.3.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.14.2` |\n| [trino](https://github.com/trinodb/trino-python-client) | `0.335.0` | `0.336.0` |\n| [psycopg2](https://github.com/psycopg/psycopg2) | `2.9.10` | `2.9.11` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.9.2` |\n| [polars](https://github.com/pola-rs/polars) | `1.33.1` | `1.34.0` |\n\n\nUpdates `fastapi` from 0.116.1 to 0.120.1\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's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.120.1\u003c/h2\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Bump Starlette to \u0026lt;\u003ccode\u003e0.50.0\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14234\"\u003e#14234\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\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🔧 Add \u003ccode\u003elicense\u003c/code\u003e and \u003ccode\u003elicense-files\u003c/code\u003e to \u003ccode\u003epyproject.toml\u003c/code\u003e, remove \u003ccode\u003eLicense\u003c/code\u003e from \u003ccode\u003eclassifiers\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14230\"\u003e#14230\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.120.0\u003c/h2\u003e\n\u003cp\u003eThere are no major nor breaking changes in this release. ☕️\u003c/p\u003e\n\u003cp\u003eThe internal reference documentation now uses \u003ccode\u003eannotated_doc.Doc\u003c/code\u003e instead of \u003ccode\u003etyping_extensions.Doc\u003c/code\u003e, this adds a new (very small) dependency on \u003ca href=\"https://github.com/fastapi/annotated-doc\"\u003e\u003ccode\u003eannotated-doc\u003c/code\u003e\u003c/a\u003e, a package made just to provide that \u003ccode\u003eDoc\u003c/code\u003e documentation utility class.\u003c/p\u003e\n\u003cp\u003eI would expect \u003ccode\u003etyping_extensions.Doc\u003c/code\u003e to be deprecated and then removed at some point from \u003ccode\u003etyping_extensions\u003c/code\u003e, for that reason there's the new \u003ccode\u003eannotated-doc\u003c/code\u003e micro-package. If you are curious about this, you can read more in the repo for \u003ca href=\"https://github.com/fastapi/annotated-doc\"\u003e\u003ccode\u003eannotated-doc\u003c/code\u003e\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis new version \u003ccode\u003e0.120.0\u003c/code\u003e only contains that transition to the new home package for that utility class \u003ccode\u003eDoc\u003c/code\u003e.\u003c/p\u003e\n\u003ch3\u003eTranslations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🌐 Sync German docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14188\"\u003e#14188\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\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➕ Migrate internal reference documentation from \u003ccode\u003etyping_extensions.Doc\u003c/code\u003e to \u003ccode\u003eannotated_doc.Doc\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14222\"\u003e#14222\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🛠️ Update German LLM prompt and test file. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14189\"\u003e#14189\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ [pre-commit.ci] pre-commit autoupdate. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14181\"\u003e#14181\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\u003ch2\u003e0.119.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix internal Pydantic v1 compatibility (warnings) for Python 3.14 and Pydantic 2.12.1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14186\"\u003e#14186\u003c/a\u003e by \u003ca href=\"https://github.com/svlandeg\"\u003e\u003ccode\u003e@​svlandeg\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📝 Replace \u003ccode\u003estarlette.io\u003c/code\u003e by \u003ccode\u003estarlette.dev\u003c/code\u003e and \u003ccode\u003euvicorn.org\u003c/code\u003e by \u003ccode\u003euvicorn.dev\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14176\"\u003e#14176\u003c/a\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\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🔧 Add sponsor Requestly. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14205\"\u003e#14205\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔧 Configure reminder for \u003ccode\u003ewaiting\u003c/code\u003e label in \u003ccode\u003eissue-manager\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14156\"\u003e#14156\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.119.0\u003c/h2\u003e\n\u003cp\u003eFastAPI now (temporarily) supports both Pydantic v2 models and \u003ccode\u003epydantic.v1\u003c/code\u003e models at the same time in the same app, to make it easier for any FastAPI apps still using Pydantic v1 to gradually but quickly \u003cstrong\u003emigrate to Pydantic v2\u003c/strong\u003e.\u003c/p\u003e\n\u003cpre lang=\"Python\"\u003e\u003ccode\u003efrom fastapi import FastAPI\nfrom pydantic import BaseModel as BaseModelV2\nfrom pydantic.v1 import BaseModel\n\u003cp\u003e\u0026lt;/tr\u0026gt;\u0026lt;/table\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\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/fastapi/fastapi/commit/78c94c3f565b9b992d1eecafaeb0991e2b177d7c\"\u003e\u003ccode\u003e78c94c3\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.120.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/4b0301b2803ff98efa638de90ebac05a76a85e20\"\u003e\u003ccode\u003e4b0301b\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/436932aef587e8120439f545ad25220114ea15ab\"\u003e\u003ccode\u003e436932a\u003c/code\u003e\u003c/a\u003e ⬆️ Bump Starlette to \u0026lt;\u003ccode\u003e0.50.0\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14234\"\u003e#14234\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/3ea6a4a0b14583c690b31cbd6951d561f1b6da5c\"\u003e\u003ccode\u003e3ea6a4a\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/96dd32718b36155e221e96a3025f71d654d5031a\"\u003e\u003ccode\u003e96dd327\u003c/code\u003e\u003c/a\u003e 🔧 Add \u003ccode\u003elicense\u003c/code\u003e and \u003ccode\u003elicense-files\u003c/code\u003e to \u003ccode\u003epyproject.toml\u003c/code\u003e, remove \u003ccode\u003eLicense\u003c/code\u003e fro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/cd40c5b40ffd8ba0c6a6a6c96bbf34ec1cf9c525\"\u003e\u003ccode\u003ecd40c5b\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.120.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/1c6ee57bbfeebfa21a393b7939c85d9d4d29f0b0\"\u003e\u003ccode\u003e1c6ee57\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/09f40968cb03e878aa25bc83340f891b09d1e418\"\u003e\u003ccode\u003e09f4096\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d390f2e41fb508de416071d481937bc7be486589\"\u003e\u003ccode\u003ed390f2e\u003c/code\u003e\u003c/a\u003e ➕ Migrate internal reference documentation from \u003ccode\u003etyping_extensions.Doc\u003c/code\u003e to `a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/cb7018d782c88b189f11d6141c8231ffb9b403b0\"\u003e\u003ccode\u003ecb7018d\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.116.1...0.120.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.10.6 to 2.12.3\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.3 2025-10-17\u003c/h2\u003e\n\u003ch2\u003ev2.12.3 (2025-10-17)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eThis is the third 2.13 patch release, fixing issues related to the \u003ccode\u003eFieldInfo\u003c/code\u003e class, and reverting a change to the supported \u003ca href=\"https://docs.pydantic.dev/latest/concepts/validators/#model-validators\"\u003e\u003cem\u003eafter\u003c/em\u003e model validator\u003c/a\u003e function signatures.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRaise a warning when an invalid after model validator function signature is raised 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/12414\"\u003e#12414\u003c/a\u003e.\nStarting in 2.12.0, using class methods for \u003cem\u003eafter\u003c/em\u003e model validators raised an error, but the error wasn't raised concistently. We decided to emit a deprecation warning instead.\u003c/li\u003e\n\u003cli\u003eAdd \u003ca href=\"https://docs.pydantic.dev/latest/api/fields/#pydantic.fields.FieldInfo.asdict\"\u003e\u003ccode\u003eFieldInfo.asdict()\u003c/code\u003e\u003c/a\u003e method, improve documentation around \u003ccode\u003eFieldInfo\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/12411\"\u003e#12411\u003c/a\u003e.\nThis also adds back support for mutations on \u003ccode\u003eFieldInfo\u003c/code\u003e classes, that are reused as \u003ccode\u003eAnnotated\u003c/code\u003e metadata. \u003cstrong\u003eHowever\u003c/strong\u003e, note that this is still \u003cem\u003enot\u003c/em\u003e a supported pattern. Instead, please refer to the \u003ca href=\"https://docs.pydantic.dev/latest/examples/dynamic_models/\"\u003eadded example\u003c/a\u003e in the documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThe \u003ca href=\"https://pydantic.dev/articles/pydantic-v2-12-release#changes\"\u003eblog post\u003c/a\u003e section on changes was also updated to document the changes related to \u003ccode\u003eserialize_as_any\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.12.2...v2.12.3\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.2...v2.12.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.2 2025-10-14\u003c/h2\u003e\n\u003ch2\u003ev2.12.2 (2025-10-14)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRelease a new \u003ccode\u003epydantic-core\u003c/code\u003e version, as a corrupted CPython 3.10 \u003ccode\u003emanylinux2014_aarch64\u003c/code\u003e wheel got uploaded (\u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1843\"\u003epydantic-core#1843\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix issue with recursive generic models with a parent model class 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/12398\"\u003e#12398\u003c/a\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.12.1...v2.12.2\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.1...v2.12.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.1 2025-10-13\u003c/h2\u003e\n\u003ch2\u003ev2.12.1 (2025-10-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.1\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eThis is the first 2.12 patch release, addressing most (but not all yet) regressions from the initial 2.12.0 release.\u003c/p\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eDo not evaluate annotations when inspecting validators and serializers 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/12355\"\u003e#12355\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake sure \u003ccode\u003eNone\u003c/code\u003e is converted as \u003ccode\u003eNoneType\u003c/code\u003e in Python 3.14 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/12370\"\u003e#12370\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBackport V1 runtime warning when using Python 3.14 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/12367\"\u003e#12367\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix error message for invalid validator signatures 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/12366\"\u003e#12366\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePopulate field name in \u003ccode\u003eValidationInfo\u003c/code\u003e for validation of default value 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-core/pull/1826\"\u003epydantic-core#1826\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEncode credentials in \u003ccode\u003eMultiHostUrl\u003c/code\u003e builder by \u003ca href=\"https://github.com/willswire\"\u003e\u003ccode\u003e@​willswire\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1829\"\u003epydantic-core#1829\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRespect field serializers when using \u003ccode\u003eserialize_as_any\u003c/code\u003e serialization flag by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1829\"\u003epydantic-core#1829\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix various \u003ccode\u003eRootModel\u003c/code\u003e serialization issues by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1836\"\u003epydantic-core#1836\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNew Contributors\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/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.3 (2025-10-17)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.3\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eThis is the third 2.12 patch release, fixing issues related to the \u003ccode\u003eFieldInfo\u003c/code\u003e class, and reverting a change to the supported\n\u003ca href=\"https://docs.pydantic.dev/latest/concepts/validators/#model-validators\"\u003e\u003cem\u003eafter\u003c/em\u003e model validator\u003c/a\u003e function signatures.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRaise a warning when an invalid after model validator function signature is raised 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/12414\"\u003e#12414\u003c/a\u003e.\nStarting in 2.12.0, using class methods for \u003cem\u003eafter\u003c/em\u003e model validators raised an error, but the error wasn't raised concistently. We decided\nto emit a deprecation warning instead.\u003c/li\u003e\n\u003cli\u003eAdd \u003ca href=\"https://docs.pydantic.dev/latest/api/fields/#pydantic.fields.FieldInfo.asdict\"\u003e\u003ccode\u003eFieldInfo.asdict()\u003c/code\u003e\u003c/a\u003e method, improve documentation around \u003ccode\u003eFieldInfo\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/12411\"\u003e#12411\u003c/a\u003e.\nThis also add back support for mutations on \u003ccode\u003eFieldInfo\u003c/code\u003e classes, that are reused as \u003ccode\u003eAnnotated\u003c/code\u003e metadata. \u003cstrong\u003eHowever\u003c/strong\u003e, note that this is still\n\u003cem\u003enot\u003c/em\u003e a supported pattern. Instead, please refer to the \u003ca href=\"https://docs.pydantic.dev/latest/examples/dynamic_models/\"\u003eadded example\u003c/a\u003e in the documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThe \u003ca href=\"https://pydantic.dev/articles/pydantic-v2-12-release#changes\"\u003eblog post\u003c/a\u003e section on changes was also updated to document the changes related to \u003ccode\u003eserialize_as_any\u003c/code\u003e.\u003c/p\u003e\n\u003ch2\u003ev2.12.2 (2025-10-14)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.2\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRelease a new \u003ccode\u003epydantic-core\u003c/code\u003e version, as a corrupted CPython 3.10 \u003ccode\u003emanylinux2014_aarch64\u003c/code\u003e wheel got uploaded (\u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1843\"\u003epydantic-core#1843\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix issue with recursive generic models with a parent model class 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/12398\"\u003e#12398\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.12.1 (2025-10-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.1\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eThis is the first 2.12 patch release, addressing most (but not all yet) regressions from the initial 2.12.0 release.\u003c/p\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eDo not evaluate annotations when inspecting validators and serializers 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/12355\"\u003e#12355\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake sure \u003ccode\u003eNone\u003c/code\u003e is converted as \u003ccode\u003eNoneType\u003c/code\u003e in Python 3.14 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/12370\"\u003e#12370\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBackport V1 runtime warning when using Python 3.14 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/12367\"\u003e#12367\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix error message for invalid validator signatures 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/12366\"\u003e#12366\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePopulate field name in \u003ccode\u003eValidationInfo\u003c/code\u003e for validation of default value 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-core/pull/1826\"\u003epydantic-core#1826\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEncode credentials in \u003ccode\u003eMultiHostUrl\u003c/code\u003e builder by \u003ca href=\"https://github.com/willswire\"\u003e\u003ccode\u003e@​willswire\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1829\"\u003epydantic-core#1829\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRespect field serializers when using \u003ccode\u003eserialize_as_any\u003c/code\u003e serialization flag by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1829\"\u003epydantic-core#1829\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix various \u003ccode\u003eRootModel\u003c/code\u003e serialization issues by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1836\"\u003epydantic-core#1836\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNew Contributors\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/1a8850d101e67d2744ba8c6286e1172d7cd89d0b\"\u003e\u003ccode\u003e1a8850d\u003c/code\u003e\u003c/a\u003e Prepare release 2.12.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/09dbcf29c73c3fd7fd3ef1edfebe357e807cc9ca\"\u003e\u003ccode\u003e09dbcf2\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eFieldInfo.asdict()\u003c/code\u003e method, improve documentation around \u003ccode\u003eFieldInfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/5da43310ec61a7b9b3017b2b9f388e778398a1bc\"\u003e\u003ccode\u003e5da4331\u003c/code\u003e\u003c/a\u003e Improve documentation about serialize as any behavior\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/9c863245ad3799ab331f33b52e2d7441e9c1191e\"\u003e\u003ccode\u003e9c86324\u003c/code\u003e\u003c/a\u003e Raise a warning when an invalid after model validator function signature is r...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/36a73c6ed53df7f1cad3343bc811e1dd3f52d26f\"\u003e\u003ccode\u003e36a73c6\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003epydantic-extra-types\u003c/code\u003e dependency to version \u003ccode\u003e\u0026gt;=2.10.6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/1e616a3a6fa0201f840c08143cac883e56a2d9df\"\u003e\u003ccode\u003e1e616a3\u003c/code\u003e\u003c/a\u003e Prepare release v2.12.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/dc302e2d09f0eed14729f69bc61a258f1f35d35c\"\u003e\u003ccode\u003edc302e2\u003c/code\u003e\u003c/a\u003e Fix issue with recursive generic models with a parent model class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/6876485d0cffeb66c915695574344ae4b03645a7\"\u003e\u003ccode\u003e6876485\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003epydantic-core\u003c/code\u003e to v2.41.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/b4076c66773b514d4891f036a4cc562b8ff0ff21\"\u003e\u003ccode\u003eb4076c6\u003c/code\u003e\u003c/a\u003e Prepare release 2.12.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/b67f07291167b4005a6eeee05fcad67b43a53f41\"\u003e\u003ccode\u003eb67f072\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003epydantic-core\u003c/code\u003e to v2.41.3\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.12.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.41.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.41.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.41.0...v2.41.1\"\u003e2.41.1\u003c/a\u003e (2025-09-30)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSuppress deprecation warning for ADC (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1815\"\u003e#1815\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/751ce3f625eb24029e9f0c59c081bdd3e18eb583\"\u003e751ce3f\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.41.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.3...v2.41.0\"\u003e2.41.0\u003c/a\u003e (2025-09-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for cachetools 6.0 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1773\"\u003e#1773\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/af18060d521baf86c219d66a26631decb3b28e79\"\u003eaf18060\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd trust boundary support for service accounts and impersonation. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1778\"\u003e#1778\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/99be2ce19401296718f880c7a80cd2e841df78bf\"\u003e99be2ce\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecating \u003ca href=\"https://googleapis.dev/python/google-auth/latest/reference/google.auth.html#google.auth.load_credentials_from_dict\"\u003eload_credentials_from_dict\u003c/a\u003e (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/58b66ec8069bfe5304c7da512fe89a8e838ce1ca\"\u003e58b66ec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDeprecating \u003ca href=\"https://googleapis.dev/python/google-auth/latest/reference/google.auth.html#google.auth.load_credentials_from_file\"\u003eload_credentials_from_file\u003c/a\u003e (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/58b66ec8069bfe5304c7da512fe89a8e838ce1ca\"\u003e58b66ec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix type error in credentials.py for python 3.7 and 3.8 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1805\"\u003e#1805\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/c30a6a781d3e385598a0ac28a370a7f4800010cc\"\u003ec30a6a7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate user guide to include x509 feature. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1802\"\u003e#1802\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2d89ab4d85568564e1f462f5b463991ffd9b82b1\"\u003e2d89ab4\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.41.0...v2.41.1\"\u003e2.41.1\u003c/a\u003e (2025-09-30)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSuppress deprecation warning for ADC (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1815\"\u003e#1815\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/751ce3f625eb24029e9f0c59c081bdd3e18eb583\"\u003e751ce3f\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.3...v2.41.0\"\u003e2.41.0\u003c/a\u003e (2025-09-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for cachetools 6.0 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1773\"\u003e#1773\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/af18060d521baf86c219d66a26631decb3b28e79\"\u003eaf18060\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd trust boundary support for service accounts and impersonation. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1778\"\u003e#1778\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/99be2ce19401296718f880c7a80cd2e841df78bf\"\u003e99be2ce\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecating \u003ca href=\"https://googleapis.dev/python/google-auth/latest/reference/google.auth.html#google.auth.load_credentials_from_dict\"\u003eload_credentials_from_dict\u003c/a\u003e (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/58b66ec8069bfe5304c7da512fe89a8e838ce1ca\"\u003e58b66ec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDeprecating \u003ca href=\"https://googleapis.dev/python/google-auth/latest/reference/google.auth.html#google.auth.load_credentials_from_file\"\u003eload_credentials_from_file\u003c/a\u003e (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/58b66ec8069bfe5304c7da512fe89a8e838ce1ca\"\u003e58b66ec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix type error in credentials.py for python 3.7 and 3.8 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1805\"\u003e#1805\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/c30a6a781d3e385598a0ac28a370a7f4800010cc\"\u003ec30a6a7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate user guide to include x509 feature. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1802\"\u003e#1802\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2d89ab4d85568564e1f462f5b463991ffd9b82b1\"\u003e2d89ab4\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable logging response body for async logs (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1756\"\u003e#1756\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2f0ddfeb9f6c726c68beebd7eefd32c86f7f0963\"\u003e2f0ddfe\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/googleapis/google-auth-library-python/commit/ebf33636bc3e525de37f331b75fade6b61c950cb\"\u003e\u003ccode\u003eebf3363\u003c/code\u003e\u003c/a\u003e chore(main): release 2.41.1 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1816\"\u003e#1816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/751ce3f625eb24029e9f0c59c081bdd3e18eb583\"\u003e\u003ccode\u003e751ce3f\u003c/code\u003e\u003c/a\u003e fix: suppress deprecation warning for ADC (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1815\"\u003e#1815\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/819199ac180e368823e1364695273aa41851cc6e\"\u003e\u003ccode\u003e819199a\u003c/code\u003e\u003c/a\u003e chore(main): release 2.41.0 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1797\"\u003e#1797\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/58b66ec8069bfe5304c7da512fe89a8e838ce1ca\"\u003e\u003ccode\u003e58b66ec\u003c/code\u003e\u003c/a\u003e fix: Deprecating generic load methods and adding warnings on few cred types (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/1e8a867a84c26c249ad9bf659d9bdf61183883c7\"\u003e\u003ccode\u003e1e8a867\u003c/code\u003e\u003c/a\u003e chore: update owners (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1813\"\u003e#1813\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/c30a6a781d3e385598a0ac28a370a7f4800010cc\"\u003e\u003ccode\u003ec30a6a7\u003c/code\u003e\u003c/a\u003e fix: fix type error in credentials.py for python 3.7 and 3.8 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1805\"\u003e#1805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/03dfee20e3c2d6e232e12eb78ef4201244ce7c13\"\u003e\u003ccode\u003e03dfee2\u003c/code\u003e\u003c/a\u003e chore: secret update (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1806\"\u003e#1806\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2d89ab4d85568564e1f462f5b463991ffd9b82b1\"\u003e\u003ccode\u003e2d89ab4\u003c/code\u003e\u003c/a\u003e docs: update user guide to include x509 feature. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1802\"\u003e#1802\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/03e640ed4ba4a6afbbe4462beb43a95b60744ed7\"\u003e\u003ccode\u003e03e640e\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1803\"\u003e#1803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/99be2ce19401296718f880c7a80cd2e841df78bf\"\u003e\u003ccode\u003e99be2ce\u003c/code\u003e\u003c/a\u003e feat: Add trust boundary support for service accounts and impersonation. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1778\"\u003e#1778\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.41.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.2.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.2.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport reading .env from FIFOs (Unix) by \u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CI to use trusted publishing on PyPI\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/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003estyle: upgrade to use ruff by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/567\"\u003etheskumar/python-dotenv#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse sys.exit() instead of exit() by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/568\"\u003etheskumar/python-dotenv#568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat:  add \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e flag to disable load_dotenv (fixes \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/510\"\u003e#510\u003c/a\u003e) by \u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded Python@3.14: Github CI \u0026amp; tox.ini by \u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eocs: clarify what load_dotenv() does in README by \u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group across 1 directory with 2 updates 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/theskumar/python-dotenv/pull/577\"\u003etheskumar/python-dotenv#577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove project metadata and config to pyproject.toml by \u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\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/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: ensure find_dotenv work reliably on python 3.13 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003etheskumar/python-dotenv#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cli): issue with execvpe on Windows by \u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\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/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a security policy by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/512\"\u003etheskumar/python-dotenv#512\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep GitHub Actions up to date with GitHub's Dependabot by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/506\"\u003etheskumar/python-dotenv#506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix multiline string in test.yml \u0026amp; use fail-fast strategy by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/514\"\u003etheskumar/python-dotenv#514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnhance dotenv run: Switch to execvpe for better resource management and signal handling by \u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add py3.13 to test.yml by \u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 trove classifier by \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for python 3.13 and drop 3.8 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/551\"\u003etheskumar/python-dotenv#551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update README.md by \u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSome more s/Python-dotenv/python-dotenv/ by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/552\"\u003etheskumar/python-dotenv#552\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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.2.1] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMove more config to \u003ccode\u003epyproject.toml\u003c/code\u003e, removed \u003ccode\u003esetup.cfg\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for reading \u003ccode\u003e.env\u003c/code\u003e from FIFOs (Unix) by [\u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.2.0] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade build system to use PEP 517 \u0026amp; PEP 518 to use \u003ccode\u003ebuild\u003c/code\u003e and \u003ccode\u003epyproject.toml\u003c/code\u003e by [\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/583\"\u003e#583\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14 by [\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for disabling of \u003ccode\u003eload_dotenv()\u003c/code\u003e using \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e env var. by [\u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/569\"\u003e#569\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCLI: revert the use of execvpe on Windows by [\u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003e#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.0] - 2025-03-25\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFeature\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for python 3.13\u003c/li\u003e\n\u003cli\u003eEnhance \u003ccode\u003edotenv run\u003c/code\u003e, switch to \u003ccode\u003eexecvpe\u003c/code\u003e for better resource management and signal handling (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/523\"\u003e#523\u003c/a\u003e) by [\u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efind_dotenv\u003c/code\u003e and \u003ccode\u003eload_dotenv\u003c/code\u003e now correctly looks up at the current directory when running in debugger or pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e by [\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e])\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eMisc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8\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/theskumar/python-dotenv/commit/eaf2a9129ccec6febda0f741eb3bb852c3f947bd\"\u003e\u003ccode\u003eeaf2a91\u003c/code\u003e\u003c/a\u003e Do not remove .coverage file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8716196891532eeb67d24a513e8d975437f5e8b7\"\u003e\u003ccode\u003e8716196\u003c/code\u003e\u003c/a\u003e Bump version: 1.2.0 → 1.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/b87807fcad6e74332c3c63a75c92ce5814fa7a55\"\u003e\u003ccode\u003eb87807f\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/3af77d3029eb717aeec0a3c25f751b6a614a6d3c\"\u003e\u003ccode\u003e3af77d3\u003c/code\u003e\u003c/a\u003e Support reading .env from FIFOs (Unix) (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/467ee22fccb2fb7ccda71a0d9e37c6ea3cb8d993\"\u003e\u003ccode\u003e467ee22\u003c/code\u003e\u003c/a\u003e Fix test failures after moving config to pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/76999e741d87e958ebd74e3ae9834c0514e77a59\"\u003e\u003ccode\u003e76999e7\u003c/code\u003e\u003c/a\u003e Move more config pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/222ce2cc58ebc82ba78da8781269267b9f585932\"\u003e\u003ccode\u003e222ce2c\u003c/code\u003e\u003c/a\u003e Update to use trusted publisher on pypi\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8ed4f79d202eba582b44bdf1f5deb726dd68783d\"\u003e\u003ccode\u003e8ed4f79\u003c/code\u003e\u003c/a\u003e Update docs requirements\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/5bf882241c607445bf02cf5b241535d62e2b99c1\"\u003e\u003ccode\u003e5bf8822\u003c/code\u003e\u003c/a\u003e Bump version: 1.1.1 → 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/1fe11cc737ee4399e9c51d1b69b0dd858f6b4669\"\u003e\u003ccode\u003e1fe11cc\u003c/code\u003e\u003c/a\u003e upadate changelog\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `orjson` from 3.10.16 to 3.11.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ijl/orjson/releases\"\u003eorjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.4\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eABI compatibility with CPython 3.15 alpha 1.\u003c/li\u003e\n\u003cli\u003ePublish PyPI wheels for 3.14 and manylinux i686, manylinux arm7,\nmanylinux ppc64le, manylinux s390x.\u003c/li\u003e\n\u003cli\u003eBuild now requires a C compiler.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared buffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI Windows aarch64/arm64 wheels.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 alpha 7.\u003c/li\u003e\n\u003cli\u003eFix incompatibility running on Python 3.13 using WASM.\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/ijl/orjson/blob/master/CHANGELOG.md\"\u003eorjson's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.4 - 2025-10-24\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eABI compatibility with CPython 3.15 alpha 1.\u003c/li\u003e\n\u003cli\u003ePublish PyPI wheels for 3.14 and manylinux i686, manylinux arm7,\nmanylinux ppc64le, manylinux s390x.\u003c/li\u003e\n\u003cli\u003eBuild now requires a C compiler.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.3 - 2025-08-26\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1 - 2025-07-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures. This was introduced in 3.11.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 - 2025-07-15\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared\nbuffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18 - 2025-04-29\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/ijl/orjson/commit/a4fdeb3aff125d501ec0dd0577f9b38b2b977b4f\"\u003e\u003ccode\u003ea4fdeb3\u003c/code\u003e\u003c/a\u003e 3.11.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2e80d68afacafca8751e6a64ca05d0d4087dbd15\"\u003e\u003ccode\u003e2e80d68\u003c/code\u003e\u003c/a\u003e unlikely to cold_path, remove intrinsics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/27edea92f8da2fdfc3f1342474e2f1686f1edf55\"\u003e\u003ccode\u003e27edea9\u003c/code\u003e\u003c/a\u003e FFI through crate::ffi, partial non-CPython compatibility\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/416a8c9578da780d0d58b5e6b751793deafc610d\"\u003e\u003ccode\u003e416a8c9\u003c/code\u003e\u003c/a\u003e Unconditionally build yyjson\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/c8c1a17dca8436a2fee05ca060febd096e653d98\"\u003e\u003ccode\u003ec8c1a17\u003c/code\u003e\u003c/a\u003e edition 2024\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/af4179a1fa0aafffd0f867203b6c36e9a522f165\"\u003e\u003ccode\u003eaf4179a\u003c/code\u003e\u003c/a\u003e build maintenance, panic_immediate_abort break, test 3.15\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/aa8c946cfbe2aba29016bc9c9ddc8713cb00173b\"\u003e\u003ccode\u003eaa8c946\u003c/code\u003e\u003c/a\u003e 3.11.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2442efc125068e43bec97c26e3a6b5da8932936c\"\u003e\u003ccode\u003e2442efc\u003c/code\u003e\u003c/a\u003e Fix PyPI project metadata when using maturin 1.9.2 or later\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/ba760146e7bc407d729436d8dbcb9e1495c83773\"\u003e\u003ccode\u003eba76014\u003c/code\u003e\u003c/a\u003e 3.11.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/49315905a4f071f2279b6df87125ca94780b5173\"\u003e\u003ccode\u003e4931590\u003c/code\u003e\u003c/a\u003e CPython compatibility misc\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ijl/orjson/compare/3.10.16...3.11.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` from 2.2.3 to 2.3.3\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.3\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.3.\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.3.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.3 supports Python 3.9 and higher, and is the first release to support Python 3.14.\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.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\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/pandas-dev/pandas/commit/9c8bc3e55188c8aff37207a74f1dd144980b8874\"\u003e\u003ccode\u003e9c8bc3e\u003c/code\u003e\u003c/a\u003e RLS: 2.3.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/6aa788a00bda9b0f004302076dad94df3edeafc7\"\u003e\u003ccode\u003e6aa788a\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] DOC: prepare 2.3.3 whatsnew notes for release (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62499\"\u003e#62499\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62508\"\u003e#62508\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/b64f0df403d11ac733d9f460f89a5e99c8044ed0\"\u003e\u003ccode\u003eb64f0df\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: avoid validation error for ufunc with string[python] ar...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/058eb2b0edfc408dae9966ef1f03372f2a3ff04c\"\u003e\u003ccode\u003e058eb2b\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: String[pyarrow] comparison with mixed object (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62424\"\u003e#62424\u003c/a\u003e) (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/2ca088daef6a9d9333fea8aedffc7e50d28dfdee\"\u003e\u003ccode\u003e2ca088d\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] DEPR: remove the Period resampling deprecation (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62480\"\u003e#62480\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62\"\u003e#62\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/92bf98f623572ed053d48be5818c8503f1b61888\"\u003e\u003ccode\u003e92bf98f\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: fix .str.isdigit to honor unicode superscript for older...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/e57c7d6a2247316188fba0ba2a0db3c11028d75c\"\u003e\u003ccode\u003ee57c7d6\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62452\"\u003e#62452\u003c/a\u003e on branch 2.3.x (TST: Adjust tests for numexpr 2.13) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62454\"\u003e#62454\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/e0fe9a03c90e560c34a3bbbdd1735a8b64f7b281\"\u003e\u003ccode\u003ee0fe9a0\u003c/code\u003e\u003c/a\u003e Backport to 2.3.x: REGR: from_records not initializing subclasses properly (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/23a1085e641c8e3a5b500e319c5973e4160b9236\"\u003e\u003ccode\u003e23a1085\u003c/code\u003e\u003c/a\u003e BUG: improve future warning for boolean operations with missaligned indexes (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/61136969fb18b438b6660bd5d485d0236dbf4a71\"\u003e\u003ccode\u003e6113696\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62396\"\u003e#62396\u003c/a\u003e on branch 2.3.x (PKG/DOC: indicate Python 3.14 support in ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pandas-dev/pandas/compare/v2.2.3...v2.3.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geoalchemy2` from 0.17.1 to 0.18.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/releases\"\u003egeoalchemy2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/538\"\u003egeoalchemy/geoalchemy2#538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/540\"\u003egeoalchemy/geoalchemy2#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCompile literal binds by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/543\"\u003egeoalchemy/geoalchemy2#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/544\"\u003egeoalchemy/geoalchemy2#544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore (mariadb): Stop converting WKB to WKT by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/545\"\u003egeoalchemy/geoalchemy2#545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker containers by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/546\"\u003egeoalchemy/geoalchemy2#546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/547\"\u003egeoalchemy/geoalchemy2#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/553\"\u003egeoalchemy/geoalchemy2#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/554\"\u003egeoalchemy/geoalchemy2#554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Improve readbility of benchmark results by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/556\"\u003egeoalchemy/geoalchemy2#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/555\"\u003egeoalchemy/geoalchemy2#555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/557\"\u003egeoalchemy/geoalchemy2#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Remove warning message from MySQL/MariaDB reflection by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/560\"\u003egeoalchemy/geoalchemy2#560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/561\"\u003egeoalchemy/geoalchemy2#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: correct doc strings by \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/564\"\u003egeoalchemy/geoalchemy2#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.0 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/565\"\u003egeoalchemy/geoalchemy2#565\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/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.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/geoalchemy/geoalchemy2/blob/master/CHANGES.txt\"\u003egeoalchemy2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Fix doc strings for cache enabled - \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e(papacodebear/master) Fix: Remove warning from MySQL/MariaDB reflection \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Improve readability of benchmark results \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/547\"\u003e#547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker container \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/546\"\u003e#546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf (mariadb): Stop converting WKB to WKT \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/545\"\u003e#545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/544\"\u003e#544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Compile literal binds properly \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/540\"\u003e#540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/538\"\u003e#538\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/geoalchemy/geoalchemy2/commit/60767082df9f4587fadd56ab94847ebc39df8295\"\u003e\u003ccode\u003e6076708\u003c/code\u003e\u003c/a\u003e Release: 0.18.0 (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/565\"\u003e#565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/e13112177bdf79cae0d72a6e89d815dc272e3dc5\"\u003e\u003ccode\u003ee131121\u003c/code\u003e\u003c/a\u003e Feat: Add support of spatial indexes for Raster type for PostgreSQL (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/0b432086a0c3b8ab160c5cc1864aa65e02f35362\"\u003e\u003ccode\u003e0b43208\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/8791b2eec013f21f599ca060d9fee4aba72ec2a1\"\u003e\u003ccode\u003e8791b2e\u003c/code\u003e\u003c/a\u003e Docs: Fix doc strings for cache enabled (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/d3c1d04c8b462c61132403e44a7a4f04a487c142\"\u003e\u003ccode\u003ed3c1d04\u003c/code\u003e\u003c/a\u003e Chore: Move reflection type registering (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/24dc5d05d97fb9a2a57103c1823a58f06940a5e8\"\u003e\u003ccode\u003e24dc5d0\u003c/code\u003e\u003c/a\u003e Fix: Remove warning from MySQL/MariaDB reflection (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/71f7914d4ddf7d9c46c772e36a8463e20901966a\"\u003e\u003ccode\u003e71f7914\u003c/code\u003e\u003c/a\u003e Feat: Handle computed columns (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/c139cdbca62019d92d18f12429706732777c38e2\"\u003e\u003ccode\u003ec139cdb\u003c/code\u003e\u003c/a\u003e Perf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/2e94baa4f3ac23e0160e...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1355","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1355","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1355/packages"},{"uuid":"2872492417","node_id":"PR_kwDOKF4tPs6rNsGB","number":2550,"state":"closed","title":"Build: Bump datafusion from 47.0.0 to 50.0.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-10-05T21:17:16.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-30T00:35:17.000Z","updated_at":"2025-10-05T21:17:16.000Z","time_to_close":506519,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Build: Bump","packages":[{"name":"datafusion","old_version":"47.0.0","new_version":"50.0.0","repository_url":"https://github.com/apache/datafusion-python"}],"path":null,"ecosystem":"pip"},"body":"Bumps [datafusion](https://github.com/apache/datafusion-python) from 47.0.0 to 50.0.0.\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/c3a76553b755ea64b9a161e2e9d1759ba3068a96\"\u003e\u003ccode\u003ec3a7655\u003c/code\u003e\u003c/a\u003e Update version number, add changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/bf22c1d4c130df19ed84d99f768fb96be9463a78\"\u003e\u003ccode\u003ebf22c1d\u003c/code\u003e\u003c/a\u003e Prepare for DF50 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/b7d3519d395025183a06aad268ee30e61f8226df\"\u003e\u003ccode\u003eb7d3519\u003c/code\u003e\u003c/a\u003e docs: add apache iceberg as datafusion data source (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1240\"\u003e#1240\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/d54dc4aeeeab41b5a845d383a672630ceb880253\"\u003e\u003ccode\u003ed54dc4a\u003c/code\u003e\u003c/a\u003e Support string column identifiers for sort/aggregate/window and stricter Expr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/9e976362cd6e68a66ef53a1758b0da6932d41ffe\"\u003e\u003ccode\u003e9e97636\u003c/code\u003e\u003c/a\u003e chore: remove redundant error transformation (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/c609dfa31abacc8c891e70ab1c0ae474c12789ee\"\u003e\u003ccode\u003ec609dfa\u003c/code\u003e\u003c/a\u003e feat: allow passing a slice to and expression with the [] indexing (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1215\"\u003e#1215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/b325a385d3ff737cd30f53c5a2439adb6e90ee8a\"\u003e\u003ccode\u003eb325a38\u003c/code\u003e\u003c/a\u003e fix: update link to user example for custom table provider (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/332c69b61ebcad0a6aec631855795ef0615c5a13\"\u003e\u003ccode\u003e332c69b\u003c/code\u003e\u003c/a\u003e docs: fix CaseBuilder documentation example (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1225\"\u003e#1225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/f0bbad7543717c5f08ba2acb92d42c9d30fd2355\"\u003e\u003ccode\u003ef0bbad7\u003c/code\u003e\u003c/a\u003e Set fail on warning for documentation generation (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1218\"\u003e#1218\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/200a249ac310e0f91bfd9f85f2d5278badca0131\"\u003e\u003ccode\u003e200a249\u003c/code\u003e\u003c/a\u003e Fixing a few Typos (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1220\"\u003e#1220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/datafusion-python/compare/47.0.0...50.0.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=datafusion\u0026package-manager=pip\u0026previous-version=47.0.0\u0026new-version=50.0.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/apache/iceberg-python/pull/2550","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Ficeberg-python/issues/2550","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2550/packages"},{"uuid":"2872183605","node_id":"PR_kwDOHTdvBs6rMgs1","number":1335,"state":"closed","title":"deps(ibis): bump the all group across 1 directory with 23 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2025-10-06T18:30:47.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-29T21:53:31.000Z","updated_at":"2025-10-06T18:30:47.000Z","time_to_close":592636,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":23,"packages":[{"name":"fastapi","old_version":"0.116.1","new_version":"0.118.0","repository_url":"https://github.com/fastapi/fastapi"},{"name":"pydantic","old_version":"2.10.6","new_version":"2.11.9","repository_url":"https://github.com/pydantic/pydantic"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.40.3","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"orjson","old_version":"3.10.16","new_version":"3.11.3","repository_url":"https://github.com/ijl/orjson"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.2","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.18.0","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"sqlglot","old_version":"27.14.0","new_version":"27.19.0","repository_url":"https://github.com/tobymao/sqlglot"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"anyio","old_version":"4.10.0","new_version":"4.11.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"duckdb","old_version":"1.3.2","new_version":"1.4.0","repository_url":"https://github.com/duckdb/duckdb-python"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.37.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"uvicorn-worker","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/Kludex/uvicorn-worker"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.8","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"50.0.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"jupyterlab","old_version":"4.4.7","new_version":"4.4.9","repository_url":"https://github.com/jupyterlab/jupyterlab"},{"name":"pytest","old_version":"8.3.5","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.13.1","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.43","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.13.2","repository_url":"https://github.com/astral-sh/ruff"},{"name":"trino","old_version":"0.335.0","new_version":"0.336.0","repository_url":"https://github.com/trinodb/trino-python-client"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.9.2","repository_url":"https://github.com/ClickHouse/clickhouse-connect"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 23 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.116.1` | `0.118.0` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.11.9` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.40.3` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.1.1` |\n| [orjson](https://github.com/ijl/orjson) | `3.10.16` | `3.11.3` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.2` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.18.0` |\n| [sqlglot](https://github.com/tobymao/sqlglot) | `27.14.0` | `27.19.0` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.10.0` | `4.11.0` |\n| [duckdb](https://github.com/duckdb/duckdb-python) | `1.3.2` | `1.4.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.37.0` |\n| [uvicorn-worker](https://github.com/Kludex/uvicorn-worker) | `0.3.0` | `0.4.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.8` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `50.0.0` |\n| [jupyterlab](https://github.com/jupyterlab/jupyterlab) | `4.4.7` | `4.4.9` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `8.4.2` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.13.1` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.43` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.3.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.13.2` |\n| [trino](https://github.com/trinodb/trino-python-client) | `0.335.0` | `0.336.0` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.9.2` |\n\n\nUpdates `fastapi` from 0.116.1 to 0.118.0\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's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.118.0\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for \u003ccode\u003eStreamingResponse\u003c/code\u003es with dependencies with \u003ccode\u003eyield\u003c/code\u003e or \u003ccode\u003eUploadFile\u003c/code\u003es, close after the response is done. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14099\"\u003e#14099\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eBefore FastAPI 0.118.0, if you used a dependency with \u003ccode\u003eyield\u003c/code\u003e, it would run the exit code after the \u003cem\u003epath operation function\u003c/em\u003e returned but right before sending the response.\u003c/p\u003e\n\u003cp\u003eThis change also meant that if you returned a \u003ccode\u003eStreamingResponse\u003c/code\u003e, the exit code of the dependency with \u003ccode\u003eyield\u003c/code\u003e would have been already run.\u003c/p\u003e\n\u003cp\u003eFor example, if you had a database session in a dependency with \u003ccode\u003eyield\u003c/code\u003e, the \u003ccode\u003eStreamingResponse\u003c/code\u003e would not be able to use that session while streaming data because the session would have already been closed in the exit code after \u003ccode\u003eyield\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThis behavior was reverted in 0.118.0, to make the exit code after \u003ccode\u003eyield\u003c/code\u003e be executed after the response is sent.\u003c/p\u003e\n\u003cp\u003eYou can read more about it in the docs for \u003ca href=\"https://fastapi.tiangolo.com/advanced/advanced-dependencies#dependencies-with-yield-httpexception-except-and-background-tasks\"\u003eAdvanced Dependencies - Dependencies with \u003ccode\u003eyield\u003c/code\u003e, \u003ccode\u003eHTTPException\u003c/code\u003e, \u003ccode\u003eexcept\u003c/code\u003e and Background Tasks\u003c/a\u003e. Including what you could do if you wanted to close a database session earlier, before returning the response to the client.\u003c/p\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Update \u003ccode\u003etutorial/security/oauth2-jwt/\u003c/code\u003e to use \u003ccode\u003epwdlib\u003c/code\u003e with Argon2 instead of \u003ccode\u003epasslib\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13917\"\u003e#13917\u003c/a\u003e by \u003ca href=\"https://github.com/Neizvestnyj\"\u003e\u003ccode\u003e@​Neizvestnyj\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✏️ Fix typos in OAuth2 password request forms. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14112\"\u003e#14112\u003c/a\u003e by \u003ca href=\"https://github.com/alv2017\"\u003e\u003ccode\u003e@​alv2017\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Update contributing guidelines for installing requirements. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14095\"\u003e#14095\u003c/a\u003e by \u003ca href=\"https://github.com/alejsdev\"\u003e\u003ccode\u003e@​alejsdev\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🌐 Sync German docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14098\"\u003e#14098\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\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/14103\"\u003e#14103\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\u003cli\u003e♻️ Refactor sponsor image handling. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14102\"\u003e#14102\u003c/a\u003e by \u003ca href=\"https://github.com/alejsdev\"\u003e\u003ccode\u003e@​alejsdev\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Fix sponsor display issue by hiding element on image error. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14097\"\u003e#14097\u003c/a\u003e by \u003ca href=\"https://github.com/alejsdev\"\u003e\u003ccode\u003e@​alejsdev\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Hide sponsor badge when sponsor image is not displayed. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14096\"\u003e#14096\u003c/a\u003e by \u003ca href=\"https://github.com/alejsdev\"\u003e\u003ccode\u003e@​alejsdev\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.117.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix validation error when \u003ccode\u003eFile\u003c/code\u003e is declared after \u003ccode\u003eForm\u003c/code\u003e parameter. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/11194\"\u003e#11194\u003c/a\u003e by \u003ca href=\"https://github.com/thomasleveil\"\u003e\u003ccode\u003e@​thomasleveil\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.117.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨  Allow \u003ccode\u003eNone\u003c/code\u003e as return type for bodiless responses. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/9425\"\u003e#9425\u003c/a\u003e by \u003ca href=\"https://github.com/hofrob\"\u003e\u003ccode\u003e@​hofrob\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✨ Allow array values for OpenAPI schema \u003ccode\u003etype\u003c/code\u003e field. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13639\"\u003e#13639\u003c/a\u003e by \u003ca href=\"https://github.com/sammasak\"\u003e\u003ccode\u003e@​sammasak\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✨ Add OpenAPI \u003ccode\u003eexternal_docs\u003c/code\u003e parameter to \u003ccode\u003eFastAPI\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13713\"\u003e#13713\u003c/a\u003e by \u003ca href=\"https://github.com/cmtoro\"\u003e\u003ccode\u003e@​cmtoro\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⚡️ Fix \u003ccode\u003edefault_factory\u003c/code\u003e for response model field with Pydantic V1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/9704\"\u003e#9704\u003c/a\u003e by \u003ca href=\"https://github.com/vvanglro\"\u003e\u003ccode\u003e@​vvanglro\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Fix inconsistent processing of model docstring formfeed char with Pydantic V1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/6039\"\u003e#6039\u003c/a\u003e by \u003ca href=\"https://github.com/MaxwellPayne\"\u003e\u003ccode\u003e@​MaxwellPayne\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003ejsonable_encoder\u003c/code\u003e alters \u003ccode\u003ejson_encoders\u003c/code\u003e of Pydantic v1 objects. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/4972\"\u003e#4972\u003c/a\u003e by \u003ca href=\"https://github.com/aboubacs\"\u003e\u003ccode\u003e@​aboubacs\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/333f1ba737be6507fc707278f6b69cf1f81efdc1\"\u003e\u003ccode\u003e333f1ba\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.118.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/1d5168a4a1293fbc44799fbab615a120c6fdb85e\"\u003e\u003ccode\u003e1d5168a\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/bfa54b406d298155edbdfe8fdd173479857d5ad6\"\u003e\u003ccode\u003ebfa54b4\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/e329d78f866a12893699f786f1209a666e1688e3\"\u003e\u003ccode\u003ee329d78\u003c/code\u003e\u003c/a\u003e 🐛 Fix support for \u003ccode\u003eStreamingResponse\u003c/code\u003es with dependencies with \u003ccode\u003eyield\u003c/code\u003e or `Upl...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/861b22c40897a03d2d7e5926923d962121ed5e2e\"\u003e\u003ccode\u003e861b22c\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/efdafa43613f084d198e51f6858e8610beddb5ed\"\u003e\u003ccode\u003eefdafa4\u003c/code\u003e\u003c/a\u003e 📝 Update \u003ccode\u003etutorial/security/oauth2-jwt/\u003c/code\u003e to use \u003ccode\u003epwdlib\u003c/code\u003e with Argon2 instead ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/450a334253b1426aab08b4dea17b16ba8b4c098c\"\u003e\u003ccode\u003e450a334\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/3eb2ee7510905447a36abe628708f102e09cfa59\"\u003e\u003ccode\u003e3eb2ee7\u003c/code\u003e\u003c/a\u003e ✏️ Fix typos in OAuth2 password request forms (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14112\"\u003e#14112\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/287eb316df5b7c35dd1e5da27ca2a8d345bee8d1\"\u003e\u003ccode\u003e287eb31\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/cca3341cb93cb4d0267dd8e862db9235aeaac11c\"\u003e\u003ccode\u003ecca3341\u003c/code\u003e\u003c/a\u003e 🌐 Sync German docs (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14098\"\u003e#14098\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.116.1...0.118.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.10.6 to 2.11.9\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.11.9 2025-09-13\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBackport v1.10.23 changes by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\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.8...v2.11.9\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.8...v2.11.9\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.8 2025-09-13\u003c/h2\u003e\n\u003ch2\u003ev2.11.8 (2025-09-13)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix mypy plugin for mypy 1.18 by \u003ca href=\"https://github.com/cdce8p\"\u003e\u003ccode\u003e@​cdce8p\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12209\"\u003e#12209\u003c/a\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.7...v2.11.8\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.7...v2.11.8\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.7 2025-06-14\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCopy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build 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/11980\"\u003epydantic/pydantic#11980\u003c/a\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.6...v2.11.7\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.6...v2.11.7\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.6 2025-06-13\u003c/h2\u003e\n\u003ch2\u003ev2.11.6 (2025-06-13)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRebuild dataclass fields before 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/11949\"\u003e#11949\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlways store the original field assignment on \u003ccode\u003eFieldInfo\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/11946\"\u003e#11946\u003c/a\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.5...v2.11.6\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.5...v2.11.6\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.5 2025-05-22\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCheck if \u003ccode\u003eFieldInfo\u003c/code\u003e is complete after applying type variable map 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/11855\"\u003e#11855\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not delete mock validator/serializer in \u003ccode\u003emodel_rebuild()\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/11890\"\u003e#11890\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not duplicate metadata on model rebuild 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/11902\"\u003e#11902\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/pydantic/pydantic/blob/v2.11.9/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.11.9 (2025-09-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.9\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBackport v1.10.23 changes by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.8 (2025-09-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.8\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix mypy plugin for mypy 1.18 by \u003ca href=\"https://github.com/cdce8p\"\u003e\u003ccode\u003e@​cdce8p\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12209\"\u003e#12209\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.7 (2025-06-14)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.7\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCopy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build 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/11898\"\u003e#11898\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.6 (2025-06-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.6\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRebuild dataclass fields before 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/11949\"\u003e#11949\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlways store the original field assignment on \u003ccode\u003eFieldInfo\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/11946\"\u003e#11946\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.5 (2025-05-22)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCheck if \u003ccode\u003eFieldInfo\u003c/code\u003e is complete after applying type variable map 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/11855\"\u003e#11855\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/pydantic/pydantic/commit/92310953c146a2ac668a0141be820c083e325f5d\"\u003e\u003ccode\u003e9231095\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/f003a89eeaff35ee18f220a2c790d20536e3d0ab\"\u003e\u003ccode\u003ef003a89\u003c/code\u003e\u003c/a\u003e Backport v1.10.23 changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/96b81ddaf93a1f2e19ff1609080c33de10b8d931\"\u003e\u003ccode\u003e96b81dd\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/966f377692194b3f1d6d5155ac78052bec0a751d\"\u003e\u003ccode\u003e966f377\u003c/code\u003e\u003c/a\u003e Fix mypy v2 plugin for upcoming \u003ccode\u003e1.18\u003c/code\u003e mypy release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/5f033e46c54fea1b59b6894d6527daf49475e690\"\u003e\u003ccode\u003e5f033e4\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c3368b83c411f421a7322959bc29f3bea4bd252a\"\u003e\u003ccode\u003ec3368b8\u003c/code\u003e\u003c/a\u003e Copy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/11980\"\u003e#11980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/3987b23db4b31ff35e9fa15c21c0c1d1c9808838\"\u003e\u003ccode\u003e3987b23\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/dc7a9d20bee55a3a6e7397ee46abfcd9057b627b\"\u003e\u003ccode\u003edc7a9d2\u003c/code\u003e\u003c/a\u003e Always store the original field assignment on \u003ccode\u003eFieldInfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c284c279a5b8c95d32ab5ec31d2511b3b27bfa87\"\u003e\u003ccode\u003ec284c27\u003c/code\u003e\u003c/a\u003e Rebuild dataclass fields before schema generation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/5e6d1dc71fe9bd832635cb2e9b4af92286fd00b8\"\u003e\u003ccode\u003e5e6d1dc\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.5\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.11.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.40.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.40.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable logging response body for async logs (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1756\"\u003e#1756\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2f0ddfeb9f6c726c68beebd7eefd32c86f7f0963\"\u003e2f0ddfe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.39.0...v2.40.0\"\u003e2.40.0\u003c/a\u003e (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd request response logging to auth (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1678\"\u003e#1678\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/77ad53eb00c74b3badc486c8207a16dbc49f37e5\"\u003e77ad53e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrect webauthn JSON parsing to be compliant with standard. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1658\"\u003e#1658\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0c5ef364fb13ca9d7d17100166de87732d752de8\"\u003e0c5ef36\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.39.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.39.0\"\u003e2.39.0\u003c/a\u003e (2025-04-14)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds GA support for X.509 workload identity federation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1695\"\u003e#1695\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/74959605400f9a1976bbdc52c029943b634eb553\"\u003e7495960\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable logging response body for async logs (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1756\"\u003e#1756\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2f0ddfeb9f6c726c68beebd7eefd32c86f7f0963\"\u003e2f0ddfe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.39.0...v2.40.0\"\u003e2.40.0\u003c/a\u003e (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd request response logging to auth (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1678\"\u003e#1678\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/77ad53eb00c74b3badc486c8207a16dbc49f37e5\"\u003e77ad53e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrect webauthn JSON parsing to be compliant with standard. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1658\"\u003e#1658\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0c5ef364fb13ca9d7d17100166de87732d752de8\"\u003e0c5ef36\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.39.0\"\u003e2.39.0\u003c/a\u003e (2025-04-14)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds GA support for X.509 workload identity federation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1695\"\u003e#1695\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/74959605400f9a1976bbdc52c029943b634eb553\"\u003e7495960\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd impersonated SA via local ADC support for fetch_id_token (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1740\"\u003e#1740\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/f24976452d741de6a49d9b7a85cdab47812f5312\"\u003ef249764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd missing packaging dependency for feature requiring urllib3 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1732\"\u003e#1732\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/221f4a82fa25c1ad453b85bc8b7f2fc304724879\"\u003e221f4a8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd request timeout for MDS requests (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1699\"\u003e#1699\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/9f7d3fa92c0e656a1c970182833abe2d0d3ad3ee\"\u003e9f7d3fa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExplicitly declare support for Python 3.13 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1741\"\u003e#1741\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/6fd04d57df90866f24b554c489f8f2653467d70e\"\u003e6fd04d5\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/googleapis/google-auth-library-python/commit/ca94ead4035beea4741dc5384449032f8e6f75d8\"\u003e\u003ccode\u003eca94ead\u003c/code\u003e\u003c/a\u003e chore(main): release 2.40.3 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1768\"\u003e#1768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e\u003ccode\u003e88891cc\u003c/code\u003e\u003c/a\u003e fix: auth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0be91e2f795c989a592cb9c7828a1c53d8107165\"\u003e\u003ccode\u003e0be91e2\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;fix: remove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25660bc57569b3f3e9a1f664516d10f4bc8744b8\"\u003e\u003ccode\u003e25660bc\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1774\"\u003e#1774\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e\u003ccode\u003e7c61c7d\u003c/code\u003e\u003c/a\u003e fix: remove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e\u003ccode\u003e554f967\u003c/code\u003e\u003c/a\u003e fix: retry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/6845065aca69d5130eec40fbe052f56c36860bf7\"\u003e\u003ccode\u003e6845065\u003c/code\u003e\u003c/a\u003e chore(main): release 2.40.2 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1766\"\u003e#1766\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e\u003ccode\u003e44e38b6\u003c/code\u003e\u003c/a\u003e fix: Update test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e\u003ccode\u003e97ed1c8\u003c/code\u003e\u003c/a\u003e chore: remove sync response logs in AuthorizedSession (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1761\"\u003e#1761\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/13a897ea05feff6a2267f700a53b50e9741919a0\"\u003e\u003ccode\u003e13a897e\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1764\"\u003e#1764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.40.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: ensure find_dotenv work reliably on python 3.13 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003etheskumar/python-dotenv#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cli): issue with execvpe on Windows by \u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\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/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a security policy by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/512\"\u003etheskumar/python-dotenv#512\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep GitHub Actions up to date with GitHub's Dependabot by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/506\"\u003etheskumar/python-dotenv#506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix multiline string in test.yml \u0026amp; use fail-fast strategy by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/514\"\u003etheskumar/python-dotenv#514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnhance dotenv run: Switch to execvpe for better resource management and signal handling by \u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add py3.13 to test.yml by \u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 trove classifier by \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for python 3.13 and drop 3.8 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/551\"\u003etheskumar/python-dotenv#551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update README.md by \u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSome more s/Python-dotenv/python-dotenv/ by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/552\"\u003etheskumar/python-dotenv#552\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd _is_debugger so load_dotenv will work in pdb by \u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/553\"\u003etheskumar/python-dotenv#553\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/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/553\"\u003etheskumar/python-dotenv#553\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.0\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCLI: revert the use of execvpe on Windows by [\u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003e#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.0] - 2025-03-25\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFeature\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for python 3.13\u003c/li\u003e\n\u003cli\u003eEnhance \u003ccode\u003edotenv run\u003c/code\u003e, switch to \u003ccode\u003eexecvpe\u003c/code\u003e for better resource management and signal handling (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/523\"\u003e#523\u003c/a\u003e) by [\u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efind_dotenv\u003c/code\u003e and \u003ccode\u003eload_dotenv\u003c/code\u003e now correctly looks up at the current directory when running in debugger or pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e by [\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e])\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eMisc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8\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/theskumar/python-dotenv/commit/16e660d384b942b11879b44500afbbe021650448\"\u003e\u003ccode\u003e16e660d\u003c/code\u003e\u003c/a\u003e Bump version: 1.1.0 → 1.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/667e82f18d6e5306894c8746c46b1da2d031bd23\"\u003e\u003ccode\u003e667e82f\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/9d85edb3b8652de4601f9ad8a7a49ad9909f898a\"\u003e\u003ccode\u003e9d85edb\u003c/code\u003e\u003c/a\u003e fix(cli): issue with execvpe on Windows (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/566\"\u003e#566\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8411987b9301f716245074872afa30646e9b9eb7\"\u003e\u003ccode\u003e8411987\u003c/code\u003e\u003c/a\u003e fix: ensure find_dotenv work reliably on python 3.13 (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/01f899733de664cda0550207067eb36a1795062f\"\u003e\u003ccode\u003e01f8997\u003c/code\u003e\u003c/a\u003e docs update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/6a02ef5a1034d66338811757df07a113a1169af6\"\u003e\u003ccode\u003e6a02ef5\u003c/code\u003e\u003c/a\u003e update mkdocs -\u0026gt; mkdocstrings config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/36c6270db41e1e88be4ec21d0fb876ba0c79d363\"\u003e\u003ccode\u003e36c6270\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/2198b698c021851201261fac27884ee8db6553d5\"\u003e\u003ccode\u003e2198b69\u003c/code\u003e\u003c/a\u003e Bump version: 1.0.1 → 1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/c89fb6d41c0a25f670b34ba05f392260eaa6ccd1\"\u003e\u003ccode\u003ec89fb6d\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8dd413e84b1fb1b3368c02106aab07a533fae015\"\u003e\u003ccode\u003e8dd413e\u003c/code\u003e\u003c/a\u003e Add _is_debugger so load_dotenv will work in pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `orjson` from 3.10.16 to 3.11.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ijl/orjson/releases\"\u003eorjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared buffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI Windows aarch64/arm64 wheels.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 alpha 7.\u003c/li\u003e\n\u003cli\u003eFix incompatibility running on Python 3.13 using WASM.\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/ijl/orjson/blob/master/CHANGELOG.md\"\u003eorjson's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.3 - 2025-08-26\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1 - 2025-07-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures. This was introduced in 3.11.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 - 2025-07-15\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared\nbuffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18 - 2025-04-29\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17 - 2025-04-29\u003c/h2\u003e\n\u003ch3\u003eChanged\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/ijl/orjson/commit/aa8c946cfbe2aba29016bc9c9ddc8713cb00173b\"\u003e\u003ccode\u003eaa8c946\u003c/code\u003e\u003c/a\u003e 3.11.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2442efc125068e43bec97c26e3a6b5da8932936c\"\u003e\u003ccode\u003e2442efc\u003c/code\u003e\u003c/a\u003e Fix PyPI project metadata when using maturin 1.9.2 or later\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/ba760146e7bc407d729436d8dbcb9e1495c83773\"\u003e\u003ccode\u003eba76014\u003c/code\u003e\u003c/a\u003e 3.11.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/49315905a4f071f2279b6df87125ca94780b5173\"\u003e\u003ccode\u003e4931590\u003c/code\u003e\u003c/a\u003e CPython compatibility misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/3de9324511a704ffbe13a94221c8f05062bf71e8\"\u003e\u003ccode\u003e3de9324\u003c/code\u003e\u003c/a\u003e MSRV 1.85, edition 2024, stdarch_x86_avx512 fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/d7359c9899c63570b21a200bc0f8d559eea7cd19\"\u003e\u003ccode\u003ed7359c9\u003c/code\u003e\u003c/a\u003e Remove macOS 13 CI runner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/1d3aa7af6271981907b1e0d1eeee2e07a7c49302\"\u003e\u003ccode\u003e1d3aa7a\u003c/code\u003e\u003c/a\u003e 3.11.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/11d29cb9bcd73777c554d65ba670cde2d6c8c802\"\u003e\u003ccode\u003e11d29cb\u003c/code\u003e\u003c/a\u003e 3.14 packaging misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/168391825ba415df853735a4359095a0327dcd1a\"\u003e\u003ccode\u003e1683918\u003c/code\u003e\u003c/a\u003e bytes::BufMut\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/9c33ff9df61b3b9d71527acf4fb60a735d841025\"\u003e\u003ccode\u003e9c33ff9\u003c/code\u003e\u003c/a\u003e Fix big-endian PyStr\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ijl/orjson/compare/3.10.16...3.11.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` from 2.2.3 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\u003ch2\u003ePandas 2.3.0\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.0.\nThis release includes some new features, bug fixes, and performance improvements. 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.0/whatsnew/v2.3.0.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.0 supports Python 3.10 and higher.\u003c/p\u003e\n\u003cp\u003eThe release will be available on the defaults and conda-forge channels:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install -c conda-forge pandas\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr via PyPI:\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/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.2.3...v2.3.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geoalchemy2` from 0.17.1 to 0.18.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/releases\"\u003egeoalchemy2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/538\"\u003egeoalchemy/geoalchemy2#538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/540\"\u003egeoalchemy/geoalchemy2#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCompile literal binds by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/543\"\u003egeoalchemy/geoalchemy2#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/544\"\u003egeoalchemy/geoalchemy2#544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore (mariadb): Stop converting WKB to WKT by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/545\"\u003egeoalchemy/geoalchemy2#545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker containers by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/546\"\u003egeoalchemy/geoalchemy2#546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/547\"\u003egeoalchemy/geoalchemy2#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/553\"\u003egeoalchemy/geoalchemy2#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/554\"\u003egeoalchemy/geoalchemy2#554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Improve readbility of benchmark results by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/556\"\u003egeoalchemy/geoalchemy2#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/555\"\u003egeoalchemy/geoalchemy2#555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/557\"\u003egeoalchemy/geoalchemy2#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Remove warning message from MySQL/MariaDB reflection by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/560\"\u003egeoalchemy/geoalchemy2#560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/561\"\u003egeoalchemy/geoalchemy2#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: correct doc strings by \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/564\"\u003egeoalchemy/geoalchemy2#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.0 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/565\"\u003egeoalchemy/geoalchemy2#565\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/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.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/geoalchemy/geoalchemy2/blob/master/CHANGES.txt\"\u003egeoalchemy2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Fix doc strings for cache enabled - \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e(papacodebear/master) Fix: Remove warning from MySQL/MariaDB reflection \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Improve readability of benchmark results \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/547\"\u003e#547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker container \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/546\"\u003e#546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf (mariadb): Stop converting WKB to WKT \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/545\"\u003e#545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/544\"\u003e#544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Compile literal binds properly \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/540\"\u003e#540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/538\"\u003e#538\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/geoalchemy/geoalchemy2/commit/60767082df9f4587fadd56ab94847ebc39df8295\"\u003e\u003ccode\u003e6076708\u003c/code\u003e\u003c/a\u003e Release: 0.18.0 (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/565\"\u003e#565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/e13112177bdf79cae0d72a6e89d815dc272e3dc5\"\u003e\u003ccode\u003ee131121\u003c/code\u003e\u003c/a\u003e Feat: Add support of spatial indexes for Raster type for PostgreSQL (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/0b432086a0c3b8ab160c5cc1864aa65e02f35362\"\u003e\u003ccode\u003e0b43208\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/8791b2eec013f21f599ca060d9fee4aba72ec2a1\"\u003e\u003ccode\u003e8791b2e\u003c/code\u003e\u003c/a\u003e Docs: Fix doc strings for cache enabled (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/d3c1d04c8b462c61132403e44a7a4f04a487c142\"\u003e\u003ccode\u003ed3c1d04\u003c/code\u003e\u003c/a\u003e Chore: Move reflection type registering (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/24dc5d05d97fb9a2a57103c1823a58f06940a5e8\"\u003e\u003ccode\u003e24dc5d0\u003c/code\u003e\u003c/a\u003e Fix: Remove warning from MySQL/MariaDB reflection (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/71f7914d4ddf7d9c46c772e36a8463e20901966a\"\u003e\u003ccode\u003e71f7914\u003c/code\u003e\u003c/a\u003e Feat: Handle computed columns (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/c139cdbca62019d92d18f12429706732777c38e2\"\u003e\u003ccode\u003ec139cdb\u003c/code\u003e\u003c/a\u003e Perf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/2e94baa4f3ac23e0160ed841d4efe7ceb3fa2378\"\u003e\u003ccode\u003e2e94baa\u003c/code\u003e\u003c/a\u003e Test: Improve readbility of benchmark results (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/84292bc352ab7ff1102a0529772d32afb0309616\"\u003e\u003ccode\u003e84292bc\u003c/code\u003e\u003c/a\u003e Chore: Create FUNDING.yml (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sqlglot` from 27.14.0 to 27.19.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tobymao/sqlglot/blob/main/CHANGELOG.md\"\u003esqlglot's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v27.19.0] - 2025-09-26\u003c/h2\u003e\n\u003ch3\u003e:boom: BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/68473ac3ec8dc76512dc76819892a1b0324c7ddc\"\u003e\u003ccode\u003e68473ac\u003c/code\u003e\u003c/a\u003e - Annotate type for snowflake PARSE_URL function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5962\"\u003e#5962\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eAnnotate type for snowflake PARSE_URL function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5962\"\u003e#5962\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/b015a9d944d0a87069a7750ad74953c399d7da34\"\u003e\u003ccode\u003eb015a9d\u003c/code\u003e\u003c/a\u003e - annotate type for Snowflake REGEXP_INSTR function \u003cem\u003e(commit by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eannotate type for Snowflake REGEXP_INSTR function\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/1f29ba710f4213beb1a2f993244d7d824f3536ce\"\u003e\u003ccode\u003e1f29ba7\u003c/code\u003e\u003c/a\u003e - annotate type for Snowflake PARSE_IP function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5961\"\u003e#5961\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eannotate type for Snowflake PARSE_IP function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5961\"\u003e#5961\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/bf45d5d3cb0c0f380824019eb32ec29049268a61\"\u003e\u003ccode\u003ebf45d5d\u003c/code\u003e\u003c/a\u003e - annotate types for Snowflake RTRIMMED_LENGTH function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5968\"\u003e#5968\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eannotate types for Snowflake RTRIMMED_LENGTH function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5968\"\u003e#5968\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/13caa6991f003ad7abb590073451e591b6fd888c\"\u003e\u003ccode\u003e13caa69\u003c/code\u003e\u003c/a\u003e - Annotate type for snowflake POSITION function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5964\"\u003e#5964\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eAnnotate type for snowflake POSITION function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5964\"\u003e#5964\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e:sparkles: New Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/88e4e4c55f3a113127eb3c82c0be46c29bcf15ab\"\u003e\u003ccode\u003e88e4e4c\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003eoptimizer\u003c/strong\u003e: Annotate type for OCTET_LENGTH function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5960\"\u003e#5960\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/68473ac3ec8dc76512dc76819892a1b0324c7ddc\"\u003e\u003ccode\u003e68473ac\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003eoptimizer\u003c/strong\u003e: Annotate type for snowflake PARSE_URL function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5962\"\u003e#5962\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/b015a9d944d0a87069a7750ad74953c399d7da34\"\u003e\u003ccode\u003eb015a9d\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003eoptimizer\u003c/strong\u003e: annotate type for Snowflake REGEXP_INSTR function \u003cem\u003e(commit by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/1f29ba710f4213beb1a2f993244d7d824f3536ce\"\u003e\u003ccode\u003e1f29ba7\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003eoptimizer\u003c/strong\u003e: annotate type for Snowflake PARSE_IP function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5961\"\u003e#5961\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/bf45d5d3cb0c0f380824019eb32ec29049268a61\"\u003e\u003ccode\u003ebf45d5d\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003eoptimizer\u003c/strong\u003e: annotate types for Snowflake RTRIMMED_LENGTH function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5968\"\u003e#5968\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/13caa6991f003ad7abb590073451e591b6fd888c\"\u003e\u003ccode\u003e13caa69\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003eoptimizer\u003c/strong\u003e: Annotate type for snowflake POSITION function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5964\"\u003e#5964\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/1471306ed317830c294e3654075f55424d14bf5a\"\u003e\u003ccode\u003e1471306\u003c/code\u003e\u003c/a\u003e - support parse into grant principal and privilege \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5971\"\u003e#5971\u003c/a\u003e by \u003ca href=\"https://github.com/eakmanrq\"\u003e\u003ccode\u003e@​eakmanrq\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e:bug: Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/543297680755344185e0f306843bc4909f4f75ed\"\u003e\u003ccode\u003e5432976\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003ebigquery\u003c/strong\u003e: allow GRANT as an id var \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5965\"\u003e#5965\u003c/a\u003e by \u003ca href=\"https://github.com/treysp\"\u003e\u003ccode\u003e@​treysp\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e:wrench: Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/1514bc640ec129a96aedd9e89bfd5d61e832d6b1\"\u003e\u003ccode\u003e1514bc6\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003eoptimizer\u003c/strong\u003e: add type inference tests for Snowflake RPAD function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5967\"\u003e#5967\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/050b89deb9be842f2ddd07c78ea201ec4eae4779\"\u003e\u003ccode\u003e050b89d\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003eoptimizer\u003c/strong\u003e: Annotate type for snowflake regexp function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5970\"\u003e#5970\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[v27.18.0] - 2025-09-25\u003c/h2\u003e\n\u003ch3\u003e:boom: BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/7f13eaf7769a3381a56c9209af590835be2f95cd\"\u003e\u003ccode\u003e7f13eaf\u003c/code\u003e\u003c/a\u003e - Annotate type for snowflake DECOMPRESS_BINARY function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5945\"\u003e#5945\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eAnnotate type for snowflake DECOMPRESS_BINARY function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5945\"\u003e#5945\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/be12b29b5a7bd6d6e09dbd8c17086bd77c19abc0\"\u003e\u003ccode\u003ebe12b29\u003c/code\u003e\u003c/a\u003e - Annotate type for snowflake DECOMPRESS_STRING function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5947\"\u003e#5947\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachi...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1335","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1335","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1335/packages"},{"uuid":"2872120022","node_id":"PR_kwDOL2ZwPc6rMRLW","number":459,"state":"open","title":"build(deps): bump datafusion from 46.0.0 to 50.0.0 in /python","user":"dependabot[bot]","labels":["python","dependencies"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-29T21:28:56.000Z","updated_at":"2025-09-29T21:28:57.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"datafusion","old_version":"46.0.0","new_version":"50.0.0","repository_url":"https://github.com/apache/datafusion-python"}],"path":"/python","ecosystem":"pip"},"body":"Bumps [datafusion](https://github.com/apache/datafusion-python) from 46.0.0 to 50.0.0.\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/c3a76553b755ea64b9a161e2e9d1759ba3068a96\"\u003e\u003ccode\u003ec3a7655\u003c/code\u003e\u003c/a\u003e Update version number, add changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/bf22c1d4c130df19ed84d99f768fb96be9463a78\"\u003e\u003ccode\u003ebf22c1d\u003c/code\u003e\u003c/a\u003e Prepare for DF50 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/b7d3519d395025183a06aad268ee30e61f8226df\"\u003e\u003ccode\u003eb7d3519\u003c/code\u003e\u003c/a\u003e docs: add apache iceberg as datafusion data source (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1240\"\u003e#1240\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/d54dc4aeeeab41b5a845d383a672630ceb880253\"\u003e\u003ccode\u003ed54dc4a\u003c/code\u003e\u003c/a\u003e Support string column identifiers for sort/aggregate/window and stricter Expr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/9e976362cd6e68a66ef53a1758b0da6932d41ffe\"\u003e\u003ccode\u003e9e97636\u003c/code\u003e\u003c/a\u003e chore: remove redundant error transformation (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/c609dfa31abacc8c891e70ab1c0ae474c12789ee\"\u003e\u003ccode\u003ec609dfa\u003c/code\u003e\u003c/a\u003e feat: allow passing a slice to and expression with the [] indexing (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1215\"\u003e#1215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/b325a385d3ff737cd30f53c5a2439adb6e90ee8a\"\u003e\u003ccode\u003eb325a38\u003c/code\u003e\u003c/a\u003e fix: update link to user example for custom table provider (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/332c69b61ebcad0a6aec631855795ef0615c5a13\"\u003e\u003ccode\u003e332c69b\u003c/code\u003e\u003c/a\u003e docs: fix CaseBuilder documentation example (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1225\"\u003e#1225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/f0bbad7543717c5f08ba2acb92d42c9d30fd2355\"\u003e\u003ccode\u003ef0bbad7\u003c/code\u003e\u003c/a\u003e Set fail on warning for documentation generation (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1218\"\u003e#1218\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/200a249ac310e0f91bfd9f85f2d5278badca0131\"\u003e\u003ccode\u003e200a249\u003c/code\u003e\u003c/a\u003e Fixing a few Typos (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1220\"\u003e#1220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/datafusion-python/compare/46.0.0...50.0.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=datafusion\u0026package-manager=pip\u0026previous-version=46.0.0\u0026new-version=50.0.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/apache/hudi-rs/pull/459","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fhudi-rs/issues/459","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/459/packages"},{"uuid":"2868707359","node_id":"PR_kwDOKa92Zs6q_QAf","number":220,"state":"open","title":"Build: Bump datafusion from 47.0.0 to 50.0.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-09-29T01:19:11.000Z","updated_at":"2025-09-29T01:19:12.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Build: Bump","packages":[{"name":"datafusion","old_version":"47.0.0","new_version":"50.0.0","repository_url":"https://github.com/apache/datafusion-python"}],"path":null,"ecosystem":"pip"},"body":"Bumps [datafusion](https://github.com/apache/datafusion-python) from 47.0.0 to 50.0.0.\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/c3a76553b755ea64b9a161e2e9d1759ba3068a96\"\u003e\u003ccode\u003ec3a7655\u003c/code\u003e\u003c/a\u003e Update version number, add changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/bf22c1d4c130df19ed84d99f768fb96be9463a78\"\u003e\u003ccode\u003ebf22c1d\u003c/code\u003e\u003c/a\u003e Prepare for DF50 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/b7d3519d395025183a06aad268ee30e61f8226df\"\u003e\u003ccode\u003eb7d3519\u003c/code\u003e\u003c/a\u003e docs: add apache iceberg as datafusion data source (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1240\"\u003e#1240\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/d54dc4aeeeab41b5a845d383a672630ceb880253\"\u003e\u003ccode\u003ed54dc4a\u003c/code\u003e\u003c/a\u003e Support string column identifiers for sort/aggregate/window and stricter Expr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/9e976362cd6e68a66ef53a1758b0da6932d41ffe\"\u003e\u003ccode\u003e9e97636\u003c/code\u003e\u003c/a\u003e chore: remove redundant error transformation (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/c609dfa31abacc8c891e70ab1c0ae474c12789ee\"\u003e\u003ccode\u003ec609dfa\u003c/code\u003e\u003c/a\u003e feat: allow passing a slice to and expression with the [] indexing (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1215\"\u003e#1215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/b325a385d3ff737cd30f53c5a2439adb6e90ee8a\"\u003e\u003ccode\u003eb325a38\u003c/code\u003e\u003c/a\u003e fix: update link to user example for custom table provider (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/332c69b61ebcad0a6aec631855795ef0615c5a13\"\u003e\u003ccode\u003e332c69b\u003c/code\u003e\u003c/a\u003e docs: fix CaseBuilder documentation example (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1225\"\u003e#1225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/f0bbad7543717c5f08ba2acb92d42c9d30fd2355\"\u003e\u003ccode\u003ef0bbad7\u003c/code\u003e\u003c/a\u003e Set fail on warning for documentation generation (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1218\"\u003e#1218\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/200a249ac310e0f91bfd9f85f2d5278badca0131\"\u003e\u003ccode\u003e200a249\u003c/code\u003e\u003c/a\u003e Fixing a few Typos (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1220\"\u003e#1220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/datafusion-python/compare/47.0.0...50.0.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=datafusion\u0026package-manager=pip\u0026previous-version=47.0.0\u0026new-version=50.0.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/Fokko/iceberg-python/pull/220","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fokko%2Ficeberg-python/issues/220","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/220/packages"},{"uuid":"3447340679","node_id":"PR_kwDOHTdvBs6qLdzU","number":1329,"state":"open","title":"deps(ibis): bump the all group across 1 directory with 22 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-24T02:36:15.000Z","updated_at":"2025-09-24T02:36:33.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":22,"packages":[{"name":"fastapi","old_version":"0.116.1","new_version":"0.117.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"pydantic","old_version":"2.10.6","new_version":"2.11.9","repository_url":"https://github.com/pydantic/pydantic"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.40.3","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"orjson","old_version":"3.10.16","new_version":"3.11.3","repository_url":"https://github.com/ijl/orjson"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.2","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.18.0","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"sqlglot","old_version":"27.14.0","new_version":"27.17.0","repository_url":"https://github.com/tobymao/sqlglot"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"anyio","old_version":"4.10.0","new_version":"4.11.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"duckdb","old_version":"1.3.2","new_version":"1.4.0","repository_url":"https://github.com/duckdb/duckdb-python"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.37.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"uvicorn-worker","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/Kludex/uvicorn-worker"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.8","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"50.0.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"pytest","old_version":"8.3.5","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.13.0","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.43","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.13.1","repository_url":"https://github.com/astral-sh/ruff"},{"name":"trino","old_version":"0.335.0","new_version":"0.336.0","repository_url":"https://github.com/trinodb/trino-python-client"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.9.1","repository_url":"https://github.com/ClickHouse/clickhouse-connect"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 22 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.116.1` | `0.117.1` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.11.9` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.40.3` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.1.1` |\n| [orjson](https://github.com/ijl/orjson) | `3.10.16` | `3.11.3` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.2` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.18.0` |\n| [sqlglot](https://github.com/tobymao/sqlglot) | `27.14.0` | `27.17.0` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.10.0` | `4.11.0` |\n| [duckdb](https://github.com/duckdb/duckdb-python) | `1.3.2` | `1.4.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.37.0` |\n| [uvicorn-worker](https://github.com/Kludex/uvicorn-worker) | `0.3.0` | `0.4.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.8` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `50.0.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `8.4.2` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.13.0` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.43` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.3.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.13.1` |\n| [trino](https://github.com/trinodb/trino-python-client) | `0.335.0` | `0.336.0` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.9.1` |\n\n\nUpdates `fastapi` from 0.116.1 to 0.117.1\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's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.117.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix validation error when \u003ccode\u003eFile\u003c/code\u003e is declared after \u003ccode\u003eForm\u003c/code\u003e parameter. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/11194\"\u003e#11194\u003c/a\u003e by \u003ca href=\"https://github.com/thomasleveil\"\u003e\u003ccode\u003e@​thomasleveil\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.117.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨  Allow \u003ccode\u003eNone\u003c/code\u003e as return type for bodiless responses. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/9425\"\u003e#9425\u003c/a\u003e by \u003ca href=\"https://github.com/hofrob\"\u003e\u003ccode\u003e@​hofrob\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✨ Allow array values for OpenAPI schema \u003ccode\u003etype\u003c/code\u003e field. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13639\"\u003e#13639\u003c/a\u003e by \u003ca href=\"https://github.com/sammasak\"\u003e\u003ccode\u003e@​sammasak\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✨ Add OpenAPI \u003ccode\u003eexternal_docs\u003c/code\u003e parameter to \u003ccode\u003eFastAPI\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13713\"\u003e#13713\u003c/a\u003e by \u003ca href=\"https://github.com/cmtoro\"\u003e\u003ccode\u003e@​cmtoro\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⚡️ Fix \u003ccode\u003edefault_factory\u003c/code\u003e for response model field with Pydantic V1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/9704\"\u003e#9704\u003c/a\u003e by \u003ca href=\"https://github.com/vvanglro\"\u003e\u003ccode\u003e@​vvanglro\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Fix inconsistent processing of model docstring formfeed char with Pydantic V1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/6039\"\u003e#6039\u003c/a\u003e by \u003ca href=\"https://github.com/MaxwellPayne\"\u003e\u003ccode\u003e@​MaxwellPayne\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003ejsonable_encoder\u003c/code\u003e alters \u003ccode\u003ejson_encoders\u003c/code\u003e of Pydantic v1 objects. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/4972\"\u003e#4972\u003c/a\u003e by \u003ca href=\"https://github.com/aboubacs\"\u003e\u003ccode\u003e@​aboubacs\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Reenable \u003ccode\u003eallow_arbitrary_types\u003c/code\u003e when only 1 argument is used on the API endpoint. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13694\"\u003e#13694\u003c/a\u003e by \u003ca href=\"https://github.com/rmawatson\"\u003e\u003ccode\u003e@​rmawatson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003einspect.getcoroutinefunction()\u003c/code\u003e can break testing with \u003ccode\u003eunittest.mock.patch()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14022\"\u003e#14022\u003c/a\u003e by \u003ca href=\"https://github.com/secrett2633\"\u003e\u003ccode\u003e@​secrett2633\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRefactors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e♻️ Create \u003ccode\u003edependency-cache\u003c/code\u003e dict in \u003ccode\u003esolve_dependencies\u003c/code\u003e only if \u003ccode\u003eNone\u003c/code\u003e (don't re-create if empty). PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13689\"\u003e#13689\u003c/a\u003e by \u003ca href=\"https://github.com/bokshitsky\"\u003e\u003ccode\u003e@​bokshitsky\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Enable test case for duplicated headers in \u003ccode\u003etest_tutorial/test_header_params/test_tutorial003.py\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13864\"\u003e#13864\u003c/a\u003e by \u003ca href=\"https://github.com/Amogha-ark\"\u003e\u003ccode\u003e@​Amogha-ark\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📌 Pin \u003ccode\u003ehttpx\u003c/code\u003e to \u003ccode\u003e\u0026gt;=0.23.0,\u0026lt;1.0.0\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14086\"\u003e#14086\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\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📝 Add note about Cookies and JavaScript on \u003ccode\u003etutorial/cookie-params.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13510\"\u003e#13510\u003c/a\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Remove outdated formatting from \u003ccode\u003epath-params-numeric-validations.md\u003c/code\u003e for languages \u003ccode\u003een\u003c/code\u003e, \u003ccode\u003ees\u003c/code\u003e and \u003ccode\u003euk\u003c/code\u003e.. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14059\"\u003e#14059\u003c/a\u003e by \u003ca href=\"https://github.com/svlandeg\"\u003e\u003ccode\u003e@​svlandeg\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Fix and Improve English Documentation. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14048\"\u003e#14048\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\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📝 Update prompts and German translation. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14015\"\u003e#14015\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\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✅ Simplify tests for response_model. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14062\"\u003e#14062\u003c/a\u003e by \u003ca href=\"https://github.com/dynamicy\"\u003e\u003ccode\u003e@​dynamicy\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🚨 Install pydantic.mypy plugin. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14081\"\u003e#14081\u003c/a\u003e by \u003ca href=\"https://github.com/svlandeg\"\u003e\u003ccode\u003e@​svlandeg\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Add LLM test file. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14049\"\u003e#14049\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔨 Update translations script. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13968\"\u003e#13968\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🛠️ Update \u003ccode\u003edocs.py generate-readme\u003c/code\u003e command to remove permalinks from headers. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14055\"\u003e#14055\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆️ Update mypy to 1.14.1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/12970\"\u003e#12970\u003c/a\u003e by \u003ca href=\"https://github.com/tamird\"\u003e\u003ccode\u003e@​tamird\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.116.2\u003c/h2\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Upgrade Starlette supported version range to \u0026gt;=0.40.0,\u0026lt;0.49.0. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14077\"\u003e#14077\u003c/a\u003e by \u003ca href=\"https://github.com/musicinmybrain\"\u003e\u003ccode\u003e@​musicinmybrain\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/784f06cb9b7cc63f6a0cb2bc9cf238473eef93e2\"\u003e\u003ccode\u003e784f06c\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.117.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/b5c05893b4c43c93ff94761270ea750c0bd9e30e\"\u003e\u003ccode\u003eb5c0589\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/44fc67632bcdae4d078cb11b1a319ac122cbb06f\"\u003e\u003ccode\u003e44fc676\u003c/code\u003e\u003c/a\u003e 🐛 Fix validation error when \u003ccode\u003eFile\u003c/code\u003e is declared after \u003ccode\u003eForm\u003c/code\u003e parameter (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/11194\"\u003e#11194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/a84001000e59ff362e74f93b8d9a58a4309dac2d\"\u003e\u003ccode\u003ea840010\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/382d083e26a28e95c731e85345c85c6dc99b08b4\"\u003e\u003ccode\u003e382d083\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.117.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/a7f2dbe976bf72703376f0cd04487bfc4a849f83\"\u003e\u003ccode\u003ea7f2dbe\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/f1e6f978ce10a6f9b4c668350a79462e9ac330a8\"\u003e\u003ccode\u003ef1e6f97\u003c/code\u003e\u003c/a\u003e ⚡️ Fix \u003ccode\u003edefault_factory\u003c/code\u003e for response model field with Pydantic V1 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/9704\"\u003e#9704\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/b01d5c97a09b8f4f95b9e9b0d6bc083a23cdea20\"\u003e\u003ccode\u003eb01d5c9\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/b51ec36f2e442495de5e4c22ae51a8f5c44917eb\"\u003e\u003ccode\u003eb51ec36\u003c/code\u003e\u003c/a\u003e ✨  Allow \u003ccode\u003eNone\u003c/code\u003e as return type for bodiless responses (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/9425\"\u003e#9425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/0bdc3ca3732e3742e094bea2b320e9774659ac38\"\u003e\u003ccode\u003e0bdc3ca\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.116.1...0.117.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.10.6 to 2.11.9\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.11.9 2025-09-13\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBackport v1.10.23 changes by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\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.8...v2.11.9\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.8...v2.11.9\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.8 2025-09-13\u003c/h2\u003e\n\u003ch2\u003ev2.11.8 (2025-09-13)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix mypy plugin for mypy 1.18 by \u003ca href=\"https://github.com/cdce8p\"\u003e\u003ccode\u003e@​cdce8p\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12209\"\u003e#12209\u003c/a\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.7...v2.11.8\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.7...v2.11.8\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.7 2025-06-14\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCopy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build 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/11980\"\u003epydantic/pydantic#11980\u003c/a\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.6...v2.11.7\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.6...v2.11.7\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.6 2025-06-13\u003c/h2\u003e\n\u003ch2\u003ev2.11.6 (2025-06-13)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRebuild dataclass fields before 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/11949\"\u003e#11949\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlways store the original field assignment on \u003ccode\u003eFieldInfo\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/11946\"\u003e#11946\u003c/a\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.5...v2.11.6\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.5...v2.11.6\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.5 2025-05-22\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCheck if \u003ccode\u003eFieldInfo\u003c/code\u003e is complete after applying type variable map 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/11855\"\u003e#11855\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not delete mock validator/serializer in \u003ccode\u003emodel_rebuild()\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/11890\"\u003e#11890\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not duplicate metadata on model rebuild 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/11902\"\u003e#11902\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/pydantic/pydantic/blob/v2.11.9/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.11.9 (2025-09-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.9\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBackport v1.10.23 changes by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.8 (2025-09-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.8\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix mypy plugin for mypy 1.18 by \u003ca href=\"https://github.com/cdce8p\"\u003e\u003ccode\u003e@​cdce8p\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12209\"\u003e#12209\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.7 (2025-06-14)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.7\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCopy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build 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/11898\"\u003e#11898\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.6 (2025-06-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.6\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRebuild dataclass fields before 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/11949\"\u003e#11949\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlways store the original field assignment on \u003ccode\u003eFieldInfo\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/11946\"\u003e#11946\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.5 (2025-05-22)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCheck if \u003ccode\u003eFieldInfo\u003c/code\u003e is complete after applying type variable map 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/11855\"\u003e#11855\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/pydantic/pydantic/commit/92310953c146a2ac668a0141be820c083e325f5d\"\u003e\u003ccode\u003e9231095\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/f003a89eeaff35ee18f220a2c790d20536e3d0ab\"\u003e\u003ccode\u003ef003a89\u003c/code\u003e\u003c/a\u003e Backport v1.10.23 changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/96b81ddaf93a1f2e19ff1609080c33de10b8d931\"\u003e\u003ccode\u003e96b81dd\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/966f377692194b3f1d6d5155ac78052bec0a751d\"\u003e\u003ccode\u003e966f377\u003c/code\u003e\u003c/a\u003e Fix mypy v2 plugin for upcoming \u003ccode\u003e1.18\u003c/code\u003e mypy release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/5f033e46c54fea1b59b6894d6527daf49475e690\"\u003e\u003ccode\u003e5f033e4\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c3368b83c411f421a7322959bc29f3bea4bd252a\"\u003e\u003ccode\u003ec3368b8\u003c/code\u003e\u003c/a\u003e Copy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/11980\"\u003e#11980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/3987b23db4b31ff35e9fa15c21c0c1d1c9808838\"\u003e\u003ccode\u003e3987b23\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/dc7a9d20bee55a3a6e7397ee46abfcd9057b627b\"\u003e\u003ccode\u003edc7a9d2\u003c/code\u003e\u003c/a\u003e Always store the original field assignment on \u003ccode\u003eFieldInfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c284c279a5b8c95d32ab5ec31d2511b3b27bfa87\"\u003e\u003ccode\u003ec284c27\u003c/code\u003e\u003c/a\u003e Rebuild dataclass fields before schema generation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/5e6d1dc71fe9bd832635cb2e9b4af92286fd00b8\"\u003e\u003ccode\u003e5e6d1dc\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.5\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.11.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.40.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.40.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable logging response body for async logs (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1756\"\u003e#1756\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2f0ddfeb9f6c726c68beebd7eefd32c86f7f0963\"\u003e2f0ddfe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.39.0...v2.40.0\"\u003e2.40.0\u003c/a\u003e (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd request response logging to auth (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1678\"\u003e#1678\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/77ad53eb00c74b3badc486c8207a16dbc49f37e5\"\u003e77ad53e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrect webauthn JSON parsing to be compliant with standard. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1658\"\u003e#1658\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0c5ef364fb13ca9d7d17100166de87732d752de8\"\u003e0c5ef36\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.39.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.39.0\"\u003e2.39.0\u003c/a\u003e (2025-04-14)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds GA support for X.509 workload identity federation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1695\"\u003e#1695\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/74959605400f9a1976bbdc52c029943b634eb553\"\u003e7495960\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable logging response body for async logs (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1756\"\u003e#1756\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2f0ddfeb9f6c726c68beebd7eefd32c86f7f0963\"\u003e2f0ddfe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.39.0...v2.40.0\"\u003e2.40.0\u003c/a\u003e (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd request response logging to auth (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1678\"\u003e#1678\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/77ad53eb00c74b3badc486c8207a16dbc49f37e5\"\u003e77ad53e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrect webauthn JSON parsing to be compliant with standard. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1658\"\u003e#1658\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0c5ef364fb13ca9d7d17100166de87732d752de8\"\u003e0c5ef36\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.39.0\"\u003e2.39.0\u003c/a\u003e (2025-04-14)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds GA support for X.509 workload identity federation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1695\"\u003e#1695\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/74959605400f9a1976bbdc52c029943b634eb553\"\u003e7495960\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd impersonated SA via local ADC support for fetch_id_token (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1740\"\u003e#1740\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/f24976452d741de6a49d9b7a85cdab47812f5312\"\u003ef249764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd missing packaging dependency for feature requiring urllib3 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1732\"\u003e#1732\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/221f4a82fa25c1ad453b85bc8b7f2fc304724879\"\u003e221f4a8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd request timeout for MDS requests (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1699\"\u003e#1699\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/9f7d3fa92c0e656a1c970182833abe2d0d3ad3ee\"\u003e9f7d3fa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExplicitly declare support for Python 3.13 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1741\"\u003e#1741\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/6fd04d57df90866f24b554c489f8f2653467d70e\"\u003e6fd04d5\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/googleapis/google-auth-library-python/commit/ca94ead4035beea4741dc5384449032f8e6f75d8\"\u003e\u003ccode\u003eca94ead\u003c/code\u003e\u003c/a\u003e chore(main): release 2.40.3 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1768\"\u003e#1768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e\u003ccode\u003e88891cc\u003c/code\u003e\u003c/a\u003e fix: auth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0be91e2f795c989a592cb9c7828a1c53d8107165\"\u003e\u003ccode\u003e0be91e2\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;fix: remove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25660bc57569b3f3e9a1f664516d10f4bc8744b8\"\u003e\u003ccode\u003e25660bc\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1774\"\u003e#1774\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e\u003ccode\u003e7c61c7d\u003c/code\u003e\u003c/a\u003e fix: remove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e\u003ccode\u003e554f967\u003c/code\u003e\u003c/a\u003e fix: retry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/6845065aca69d5130eec40fbe052f56c36860bf7\"\u003e\u003ccode\u003e6845065\u003c/code\u003e\u003c/a\u003e chore(main): release 2.40.2 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1766\"\u003e#1766\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e\u003ccode\u003e44e38b6\u003c/code\u003e\u003c/a\u003e fix: Update test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e\u003ccode\u003e97ed1c8\u003c/code\u003e\u003c/a\u003e chore: remove sync response logs in AuthorizedSession (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1761\"\u003e#1761\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/13a897ea05feff6a2267f700a53b50e9741919a0\"\u003e\u003ccode\u003e13a897e\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1764\"\u003e#1764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.40.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: ensure find_dotenv work reliably on python 3.13 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003etheskumar/python-dotenv#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cli): issue with execvpe on Windows by \u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\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/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a security policy by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/512\"\u003etheskumar/python-dotenv#512\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep GitHub Actions up to date with GitHub's Dependabot by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/506\"\u003etheskumar/python-dotenv#506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix multiline string in test.yml \u0026amp; use fail-fast strategy by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/514\"\u003etheskumar/python-dotenv#514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnhance dotenv run: Switch to execvpe for better resource management and signal handling by \u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add py3.13 to test.yml by \u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 trove classifier by \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for python 3.13 and drop 3.8 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/551\"\u003etheskumar/python-dotenv#551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update README.md by \u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSome more s/Python-dotenv/python-dotenv/ by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/552\"\u003etheskumar/python-dotenv#552\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd _is_debugger so load_dotenv will work in pdb by \u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/553\"\u003etheskumar/python-dotenv#553\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/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/553\"\u003etheskumar/python-dotenv#553\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.0\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCLI: revert the use of execvpe on Windows by [\u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003e#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.0] - 2025-03-25\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFeature\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for python 3.13\u003c/li\u003e\n\u003cli\u003eEnhance \u003ccode\u003edotenv run\u003c/code\u003e, switch to \u003ccode\u003eexecvpe\u003c/code\u003e for better resource management and signal handling (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/523\"\u003e#523\u003c/a\u003e) by [\u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efind_dotenv\u003c/code\u003e and \u003ccode\u003eload_dotenv\u003c/code\u003e now correctly looks up at the current directory when running in debugger or pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e by [\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e])\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eMisc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8\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/theskumar/python-dotenv/commit/16e660d384b942b11879b44500afbbe021650448\"\u003e\u003ccode\u003e16e660d\u003c/code\u003e\u003c/a\u003e Bump version: 1.1.0 → 1.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/667e82f18d6e5306894c8746c46b1da2d031bd23\"\u003e\u003ccode\u003e667e82f\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/9d85edb3b8652de4601f9ad8a7a49ad9909f898a\"\u003e\u003ccode\u003e9d85edb\u003c/code\u003e\u003c/a\u003e fix(cli): issue with execvpe on Windows (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/566\"\u003e#566\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8411987b9301f716245074872afa30646e9b9eb7\"\u003e\u003ccode\u003e8411987\u003c/code\u003e\u003c/a\u003e fix: ensure find_dotenv work reliably on python 3.13 (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/01f899733de664cda0550207067eb36a1795062f\"\u003e\u003ccode\u003e01f8997\u003c/code\u003e\u003c/a\u003e docs update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/6a02ef5a1034d66338811757df07a113a1169af6\"\u003e\u003ccode\u003e6a02ef5\u003c/code\u003e\u003c/a\u003e update mkdocs -\u0026gt; mkdocstrings config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/36c6270db41e1e88be4ec21d0fb876ba0c79d363\"\u003e\u003ccode\u003e36c6270\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/2198b698c021851201261fac27884ee8db6553d5\"\u003e\u003ccode\u003e2198b69\u003c/code\u003e\u003c/a\u003e Bump version: 1.0.1 → 1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/c89fb6d41c0a25f670b34ba05f392260eaa6ccd1\"\u003e\u003ccode\u003ec89fb6d\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8dd413e84b1fb1b3368c02106aab07a533fae015\"\u003e\u003ccode\u003e8dd413e\u003c/code\u003e\u003c/a\u003e Add _is_debugger so load_dotenv will work in pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `orjson` from 3.10.16 to 3.11.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ijl/orjson/releases\"\u003eorjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared buffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI Windows aarch64/arm64 wheels.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 alpha 7.\u003c/li\u003e\n\u003cli\u003eFix incompatibility running on Python 3.13 using WASM.\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/ijl/orjson/blob/master/CHANGELOG.md\"\u003eorjson's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.3 - 2025-08-26\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1 - 2025-07-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures. This was introduced in 3.11.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 - 2025-07-15\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared\nbuffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18 - 2025-04-29\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17 - 2025-04-29\u003c/h2\u003e\n\u003ch3\u003eChanged\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/ijl/orjson/commit/aa8c946cfbe2aba29016bc9c9ddc8713cb00173b\"\u003e\u003ccode\u003eaa8c946\u003c/code\u003e\u003c/a\u003e 3.11.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2442efc125068e43bec97c26e3a6b5da8932936c\"\u003e\u003ccode\u003e2442efc\u003c/code\u003e\u003c/a\u003e Fix PyPI project metadata when using maturin 1.9.2 or later\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/ba760146e7bc407d729436d8dbcb9e1495c83773\"\u003e\u003ccode\u003eba76014\u003c/code\u003e\u003c/a\u003e 3.11.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/49315905a4f071f2279b6df87125ca94780b5173\"\u003e\u003ccode\u003e4931590\u003c/code\u003e\u003c/a\u003e CPython compatibility misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/3de9324511a704ffbe13a94221c8f05062bf71e8\"\u003e\u003ccode\u003e3de9324\u003c/code\u003e\u003c/a\u003e MSRV 1.85, edition 2024, stdarch_x86_avx512 fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/d7359c9899c63570b21a200bc0f8d559eea7cd19\"\u003e\u003ccode\u003ed7359c9\u003c/code\u003e\u003c/a\u003e Remove macOS 13 CI runner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/1d3aa7af6271981907b1e0d1eeee2e07a7c49302\"\u003e\u003ccode\u003e1d3aa7a\u003c/code\u003e\u003c/a\u003e 3.11.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/11d29cb9bcd73777c554d65ba670cde2d6c8c802\"\u003e\u003ccode\u003e11d29cb\u003c/code\u003e\u003c/a\u003e 3.14 packaging misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/168391825ba415df853735a4359095a0327dcd1a\"\u003e\u003ccode\u003e1683918\u003c/code\u003e\u003c/a\u003e bytes::BufMut\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/9c33ff9df61b3b9d71527acf4fb60a735d841025\"\u003e\u003ccode\u003e9c33ff9\u003c/code\u003e\u003c/a\u003e Fix big-endian PyStr\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ijl/orjson/compare/3.10.16...3.11.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` from 2.2.3 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\u003ch2\u003ePandas 2.3.0\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.0.\nThis release includes some new features, bug fixes, and performance improvements. 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.0/whatsnew/v2.3.0.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.0 supports Python 3.10 and higher.\u003c/p\u003e\n\u003cp\u003eThe release will be available on the defaults and conda-forge channels:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install -c conda-forge pandas\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr via PyPI:\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/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.2.3...v2.3.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geoalchemy2` from 0.17.1 to 0.18.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/releases\"\u003egeoalchemy2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/538\"\u003egeoalchemy/geoalchemy2#538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/540\"\u003egeoalchemy/geoalchemy2#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCompile literal binds by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/543\"\u003egeoalchemy/geoalchemy2#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/544\"\u003egeoalchemy/geoalchemy2#544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore (mariadb): Stop converting WKB to WKT by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/545\"\u003egeoalchemy/geoalchemy2#545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker containers by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/546\"\u003egeoalchemy/geoalchemy2#546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/547\"\u003egeoalchemy/geoalchemy2#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/553\"\u003egeoalchemy/geoalchemy2#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/554\"\u003egeoalchemy/geoalchemy2#554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Improve readbility of benchmark results by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/556\"\u003egeoalchemy/geoalchemy2#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/555\"\u003egeoalchemy/geoalchemy2#555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/557\"\u003egeoalchemy/geoalchemy2#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Remove warning message from MySQL/MariaDB reflection by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/560\"\u003egeoalchemy/geoalchemy2#560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/561\"\u003egeoalchemy/geoalchemy2#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: correct doc strings by \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/564\"\u003egeoalchemy/geoalchemy2#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.0 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/565\"\u003egeoalchemy/geoalchemy2#565\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/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.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/geoalchemy/geoalchemy2/blob/master/CHANGES.txt\"\u003egeoalchemy2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Fix doc strings for cache enabled - \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e(papacodebear/master) Fix: Remove warning from MySQL/MariaDB reflection \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Improve readability of benchmark results \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/547\"\u003e#547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker container \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/546\"\u003e#546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf (mariadb): Stop converting WKB to WKT \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/545\"\u003e#545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/544\"\u003e#544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Compile literal binds properly \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/540\"\u003e#540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/538\"\u003e#538\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/geoalchemy/geoalchemy2/commit/60767082df9f4587fadd56ab94847ebc39df8295\"\u003e\u003ccode\u003e6076708\u003c/code\u003e\u003c/a\u003e Release: 0.18.0 (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/565\"\u003e#565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/e13112177bdf79cae0d72a6e89d815dc272e3dc5\"\u003e\u003ccode\u003ee131121\u003c/code\u003e\u003c/a\u003e Feat: Add support of spatial indexes for Raster type for PostgreSQL (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/0b432086a0c3b8ab160c5cc1864aa65e02f35362\"\u003e\u003ccode\u003e0b43208\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/8791b2eec013f21f599ca060d9fee4aba72ec2a1\"\u003e\u003ccode\u003e8791b2e\u003c/code\u003e\u003c/a\u003e Docs: Fix doc strings for cache enabled (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/d3c1d04c8b462c61132403e44a7a4f04a487c142\"\u003e\u003ccode\u003ed3c1d04\u003c/code\u003e\u003c/a\u003e Chore: Move reflection type registering (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/24dc5d05d97fb9a2a57103c1823a58f06940a5e8\"\u003e\u003ccode\u003e24dc5d0\u003c/code\u003e\u003c/a\u003e Fix: Remove warning from MySQL/MariaDB reflection (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/71f7914d4ddf7d9c46c772e36a8463e20901966a\"\u003e\u003ccode\u003e71f7914\u003c/code\u003e\u003c/a\u003e Feat: Handle computed columns (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/c139cdbca62019d92d18f12429706732777c38e2\"\u003e\u003ccode\u003ec139cdb\u003c/code\u003e\u003c/a\u003e Perf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/2e94baa4f3ac23e0160ed841d4efe7ceb3fa2378\"\u003e\u003ccode\u003e2e94baa\u003c/code\u003e\u003c/a\u003e Test: Improve readbility of benchmark results (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/84292bc352ab7ff1102a0529772d32afb0309616\"\u003e\u003ccode\u003e84292bc\u003c/code\u003e\u003c/a\u003e Chore: Create FUNDING.yml (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sqlglot` from 27.14.0 to 27.17.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tobymao/sqlglot/blob/main/CHANGELOG.md\"\u003esqlglot's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v27.17.0] - 2025-09-23\u003c/h2\u003e\n\u003ch3\u003e:boom: BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/f4ad25882951de4e4442dfd5189a56d5a1c5e630\"\u003e\u003ccode\u003ef4ad258\u003c/code\u003e\u003c/a\u003e - Annotate types for Snowflake BASE64_DECODE_BINARY function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5917\"\u003e#5917\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eAnnotate types for Snowflake BASE64_DECODE_BINARY function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5917\"\u003e#5917\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/6d0e3f8dcae7ed1a7659ece69b1f94cec5e7300e\"\u003e\u003ccode\u003e6d0e3f8\u003c/code\u003e\u003c/a\u003e - Add parser support to ilike like function versions. \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5915\"\u003e#5915\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eAdd parser support to ilike like function versions. (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5915\"\u003e#5915\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/22c7ed7734b41ca544bb67bcc1ca4151f6d5f05f\"\u003e\u003ccode\u003e22c7ed7\u003c/code\u003e\u003c/a\u003e - parse tuple \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5920\"\u003e#5920\u003c/a\u003e by \u003ca href=\"https://github.com/geooo109\"\u003e\u003ccode\u003e@​geooo109\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eparse tuple (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/fc5624eca43d2855ac350c92d85b184a6893d5ca\"\u003e\u003ccode\u003efc5624e\u003c/code\u003e\u003c/a\u003e - annotate types for Snowflake ASCII function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5926\"\u003e#5926\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eannotate types for Snowflake ASCII function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5926\"\u003e#5926\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/4e8169045edcaa28ae43abeb07370df63846fbfd\"\u003e\u003ccode\u003e4e81690\u003c/code\u003e\u003c/a\u003e - annotate type for Snowflake COLLATE function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5931\"\u003e#5931\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eannotate type for Snowflake COLLATE function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5931\"\u003e#5931\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/f07d35d29104c6203efaab738118d1903614b83c\"\u003e\u003ccode\u003ef07d35d\u003c/code\u003e\u003c/a\u003e - annotate type for Snowflake CHR function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5929\"\u003e#5929\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eannotate type for Snowflake CHR function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/f8c0ee4d3c1a4d4a92b897d1cc85f9904c8e566b\"\u003e\u003ccode\u003ef8c0ee4\u003c/code\u003e\u003c/a\u003e - Add function and annotate snowflake hex decode string and binary functions \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5928\"\u003e#5928\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eAdd function and annotate snowflake hex decode string and binary functions (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5928\"\u003e#5928\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/66f9501d76d087798bad93e578273ab2a45e2575\"\u003e\u003ccode\u003e66f9501\u003c/code\u003e\u003c/a\u003e - annotate types for Snowflake BIT_LENGTH function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5927\"\u003e#5927\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eannotate types for Snowflake BIT_LENGTH function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5927\"\u003e#5927\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/78784370712df65a2e1e79a1c2b441131ed7222a\"\u003e\u003ccode\u003e7878437\u003c/code\u003e\u003c/a\u003e - annotate snowflake's \u003ccode\u003eBASE64_DECODE_STRING\u003c/code\u003e, \u003ccode\u003eBASE64_ENCODE\u003c/code\u003e \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5922\"\u003e#5922\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eannotate snowflake's \u003ccode\u003eBASE64_DECODE_STRING\u003c/code\u003e, \u003ccode\u003eBASE64_ENCODE\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5922\"\u003e#5922\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/9bcad040bd51dd03821c68eea1a73534fc7a81b7\"\u003e\u003ccode\u003e9bcad04\u003c/code\u003e\u003c/a\u003e - Annotate type for HEX ENCODE function. \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5936\"\u003e#5936\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eAnnotate type for HEX ENCODE function. (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5936\"\u003e#5936\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/590928f4637306e8cf3f1302d5dd5d5dbc76e7e0\"\u003e\u003ccode\u003e590928f\u003c/code\u003e\u003c/a\u003e - annotate type for Snowflake INITCAP function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5941\"\u003e#5941\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eannotate type for Snowflake INITCAP function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5941\"\u003e#5941\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/ac04de1944c7a976406581b489b3cf9b11dafb77\"\u003e\u003ccode\u003eac04de1\u003c/code\u003e\u003c/a\u003e - annotate type for Snowflake EDITDISTANCE function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5940\"\u003e#5940\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eannotate type for Snowflake EDITDISTANCE function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5940\"\u003e#5940\u003c/a\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/tobymao/sqlglot/commit/0dc0015a30072db80f47af7c34a160a9d32689ff\"\u003e\u003ccode\u003e0dc0015\u003c/code\u003e\u003c/a\u003e Support postgres omitted interval span unit (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5930\"\u003e#5930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/9e28af8a52ced951ecf7f4e85a6305e20a13de1f\"\u003e\u003ccode\u003e9e28af8\u003c/code\u003e\u003c/a\u003e feat(optimizer)!: Annotate type for snowflake COMPRESS function (\u003ca href=\"https://redirect.github.com/tobymao/sql...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1329","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1329","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1329/packages"},{"uuid":"2850679014","node_id":"PR_kwDOHTdvBs6p6ejm","number":1327,"state":"closed","title":"deps(ibis): bump the all group across 1 directory with 21 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":5,"pull_request":true,"closed_at":"2025-09-24T02:35:06.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-22T18:50:13.000Z","updated_at":"2025-09-24T02:35:06.000Z","time_to_close":114293,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":21,"packages":[{"name":"fastapi","old_version":"0.116.1","new_version":"0.117.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"pydantic","old_version":"2.10.6","new_version":"2.11.9","repository_url":"https://github.com/pydantic/pydantic"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.40.3","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"orjson","old_version":"3.10.16","new_version":"3.11.3","repository_url":"https://github.com/ijl/orjson"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.2","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.18.0","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"sqlglot","old_version":"27.14.0","new_version":"27.16.3","repository_url":"https://github.com/tobymao/sqlglot"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"duckdb","old_version":"1.3.2","new_version":"1.4.0","repository_url":"https://github.com/duckdb/duckdb-python"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.36.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"uvicorn-worker","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/Kludex/uvicorn-worker"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.8","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"49.0.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"pytest","old_version":"8.3.5","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.13.0","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.43","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.13.1","repository_url":"https://github.com/astral-sh/ruff"},{"name":"trino","old_version":"0.335.0","new_version":"0.336.0","repository_url":"https://github.com/trinodb/trino-python-client"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.9.1","repository_url":"https://github.com/ClickHouse/clickhouse-connect"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 21 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.116.1` | `0.117.1` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.11.9` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.40.3` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.1.1` |\n| [orjson](https://github.com/ijl/orjson) | `3.10.16` | `3.11.3` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.2` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.18.0` |\n| [sqlglot](https://github.com/tobymao/sqlglot) | `27.14.0` | `27.16.3` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [duckdb](https://github.com/duckdb/duckdb-python) | `1.3.2` | `1.4.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.36.0` |\n| [uvicorn-worker](https://github.com/Kludex/uvicorn-worker) | `0.3.0` | `0.4.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.8` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `49.0.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `8.4.2` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.13.0` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.43` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.3.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.13.1` |\n| [trino](https://github.com/trinodb/trino-python-client) | `0.335.0` | `0.336.0` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.9.1` |\n\n\nUpdates `fastapi` from 0.116.1 to 0.117.1\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's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.117.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix validation error when \u003ccode\u003eFile\u003c/code\u003e is declared after \u003ccode\u003eForm\u003c/code\u003e parameter. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/11194\"\u003e#11194\u003c/a\u003e by \u003ca href=\"https://github.com/thomasleveil\"\u003e\u003ccode\u003e@​thomasleveil\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.117.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨  Allow \u003ccode\u003eNone\u003c/code\u003e as return type for bodiless responses. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/9425\"\u003e#9425\u003c/a\u003e by \u003ca href=\"https://github.com/hofrob\"\u003e\u003ccode\u003e@​hofrob\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✨ Allow array values for OpenAPI schema \u003ccode\u003etype\u003c/code\u003e field. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13639\"\u003e#13639\u003c/a\u003e by \u003ca href=\"https://github.com/sammasak\"\u003e\u003ccode\u003e@​sammasak\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✨ Add OpenAPI \u003ccode\u003eexternal_docs\u003c/code\u003e parameter to \u003ccode\u003eFastAPI\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13713\"\u003e#13713\u003c/a\u003e by \u003ca href=\"https://github.com/cmtoro\"\u003e\u003ccode\u003e@​cmtoro\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⚡️ Fix \u003ccode\u003edefault_factory\u003c/code\u003e for response model field with Pydantic V1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/9704\"\u003e#9704\u003c/a\u003e by \u003ca href=\"https://github.com/vvanglro\"\u003e\u003ccode\u003e@​vvanglro\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Fix inconsistent processing of model docstring formfeed char with Pydantic V1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/6039\"\u003e#6039\u003c/a\u003e by \u003ca href=\"https://github.com/MaxwellPayne\"\u003e\u003ccode\u003e@​MaxwellPayne\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003ejsonable_encoder\u003c/code\u003e alters \u003ccode\u003ejson_encoders\u003c/code\u003e of Pydantic v1 objects. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/4972\"\u003e#4972\u003c/a\u003e by \u003ca href=\"https://github.com/aboubacs\"\u003e\u003ccode\u003e@​aboubacs\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Reenable \u003ccode\u003eallow_arbitrary_types\u003c/code\u003e when only 1 argument is used on the API endpoint. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13694\"\u003e#13694\u003c/a\u003e by \u003ca href=\"https://github.com/rmawatson\"\u003e\u003ccode\u003e@​rmawatson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003einspect.getcoroutinefunction()\u003c/code\u003e can break testing with \u003ccode\u003eunittest.mock.patch()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14022\"\u003e#14022\u003c/a\u003e by \u003ca href=\"https://github.com/secrett2633\"\u003e\u003ccode\u003e@​secrett2633\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRefactors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e♻️ Create \u003ccode\u003edependency-cache\u003c/code\u003e dict in \u003ccode\u003esolve_dependencies\u003c/code\u003e only if \u003ccode\u003eNone\u003c/code\u003e (don't re-create if empty). PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13689\"\u003e#13689\u003c/a\u003e by \u003ca href=\"https://github.com/bokshitsky\"\u003e\u003ccode\u003e@​bokshitsky\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Enable test case for duplicated headers in \u003ccode\u003etest_tutorial/test_header_params/test_tutorial003.py\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13864\"\u003e#13864\u003c/a\u003e by \u003ca href=\"https://github.com/Amogha-ark\"\u003e\u003ccode\u003e@​Amogha-ark\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📌 Pin \u003ccode\u003ehttpx\u003c/code\u003e to \u003ccode\u003e\u0026gt;=0.23.0,\u0026lt;1.0.0\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14086\"\u003e#14086\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\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📝 Add note about Cookies and JavaScript on \u003ccode\u003etutorial/cookie-params.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13510\"\u003e#13510\u003c/a\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Remove outdated formatting from \u003ccode\u003epath-params-numeric-validations.md\u003c/code\u003e for languages \u003ccode\u003een\u003c/code\u003e, \u003ccode\u003ees\u003c/code\u003e and \u003ccode\u003euk\u003c/code\u003e.. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14059\"\u003e#14059\u003c/a\u003e by \u003ca href=\"https://github.com/svlandeg\"\u003e\u003ccode\u003e@​svlandeg\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Fix and Improve English Documentation. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14048\"\u003e#14048\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\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📝 Update prompts and German translation. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14015\"\u003e#14015\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\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✅ Simplify tests for response_model. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14062\"\u003e#14062\u003c/a\u003e by \u003ca href=\"https://github.com/dynamicy\"\u003e\u003ccode\u003e@​dynamicy\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🚨 Install pydantic.mypy plugin. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14081\"\u003e#14081\u003c/a\u003e by \u003ca href=\"https://github.com/svlandeg\"\u003e\u003ccode\u003e@​svlandeg\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Add LLM test file. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14049\"\u003e#14049\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔨 Update translations script. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13968\"\u003e#13968\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🛠️ Update \u003ccode\u003edocs.py generate-readme\u003c/code\u003e command to remove permalinks from headers. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14055\"\u003e#14055\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆️ Update mypy to 1.14.1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/12970\"\u003e#12970\u003c/a\u003e by \u003ca href=\"https://github.com/tamird\"\u003e\u003ccode\u003e@​tamird\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.116.2\u003c/h2\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Upgrade Starlette supported version range to \u0026gt;=0.40.0,\u0026lt;0.49.0. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14077\"\u003e#14077\u003c/a\u003e by \u003ca href=\"https://github.com/musicinmybrain\"\u003e\u003ccode\u003e@​musicinmybrain\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/784f06cb9b7cc63f6a0cb2bc9cf238473eef93e2\"\u003e\u003ccode\u003e784f06c\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.117.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/b5c05893b4c43c93ff94761270ea750c0bd9e30e\"\u003e\u003ccode\u003eb5c0589\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/44fc67632bcdae4d078cb11b1a319ac122cbb06f\"\u003e\u003ccode\u003e44fc676\u003c/code\u003e\u003c/a\u003e 🐛 Fix validation error when \u003ccode\u003eFile\u003c/code\u003e is declared after \u003ccode\u003eForm\u003c/code\u003e parameter (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/11194\"\u003e#11194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/a84001000e59ff362e74f93b8d9a58a4309dac2d\"\u003e\u003ccode\u003ea840010\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/382d083e26a28e95c731e85345c85c6dc99b08b4\"\u003e\u003ccode\u003e382d083\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.117.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/a7f2dbe976bf72703376f0cd04487bfc4a849f83\"\u003e\u003ccode\u003ea7f2dbe\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/f1e6f978ce10a6f9b4c668350a79462e9ac330a8\"\u003e\u003ccode\u003ef1e6f97\u003c/code\u003e\u003c/a\u003e ⚡️ Fix \u003ccode\u003edefault_factory\u003c/code\u003e for response model field with Pydantic V1 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/9704\"\u003e#9704\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/b01d5c97a09b8f4f95b9e9b0d6bc083a23cdea20\"\u003e\u003ccode\u003eb01d5c9\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/b51ec36f2e442495de5e4c22ae51a8f5c44917eb\"\u003e\u003ccode\u003eb51ec36\u003c/code\u003e\u003c/a\u003e ✨  Allow \u003ccode\u003eNone\u003c/code\u003e as return type for bodiless responses (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/9425\"\u003e#9425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/0bdc3ca3732e3742e094bea2b320e9774659ac38\"\u003e\u003ccode\u003e0bdc3ca\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.116.1...0.117.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.10.6 to 2.11.9\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.11.9 2025-09-13\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBackport v1.10.23 changes by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\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.8...v2.11.9\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.8...v2.11.9\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.8 2025-09-13\u003c/h2\u003e\n\u003ch2\u003ev2.11.8 (2025-09-13)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix mypy plugin for mypy 1.18 by \u003ca href=\"https://github.com/cdce8p\"\u003e\u003ccode\u003e@​cdce8p\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12209\"\u003e#12209\u003c/a\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.7...v2.11.8\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.7...v2.11.8\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.7 2025-06-14\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCopy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build 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/11980\"\u003epydantic/pydantic#11980\u003c/a\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.6...v2.11.7\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.6...v2.11.7\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.6 2025-06-13\u003c/h2\u003e\n\u003ch2\u003ev2.11.6 (2025-06-13)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRebuild dataclass fields before 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/11949\"\u003e#11949\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlways store the original field assignment on \u003ccode\u003eFieldInfo\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/11946\"\u003e#11946\u003c/a\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.5...v2.11.6\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.5...v2.11.6\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.5 2025-05-22\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCheck if \u003ccode\u003eFieldInfo\u003c/code\u003e is complete after applying type variable map 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/11855\"\u003e#11855\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not delete mock validator/serializer in \u003ccode\u003emodel_rebuild()\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/11890\"\u003e#11890\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not duplicate metadata on model rebuild 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/11902\"\u003e#11902\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/pydantic/pydantic/blob/v2.11.9/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.11.9 (2025-09-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.9\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBackport v1.10.23 changes by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.8 (2025-09-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.8\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix mypy plugin for mypy 1.18 by \u003ca href=\"https://github.com/cdce8p\"\u003e\u003ccode\u003e@​cdce8p\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12209\"\u003e#12209\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.7 (2025-06-14)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.7\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCopy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build 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/11898\"\u003e#11898\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.6 (2025-06-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.6\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRebuild dataclass fields before 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/11949\"\u003e#11949\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlways store the original field assignment on \u003ccode\u003eFieldInfo\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/11946\"\u003e#11946\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.5 (2025-05-22)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCheck if \u003ccode\u003eFieldInfo\u003c/code\u003e is complete after applying type variable map 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/11855\"\u003e#11855\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/pydantic/pydantic/commit/92310953c146a2ac668a0141be820c083e325f5d\"\u003e\u003ccode\u003e9231095\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/f003a89eeaff35ee18f220a2c790d20536e3d0ab\"\u003e\u003ccode\u003ef003a89\u003c/code\u003e\u003c/a\u003e Backport v1.10.23 changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/96b81ddaf93a1f2e19ff1609080c33de10b8d931\"\u003e\u003ccode\u003e96b81dd\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/966f377692194b3f1d6d5155ac78052bec0a751d\"\u003e\u003ccode\u003e966f377\u003c/code\u003e\u003c/a\u003e Fix mypy v2 plugin for upcoming \u003ccode\u003e1.18\u003c/code\u003e mypy release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/5f033e46c54fea1b59b6894d6527daf49475e690\"\u003e\u003ccode\u003e5f033e4\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c3368b83c411f421a7322959bc29f3bea4bd252a\"\u003e\u003ccode\u003ec3368b8\u003c/code\u003e\u003c/a\u003e Copy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/11980\"\u003e#11980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/3987b23db4b31ff35e9fa15c21c0c1d1c9808838\"\u003e\u003ccode\u003e3987b23\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/dc7a9d20bee55a3a6e7397ee46abfcd9057b627b\"\u003e\u003ccode\u003edc7a9d2\u003c/code\u003e\u003c/a\u003e Always store the original field assignment on \u003ccode\u003eFieldInfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c284c279a5b8c95d32ab5ec31d2511b3b27bfa87\"\u003e\u003ccode\u003ec284c27\u003c/code\u003e\u003c/a\u003e Rebuild dataclass fields before schema generation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/5e6d1dc71fe9bd832635cb2e9b4af92286fd00b8\"\u003e\u003ccode\u003e5e6d1dc\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.5\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.11.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.40.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.40.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable logging response body for async logs (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1756\"\u003e#1756\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2f0ddfeb9f6c726c68beebd7eefd32c86f7f0963\"\u003e2f0ddfe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.39.0...v2.40.0\"\u003e2.40.0\u003c/a\u003e (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd request response logging to auth (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1678\"\u003e#1678\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/77ad53eb00c74b3badc486c8207a16dbc49f37e5\"\u003e77ad53e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrect webauthn JSON parsing to be compliant with standard. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1658\"\u003e#1658\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0c5ef364fb13ca9d7d17100166de87732d752de8\"\u003e0c5ef36\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.39.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.39.0\"\u003e2.39.0\u003c/a\u003e (2025-04-14)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds GA support for X.509 workload identity federation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1695\"\u003e#1695\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/74959605400f9a1976bbdc52c029943b634eb553\"\u003e7495960\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable logging response body for async logs (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1756\"\u003e#1756\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2f0ddfeb9f6c726c68beebd7eefd32c86f7f0963\"\u003e2f0ddfe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.39.0...v2.40.0\"\u003e2.40.0\u003c/a\u003e (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd request response logging to auth (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1678\"\u003e#1678\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/77ad53eb00c74b3badc486c8207a16dbc49f37e5\"\u003e77ad53e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrect webauthn JSON parsing to be compliant with standard. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1658\"\u003e#1658\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0c5ef364fb13ca9d7d17100166de87732d752de8\"\u003e0c5ef36\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.39.0\"\u003e2.39.0\u003c/a\u003e (2025-04-14)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds GA support for X.509 workload identity federation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1695\"\u003e#1695\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/74959605400f9a1976bbdc52c029943b634eb553\"\u003e7495960\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd impersonated SA via local ADC support for fetch_id_token (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1740\"\u003e#1740\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/f24976452d741de6a49d9b7a85cdab47812f5312\"\u003ef249764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd missing packaging dependency for feature requiring urllib3 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1732\"\u003e#1732\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/221f4a82fa25c1ad453b85bc8b7f2fc304724879\"\u003e221f4a8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd request timeout for MDS requests (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1699\"\u003e#1699\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/9f7d3fa92c0e656a1c970182833abe2d0d3ad3ee\"\u003e9f7d3fa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExplicitly declare support for Python 3.13 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1741\"\u003e#1741\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/6fd04d57df90866f24b554c489f8f2653467d70e\"\u003e6fd04d5\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/googleapis/google-auth-library-python/commit/ca94ead4035beea4741dc5384449032f8e6f75d8\"\u003e\u003ccode\u003eca94ead\u003c/code\u003e\u003c/a\u003e chore(main): release 2.40.3 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1768\"\u003e#1768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e\u003ccode\u003e88891cc\u003c/code\u003e\u003c/a\u003e fix: auth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0be91e2f795c989a592cb9c7828a1c53d8107165\"\u003e\u003ccode\u003e0be91e2\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;fix: remove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25660bc57569b3f3e9a1f664516d10f4bc8744b8\"\u003e\u003ccode\u003e25660bc\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1774\"\u003e#1774\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e\u003ccode\u003e7c61c7d\u003c/code\u003e\u003c/a\u003e fix: remove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e\u003ccode\u003e554f967\u003c/code\u003e\u003c/a\u003e fix: retry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/6845065aca69d5130eec40fbe052f56c36860bf7\"\u003e\u003ccode\u003e6845065\u003c/code\u003e\u003c/a\u003e chore(main): release 2.40.2 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1766\"\u003e#1766\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e\u003ccode\u003e44e38b6\u003c/code\u003e\u003c/a\u003e fix: Update test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e\u003ccode\u003e97ed1c8\u003c/code\u003e\u003c/a\u003e chore: remove sync response logs in AuthorizedSession (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1761\"\u003e#1761\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/13a897ea05feff6a2267f700a53b50e9741919a0\"\u003e\u003ccode\u003e13a897e\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1764\"\u003e#1764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.40.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: ensure find_dotenv work reliably on python 3.13 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003etheskumar/python-dotenv#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cli): issue with execvpe on Windows by \u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\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/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a security policy by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/512\"\u003etheskumar/python-dotenv#512\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep GitHub Actions up to date with GitHub's Dependabot by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/506\"\u003etheskumar/python-dotenv#506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix multiline string in test.yml \u0026amp; use fail-fast strategy by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/514\"\u003etheskumar/python-dotenv#514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnhance dotenv run: Switch to execvpe for better resource management and signal handling by \u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add py3.13 to test.yml by \u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 trove classifier by \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for python 3.13 and drop 3.8 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/551\"\u003etheskumar/python-dotenv#551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update README.md by \u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSome more s/Python-dotenv/python-dotenv/ by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/552\"\u003etheskumar/python-dotenv#552\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd _is_debugger so load_dotenv will work in pdb by \u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/553\"\u003etheskumar/python-dotenv#553\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/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/553\"\u003etheskumar/python-dotenv#553\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.0\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCLI: revert the use of execvpe on Windows by [\u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003e#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.0] - 2025-03-25\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFeature\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for python 3.13\u003c/li\u003e\n\u003cli\u003eEnhance \u003ccode\u003edotenv run\u003c/code\u003e, switch to \u003ccode\u003eexecvpe\u003c/code\u003e for better resource management and signal handling (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/523\"\u003e#523\u003c/a\u003e) by [\u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efind_dotenv\u003c/code\u003e and \u003ccode\u003eload_dotenv\u003c/code\u003e now correctly looks up at the current directory when running in debugger or pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e by [\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e])\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eMisc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8\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/theskumar/python-dotenv/commit/16e660d384b942b11879b44500afbbe021650448\"\u003e\u003ccode\u003e16e660d\u003c/code\u003e\u003c/a\u003e Bump version: 1.1.0 → 1.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/667e82f18d6e5306894c8746c46b1da2d031bd23\"\u003e\u003ccode\u003e667e82f\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/9d85edb3b8652de4601f9ad8a7a49ad9909f898a\"\u003e\u003ccode\u003e9d85edb\u003c/code\u003e\u003c/a\u003e fix(cli): issue with execvpe on Windows (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/566\"\u003e#566\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8411987b9301f716245074872afa30646e9b9eb7\"\u003e\u003ccode\u003e8411987\u003c/code\u003e\u003c/a\u003e fix: ensure find_dotenv work reliably on python 3.13 (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/01f899733de664cda0550207067eb36a1795062f\"\u003e\u003ccode\u003e01f8997\u003c/code\u003e\u003c/a\u003e docs update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/6a02ef5a1034d66338811757df07a113a1169af6\"\u003e\u003ccode\u003e6a02ef5\u003c/code\u003e\u003c/a\u003e update mkdocs -\u0026gt; mkdocstrings config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/36c6270db41e1e88be4ec21d0fb876ba0c79d363\"\u003e\u003ccode\u003e36c6270\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/2198b698c021851201261fac27884ee8db6553d5\"\u003e\u003ccode\u003e2198b69\u003c/code\u003e\u003c/a\u003e Bump version: 1.0.1 → 1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/c89fb6d41c0a25f670b34ba05f392260eaa6ccd1\"\u003e\u003ccode\u003ec89fb6d\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8dd413e84b1fb1b3368c02106aab07a533fae015\"\u003e\u003ccode\u003e8dd413e\u003c/code\u003e\u003c/a\u003e Add _is_debugger so load_dotenv will work in pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `orjson` from 3.10.16 to 3.11.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ijl/orjson/releases\"\u003eorjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared buffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI Windows aarch64/arm64 wheels.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 alpha 7.\u003c/li\u003e\n\u003cli\u003eFix incompatibility running on Python 3.13 using WASM.\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/ijl/orjson/blob/master/CHANGELOG.md\"\u003eorjson's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.3 - 2025-08-26\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1 - 2025-07-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures. This was introduced in 3.11.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 - 2025-07-15\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared\nbuffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18 - 2025-04-29\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17 - 2025-04-29\u003c/h2\u003e\n\u003ch3\u003eChanged\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/ijl/orjson/commit/aa8c946cfbe2aba29016bc9c9ddc8713cb00173b\"\u003e\u003ccode\u003eaa8c946\u003c/code\u003e\u003c/a\u003e 3.11.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2442efc125068e43bec97c26e3a6b5da8932936c\"\u003e\u003ccode\u003e2442efc\u003c/code\u003e\u003c/a\u003e Fix PyPI project metadata when using maturin 1.9.2 or later\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/ba760146e7bc407d729436d8dbcb9e1495c83773\"\u003e\u003ccode\u003eba76014\u003c/code\u003e\u003c/a\u003e 3.11.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/49315905a4f071f2279b6df87125ca94780b5173\"\u003e\u003ccode\u003e4931590\u003c/code\u003e\u003c/a\u003e CPython compatibility misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/3de9324511a704ffbe13a94221c8f05062bf71e8\"\u003e\u003ccode\u003e3de9324\u003c/code\u003e\u003c/a\u003e MSRV 1.85, edition 2024, stdarch_x86_avx512 fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/d7359c9899c63570b21a200bc0f8d559eea7cd19\"\u003e\u003ccode\u003ed7359c9\u003c/code\u003e\u003c/a\u003e Remove macOS 13 CI runner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/1d3aa7af6271981907b1e0d1eeee2e07a7c49302\"\u003e\u003ccode\u003e1d3aa7a\u003c/code\u003e\u003c/a\u003e 3.11.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/11d29cb9bcd73777c554d65ba670cde2d6c8c802\"\u003e\u003ccode\u003e11d29cb\u003c/code\u003e\u003c/a\u003e 3.14 packaging misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/168391825ba415df853735a4359095a0327dcd1a\"\u003e\u003ccode\u003e1683918\u003c/code\u003e\u003c/a\u003e bytes::BufMut\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/9c33ff9df61b3b9d71527acf4fb60a735d841025\"\u003e\u003ccode\u003e9c33ff9\u003c/code\u003e\u003c/a\u003e Fix big-endian PyStr\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ijl/orjson/compare/3.10.16...3.11.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` from 2.2.3 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\u003ch2\u003ePandas 2.3.0\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.0.\nThis release includes some new features, bug fixes, and performance improvements. 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.0/whatsnew/v2.3.0.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.0 supports Python 3.10 and higher.\u003c/p\u003e\n\u003cp\u003eThe release will be available on the defaults and conda-forge channels:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install -c conda-forge pandas\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr via PyPI:\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/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.2.3...v2.3.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geoalchemy2` from 0.17.1 to 0.18.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/releases\"\u003egeoalchemy2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/538\"\u003egeoalchemy/geoalchemy2#538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/540\"\u003egeoalchemy/geoalchemy2#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCompile literal binds by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/543\"\u003egeoalchemy/geoalchemy2#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/544\"\u003egeoalchemy/geoalchemy2#544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore (mariadb): Stop converting WKB to WKT by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/545\"\u003egeoalchemy/geoalchemy2#545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker containers by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/546\"\u003egeoalchemy/geoalchemy2#546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/547\"\u003egeoalchemy/geoalchemy2#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/553\"\u003egeoalchemy/geoalchemy2#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/554\"\u003egeoalchemy/geoalchemy2#554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Improve readbility of benchmark results by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/556\"\u003egeoalchemy/geoalchemy2#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/555\"\u003egeoalchemy/geoalchemy2#555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/557\"\u003egeoalchemy/geoalchemy2#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Remove warning message from MySQL/MariaDB reflection by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/560\"\u003egeoalchemy/geoalchemy2#560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/561\"\u003egeoalchemy/geoalchemy2#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: correct doc strings by \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/564\"\u003egeoalchemy/geoalchemy2#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.0 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/565\"\u003egeoalchemy/geoalchemy2#565\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/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.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/geoalchemy/geoalchemy2/blob/master/CHANGES.txt\"\u003egeoalchemy2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Fix doc strings for cache enabled - \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e(papacodebear/master) Fix: Remove warning from MySQL/MariaDB reflection \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Improve readability of benchmark results \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/547\"\u003e#547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker container \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/546\"\u003e#546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf (mariadb): Stop converting WKB to WKT \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/545\"\u003e#545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/544\"\u003e#544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Compile literal binds properly \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/540\"\u003e#540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/538\"\u003e#538\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/geoalchemy/geoalchemy2/commit/60767082df9f4587fadd56ab94847ebc39df8295\"\u003e\u003ccode\u003e6076708\u003c/code\u003e\u003c/a\u003e Release: 0.18.0 (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/565\"\u003e#565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/e13112177bdf79cae0d72a6e89d815dc272e3dc5\"\u003e\u003ccode\u003ee131121\u003c/code\u003e\u003c/a\u003e Feat: Add support of spatial indexes for Raster type for PostgreSQL (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/0b432086a0c3b8ab160c5cc1864aa65e02f35362\"\u003e\u003ccode\u003e0b43208\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/8791b2eec013f21f599ca060d9fee4aba72ec2a1\"\u003e\u003ccode\u003e8791b2e\u003c/code\u003e\u003c/a\u003e Docs: Fix doc strings for cache enabled (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/d3c1d04c8b462c61132403e44a7a4f04a487c142\"\u003e\u003ccode\u003ed3c1d04\u003c/code\u003e\u003c/a\u003e Chore: Move reflection type registering (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/24dc5d05d97fb9a2a57103c1823a58f06940a5e8\"\u003e\u003ccode\u003e24dc5d0\u003c/code\u003e\u003c/a\u003e Fix: Remove warning from MySQL/MariaDB reflection (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/71f7914d4ddf7d9c46c772e36a8463e20901966a\"\u003e\u003ccode\u003e71f7914\u003c/code\u003e\u003c/a\u003e Feat: Handle computed columns (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/c139cdbca62019d92d18f12429706732777c38e2\"\u003e\u003ccode\u003ec139cdb\u003c/code\u003e\u003c/a\u003e Perf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/2e94baa4f3ac23e0160ed841d4efe7ceb3fa2378\"\u003e\u003ccode\u003e2e94baa\u003c/code\u003e\u003c/a\u003e Test: Improve readbility of benchmark results (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/84292bc352ab7ff1102a0529772d32afb0309616\"\u003e\u003ccode\u003e84292bc\u003c/code\u003e\u003c/a\u003e Chore: Create FUNDING.yml (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sqlglot` from 27.14.0 to 27.16.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tobymao/sqlglot/blob/main/CHANGELOG.md\"\u003esqlglot's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v27.16.3] - 2025-09-18\u003c/h2\u003e\n\u003ch3\u003e:bug: Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/d1270517c3e124ca59caf29e4506eb3848f7452e\"\u003e\u003ccode\u003ed127051\u003c/code\u003e\u003c/a\u003e - precedence issue with column operator parsing \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5914\"\u003e#5914\u003c/a\u003e by \u003ca href=\"https://github.com/georgesittas\"\u003e\u003ccode\u003e@​georgesittas\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[v27.16.2] - 2025-09-18\u003c/h2\u003e\n\u003ch3\u003e:wrench: Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/837890c7e8bcc3695541bbe32fd8088eee70fea3\"\u003e\u003ccode\u003e837890c\u003c/code\u003e\u003c/a\u003e - handle badly formed binary expressions gracefully in type inference \u003cem\u003e(commit by \u003ca href=\"https://github.com/georgesittas\"\u003e\u003ccode\u003e@​georgesittas\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[v27.16.1] - 2025-09-18\u003c/h2\u003e\n\u003ch3\u003e:bug: Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/0e256b3f864bc2d026817bd08e89ee89f44ad256\"\u003e\u003ccode\u003e0e256b3\u003c/code\u003e\u003c/a\u003e - edge case with parsing \u003ccode\u003einterval\u003c/code\u003e as identifier \u003cem\u003e(commit by \u003ca href=\"https://github.com/georgesittas\"\u003e\u003ccode\u003e@​georgesittas\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[v27.16.0] - 2025-09-18\u003c/h2\u003e\n\u003ch3\u003e:boom: BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/5a973e9a88fa7f522a9bf91dc60fb0f6effef53d\"\u003e\u003ccode\u003e5a973e9\u003c/code\u003e\u003c/a\u003e - annotate types for Snowflake AI_CLASSIFY function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5909\"\u003e#5909\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eannotate types for Snowflake AI_CLASSIFY function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5909\"\u003e#5909\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/2d0d908b5bbc32ff3bc92eb1ae9fc6e5ac3409bc\"\u003e\u003ccode\u003e2d0d908\u003c/code\u003e\u003c/a\u003e - produce TableAlias instead of Alias for USING in merge builder \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5911\"\u003e#5911\u003c/a\u003e by \u003ca href=\"https://github.com/georgesittas\"\u003e\u003ccode\u003e@​georgesittas\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eproduce TableAlias instead of Alias for USING in merge builder (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e:sparkles: New Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/5a973e9a88fa7f522a9bf91dc60fb0f6effef53d\"\u003e\u003ccode\u003e5a973e9\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003eoptimizer\u003c/strong\u003e: annotate types for Snowflake AI_CLASSIFY function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5909\"\u003e#5909\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e:bug: Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/2d0d908b5bbc32ff3bc92eb1ae9fc6e5ac3409bc\"\u003e\u003ccode\u003e2d0d908\u003c/code\u003e\u003c/a\u003e - produce TableAlias instead of Alias for USING in merge builder \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5911\"\u003e#5911\u003c/a\u003e by \u003ca href=\"https://github.com/georgesittas\"\u003e\u003ccode\u003e@​georgesittas\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\n\u003cul\u003e\n\u003cli\u003e:arrow_lower_right: \u003cem\u003efixes issue \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5910\"\u003e#5910\u003c/a\u003e opened by \u003ca href=\"https://github.com/deepyaman\"\u003e\u003ccode\u003e@​deepyaman\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e:wrench: Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/e8974e70d9956ce7a5cb119ba465660f5f172a17\"\u003e\u003ccode\u003ee8974e7\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003eoptimizer\u003c/strong\u003e: Add tests for snowflake likeall, likeany and ilikeany functions \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5908\"\u003e#5908\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[v27.15.3] - 2025-09-17\u003c/h2\u003e\n\u003ch3\u003e:bug: Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/bd3e9655aa72ffef8a9e0221205fa2c3915ef58b\"\u003e\u003ccode\u003ebd3e965\u003c/code\u003e\u003c/a\u003e - allow \u003ccode\u003elock\u003c/code\u003e to be used as an identifier \u003cem\u003e(commit by \u003ca href=\"https://github.com/georgesittas\"\u003e\u003ccode\u003e@​georgesittas\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[v27.15.2] - 2025-09-17\u003c/h2\u003e\n\u003ch3\u003e:sparkles: New Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/d5cf1149932850a91cb5f1ebecda2652616729ef\"\u003e\u003ccode\u003ed5cf114\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003educkdb\u003c/strong\u003e: support INSTALL \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5904\"\u003e#5904\u003c/a\u003e by \u003ca href=\"https://github.com/geooo109\"\u003e\u003ccode\u003e@​geooo109\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/73e05bb15bb86e4a07cc09bf02028a6cf7fa1e6f\"\u003e\u003ccode\u003e73e05bb\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003esnowflake\u003c/strong\u003e: properly generate \u003ccode\u003eBITNOT\u003c/code\u003e \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5906\"\u003e#5906\u003c/a\u003e by \u003ca href=\"https://github.com/YuvalOmerRep\"\u003e\u003ccode\u003e@​YuvalOmerRep\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/16f317c04f7c0a398c38b461e05f4d4c30baf98b\"\u003e\u003ccode\u003e16f317c\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003esnowflake\u003c/strong\u003e: add support for \u003ccode\u003e\u0026lt;model\u0026gt;!\u0026lt;attribute\u0026gt;\u003c/code\u003e syntax \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5907\"\u003e#5907\u003c/a\u003e by \u003ca href=\"https://github.com/georgesittas\"\u003e\u003ccode\u003e@​georgesittas\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e:recycle: Refactors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/095b2ac3af230eff86d9bc1b0fd3a0a2095f151c\"\u003e\u003ccode\u003e095b2ac\u003c/code\u003e\u003c/a\u003e - clean up duckdb INSTALL tests \u003cem\u003e(commit by \u003ca href=\"https://github.com/geooo109\"\u003e\u003ccode\u003e@​geooo109\u003c/code\u003e\u003c/a\u003e)\u003c/em\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/tobymao/sqlglot/commit/d1270517c3e124ca59caf29e4506eb3848f7452e\"\u003e\u003ccode\u003ed127051\u003c/code\u003e\u003c/a\u003e Fix: precedence issue with column operator parsing (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5914\"\u003e#5914\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/a120f32d0f5456078f0c10b539c3c41a1942dec4\"\u003e\u003ccode\u003ea120f32\u003c/code\u003e\u003c/a\u003e docs: update API docs, CHANGELOG.md for v27.16.2 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/837890c7e8bcc3695541bbe32fd8088eee70fea3\"\u003e\u003ccode\u003e837890c\u003c/code\u003e\u003c/a\u003e Chore: handle badly formed binary expressions gracefully in type inference\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/080b1a537795e7352ad67b4718253eaec018c9d8\"\u003e\u003ccode\u003e080b1a5\u003c/code\u003e\u003c/a\u003e docs: update API docs, CHANGELOG.md for v27.16.1 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/0e256b3f864bc2d026817bd08e89ee89f44ad256\"\u003e\u003ccode\u003e0e256b3\u003c/code\u003e\u003c/a\u003e Fix: edge case with parsing \u003ccode\u003einterval\u003c/code\u003e as identifier\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/88d72af1b08bacc1323424ec517ff6ca53eb7ff4\"\u003e\u003ccode\u003e88d72af\u003c/code\u003e\u003c/a\u003e docs: update API docs, CHANGELOG.md for v27.16.0 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/2d0d908b5bbc32ff3bc92eb1ae9fc6e5ac3409bc\"\u003e\u003ccode\u003e2d0d908\u003c/code\u003e\u003c/a\u003e Fix!: produce TableAlias instead ...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1327","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1327","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1327/packages"},{"uuid":"3425274705","node_id":"PR_kwDOHTdvBs6pBYGF","number":1324,"state":"open","title":"deps(ibis): bump the all group across 1 directory with 18 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-17T08:35:59.000Z","updated_at":"2025-09-17T08:36:15.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":18,"packages":[{"name":"fastapi","old_version":"0.116.1","new_version":"0.116.2","repository_url":"https://github.com/fastapi/fastapi"},{"name":"pydantic","old_version":"2.10.6","new_version":"2.11.9","repository_url":"https://github.com/pydantic/pydantic"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.40.3","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"orjson","old_version":"3.10.16","new_version":"3.11.3","repository_url":"https://github.com/ijl/orjson"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.2","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.18.0","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"duckdb","old_version":"1.3.2","new_version":"1.4.0","repository_url":"https://github.com/duckdb/duckdb-python"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.8","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"49.0.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"pytest","old_version":"8.3.5","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.13.0","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.43","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.13.0","repository_url":"https://github.com/astral-sh/ruff"},{"name":"trino","old_version":"0.335.0","new_version":"0.336.0","repository_url":"https://github.com/trinodb/trino-python-client"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.9.1","repository_url":"https://github.com/ClickHouse/clickhouse-connect"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 18 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.116.1` | `0.116.2` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.11.9` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.40.3` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.1.1` |\n| [orjson](https://github.com/ijl/orjson) | `3.10.16` | `3.11.3` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.2` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.18.0` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [duckdb](https://github.com/duckdb/duckdb-python) | `1.3.2` | `1.4.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.8` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `49.0.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `8.4.2` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.13.0` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.43` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.3.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.13.0` |\n| [trino](https://github.com/trinodb/trino-python-client) | `0.335.0` | `0.336.0` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.9.1` |\n\n\nUpdates `fastapi` from 0.116.1 to 0.116.2\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's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.116.2\u003c/h2\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Upgrade Starlette supported version range to \u0026gt;=0.40.0,\u0026lt;0.49.0. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14077\"\u003e#14077\u003c/a\u003e by \u003ca href=\"https://github.com/musicinmybrain\"\u003e\u003ccode\u003e@​musicinmybrain\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📝 Add documentation for Behind a Proxy - Proxy Forwarded Headers, using \u003ccode\u003e--forwarded-allow-ips=\u0026quot;*\u0026quot;\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14028\"\u003e#14028\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add deprecation info block about \u003ccode\u003edict()\u003c/code\u003e in \u003ccode\u003edocs/tutorial/body.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13906\"\u003e#13906\u003c/a\u003e by \u003ca href=\"https://github.com/jomkv\"\u003e\u003ccode\u003e@​jomkv\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Fix Twitter to be X (Twitter) everywhere in documentation. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13809\"\u003e#13809\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🐛 Prevent scroll-to-top on restart/fast buttons in \u003ccode\u003etermynal.js\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13714\"\u003e#13714\u003c/a\u003e by \u003ca href=\"https://github.com/Ashish-Pandey62\"\u003e\u003ccode\u003e@​Ashish-Pandey62\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Update testing events documentation. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13259\"\u003e#13259\u003c/a\u003e by \u003ca href=\"https://github.com/z0z0r4\"\u003e\u003ccode\u003e@​z0z0r4\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Remove obsolete \u003ccode\u003eurl\u003c/code\u003e field in error responses in docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13655\"\u003e#13655\u003c/a\u003e by \u003ca href=\"https://github.com/Taoup\"\u003e\u003ccode\u003e@​Taoup\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Bring the \u003ccode\u003escope\u003c/code\u003e claim in line with the standard in \u003ccode\u003edocs_src/security/tutorial005.py\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/11189\"\u003e#11189\u003c/a\u003e by \u003ca href=\"https://github.com/DurandA\"\u003e\u003ccode\u003e@​DurandA\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Update TrustedHostMiddleware Documentation. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/11441\"\u003e#11441\u003c/a\u003e by \u003ca href=\"https://github.com/soulee-dev\"\u003e\u003ccode\u003e@​soulee-dev\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Remove links to site callbackhell.com that doesn't exist anymore. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14006\"\u003e#14006\u003c/a\u003e by \u003ca href=\"https://github.com/dennybiasiolli\"\u003e\u003ccode\u003e@​dennybiasiolli\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add permalinks to headers in English docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13993\"\u003e#13993\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Update \u003ccode\u003edocs/en/docs/advanced/generate-clients.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13793\"\u003e#13793\u003c/a\u003e by \u003ca href=\"https://github.com/mrlubos\"\u003e\u003ccode\u003e@​mrlubos\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add discussion template for new language translation requests. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13535\"\u003e#13535\u003c/a\u003e by \u003ca href=\"https://github.com/alejsdev\"\u003e\u003ccode\u003e@​alejsdev\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📝 Fix code include for Pydantic models example in \u003ccode\u003edocs/zh/docs/python-types.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13997\"\u003e#13997\u003c/a\u003e by \u003ca href=\"https://github.com/anfreshman\"\u003e\u003ccode\u003e@​anfreshman\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Update Portuguese Translation for \u003ccode\u003edocs/pt/docs/async.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13863\"\u003e#13863\u003c/a\u003e by \u003ca href=\"https://github.com/EdmilsonRodrigues\"\u003e\u003ccode\u003e@​EdmilsonRodrigues\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Fix highlight line in \u003ccode\u003edocs/ja/docs/tutorial/body.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13927\"\u003e#13927\u003c/a\u003e by \u003ca href=\"https://github.com/KoyoMiyazaki\"\u003e\u003ccode\u003e@​KoyoMiyazaki\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Add Persian translation for \u003ccode\u003edocs/fa/docs/environment-variables.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13923\"\u003e#13923\u003c/a\u003e by \u003ca href=\"https://github.com/Mohammad222PR\"\u003e\u003ccode\u003e@​Mohammad222PR\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Add Persian translation for \u003ccode\u003edocs/fa/docs/python-types.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13524\"\u003e#13524\u003c/a\u003e by \u003ca href=\"https://github.com/Mohammad222PR\"\u003e\u003ccode\u003e@​Mohammad222PR\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Update Portuguese Translation for \u003ccode\u003edocs/pt/docs/project-generation.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13875\"\u003e#13875\u003c/a\u003e by \u003ca href=\"https://github.com/EdmilsonRodrigues\"\u003e\u003ccode\u003e@​EdmilsonRodrigues\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Add Persian translation for \u003ccode\u003edocs/fa/docs/async.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13541\"\u003e#13541\u003c/a\u003e by \u003ca href=\"https://github.com/Mohammad222PR\"\u003e\u003ccode\u003e@​Mohammad222PR\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Add Bangali translation for \u003ccode\u003edocs/bn/about/index.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13882\"\u003e#13882\u003c/a\u003e by \u003ca href=\"https://github.com/sajjadrahman56\"\u003e\u003ccode\u003e@​sajjadrahman56\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⬆ Bump pyjwt from 2.8.0 to 2.9.0. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13960\"\u003e#13960\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ [pre-commit.ci] pre-commit autoupdate. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14080\"\u003e#14080\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\u003cli\u003e⬆ Bump actions/setup-python from 5 to 6. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14042\"\u003e#14042\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump actions/labeler from 5 to 6. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14046\"\u003e#14046\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ [pre-commit.ci] pre-commit autoupdate. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14056\"\u003e#14056\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\u003cli\u003e⬆ [pre-commit.ci] pre-commit autoupdate. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14035\"\u003e#14035\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\u003cli\u003e⬆ Bump pypa/gh-action-pypi-publish from 1.12.4 to 1.13.0. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14041\"\u003e#14041\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👥 Update FastAPI People - Contributors and Translators. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14029\"\u003e#14029\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👥 Update FastAPI People - Sponsors. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14030\"\u003e#14030\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👥 Update FastAPI GitHub topic repositories. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14031\"\u003e#14031\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👥 Update FastAPI People - Experts. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14034\"\u003e#14034\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👷 Detect and label merge conflicts on PRs automatically. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14045\"\u003e#14045\u003c/a\u003e by \u003ca href=\"https://github.com/svlandeg\"\u003e\u003ccode\u003e@​svlandeg\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔧 Update sponsors: remove Platform.sh. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14027\"\u003e#14027\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔧 Update sponsors: remove Mobb. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14026\"\u003e#14026\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🛠️ Update \u003ccode\u003emkdocs_hooks\u003c/code\u003e to handle headers with permalinks when building docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14025\"\u003e#14025\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ [pre-commit.ci] pre-commit autoupdate. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14016\"\u003e#14016\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\u003cli\u003e⬆ Bump \u003ccode\u003emkdocs-macros-plugin\u003c/code\u003e from 1.3.7 to 1.3.9. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14003\"\u003e#14003\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/a372edf7e8825068a780df643700e6cce7e035c5\"\u003e\u003ccode\u003ea372edf\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.116.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/bc1aba7322fb29195c474ea385073bbb619f0432\"\u003e\u003ccode\u003ebc1aba7\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/7563579dc882aebfaeaf2bc37bd97fead72740a3\"\u003e\u003ccode\u003e7563579\u003c/code\u003e\u003c/a\u003e ⬆️ Upgrade Starlette supported version range to \u0026gt;=0.40.0,\u0026lt;0.49.0 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14077\"\u003e#14077\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/938dd045fd6b5e740c55b1cdc912fe50449669a9\"\u003e\u003ccode\u003e938dd04\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/2a446f7151cea0595d0cadeb08f68486e083c3a1\"\u003e\u003ccode\u003e2a446f7\u003c/code\u003e\u003c/a\u003e ⬆ Bump pyjwt from 2.8.0 to 2.9.0 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/13960\"\u003e#13960\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/ed45b074b93e35cacfce87903b51af8f0ae9cf7e\"\u003e\u003ccode\u003eed45b07\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/480cd8f4f9bf95bd3b2b9a4687444f5f54e0059c\"\u003e\u003ccode\u003e480cd8f\u003c/code\u003e\u003c/a\u003e ⬆ [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14080\"\u003e#14080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/16d75d90eb96976a57b94cc24e4018859cd54c4d\"\u003e\u003ccode\u003e16d75d9\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/a4841de65e05fffc8d99198f2527c6903e3b9ad7\"\u003e\u003ccode\u003ea4841de\u003c/code\u003e\u003c/a\u003e ⬆ Bump actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14042\"\u003e#14042\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/984d646705794b303de0ee570fff2198a2298fdb\"\u003e\u003ccode\u003e984d646\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.116.1...0.116.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.10.6 to 2.11.9\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.11.9 2025-09-13\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBackport v1.10.23 changes by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\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.8...v2.11.9\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.8...v2.11.9\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.8 2025-09-13\u003c/h2\u003e\n\u003ch2\u003ev2.11.8 (2025-09-13)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix mypy plugin for mypy 1.18 by \u003ca href=\"https://github.com/cdce8p\"\u003e\u003ccode\u003e@​cdce8p\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12209\"\u003e#12209\u003c/a\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.7...v2.11.8\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.7...v2.11.8\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.7 2025-06-14\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCopy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build 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/11980\"\u003epydantic/pydantic#11980\u003c/a\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.6...v2.11.7\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.6...v2.11.7\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.6 2025-06-13\u003c/h2\u003e\n\u003ch2\u003ev2.11.6 (2025-06-13)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRebuild dataclass fields before 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/11949\"\u003e#11949\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlways store the original field assignment on \u003ccode\u003eFieldInfo\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/11946\"\u003e#11946\u003c/a\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.5...v2.11.6\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.5...v2.11.6\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.5 2025-05-22\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCheck if \u003ccode\u003eFieldInfo\u003c/code\u003e is complete after applying type variable map 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/11855\"\u003e#11855\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not delete mock validator/serializer in \u003ccode\u003emodel_rebuild()\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/11890\"\u003e#11890\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not duplicate metadata on model rebuild 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/11902\"\u003e#11902\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/pydantic/pydantic/blob/v2.11.9/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.11.9 (2025-09-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.9\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBackport v1.10.23 changes by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.8 (2025-09-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.8\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix mypy plugin for mypy 1.18 by \u003ca href=\"https://github.com/cdce8p\"\u003e\u003ccode\u003e@​cdce8p\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12209\"\u003e#12209\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.7 (2025-06-14)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.7\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCopy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build 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/11898\"\u003e#11898\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.6 (2025-06-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.6\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRebuild dataclass fields before 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/11949\"\u003e#11949\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlways store the original field assignment on \u003ccode\u003eFieldInfo\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/11946\"\u003e#11946\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.5 (2025-05-22)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCheck if \u003ccode\u003eFieldInfo\u003c/code\u003e is complete after applying type variable map 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/11855\"\u003e#11855\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/pydantic/pydantic/commit/92310953c146a2ac668a0141be820c083e325f5d\"\u003e\u003ccode\u003e9231095\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/f003a89eeaff35ee18f220a2c790d20536e3d0ab\"\u003e\u003ccode\u003ef003a89\u003c/code\u003e\u003c/a\u003e Backport v1.10.23 changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/96b81ddaf93a1f2e19ff1609080c33de10b8d931\"\u003e\u003ccode\u003e96b81dd\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/966f377692194b3f1d6d5155ac78052bec0a751d\"\u003e\u003ccode\u003e966f377\u003c/code\u003e\u003c/a\u003e Fix mypy v2 plugin for upcoming \u003ccode\u003e1.18\u003c/code\u003e mypy release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/5f033e46c54fea1b59b6894d6527daf49475e690\"\u003e\u003ccode\u003e5f033e4\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c3368b83c411f421a7322959bc29f3bea4bd252a\"\u003e\u003ccode\u003ec3368b8\u003c/code\u003e\u003c/a\u003e Copy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/11980\"\u003e#11980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/3987b23db4b31ff35e9fa15c21c0c1d1c9808838\"\u003e\u003ccode\u003e3987b23\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/dc7a9d20bee55a3a6e7397ee46abfcd9057b627b\"\u003e\u003ccode\u003edc7a9d2\u003c/code\u003e\u003c/a\u003e Always store the original field assignment on \u003ccode\u003eFieldInfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c284c279a5b8c95d32ab5ec31d2511b3b27bfa87\"\u003e\u003ccode\u003ec284c27\u003c/code\u003e\u003c/a\u003e Rebuild dataclass fields before schema generation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/5e6d1dc71fe9bd832635cb2e9b4af92286fd00b8\"\u003e\u003ccode\u003e5e6d1dc\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.5\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.11.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.40.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.40.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable logging response body for async logs (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1756\"\u003e#1756\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2f0ddfeb9f6c726c68beebd7eefd32c86f7f0963\"\u003e2f0ddfe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.39.0...v2.40.0\"\u003e2.40.0\u003c/a\u003e (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd request response logging to auth (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1678\"\u003e#1678\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/77ad53eb00c74b3badc486c8207a16dbc49f37e5\"\u003e77ad53e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrect webauthn JSON parsing to be compliant with standard. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1658\"\u003e#1658\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0c5ef364fb13ca9d7d17100166de87732d752de8\"\u003e0c5ef36\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.39.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.39.0\"\u003e2.39.0\u003c/a\u003e (2025-04-14)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds GA support for X.509 workload identity federation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1695\"\u003e#1695\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/74959605400f9a1976bbdc52c029943b634eb553\"\u003e7495960\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable logging response body for async logs (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1756\"\u003e#1756\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2f0ddfeb9f6c726c68beebd7eefd32c86f7f0963\"\u003e2f0ddfe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.39.0...v2.40.0\"\u003e2.40.0\u003c/a\u003e (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd request response logging to auth (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1678\"\u003e#1678\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/77ad53eb00c74b3badc486c8207a16dbc49f37e5\"\u003e77ad53e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrect webauthn JSON parsing to be compliant with standard. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1658\"\u003e#1658\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0c5ef364fb13ca9d7d17100166de87732d752de8\"\u003e0c5ef36\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.39.0\"\u003e2.39.0\u003c/a\u003e (2025-04-14)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds GA support for X.509 workload identity federation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1695\"\u003e#1695\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/74959605400f9a1976bbdc52c029943b634eb553\"\u003e7495960\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd impersonated SA via local ADC support for fetch_id_token (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1740\"\u003e#1740\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/f24976452d741de6a49d9b7a85cdab47812f5312\"\u003ef249764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd missing packaging dependency for feature requiring urllib3 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1732\"\u003e#1732\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/221f4a82fa25c1ad453b85bc8b7f2fc304724879\"\u003e221f4a8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd request timeout for MDS requests (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1699\"\u003e#1699\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/9f7d3fa92c0e656a1c970182833abe2d0d3ad3ee\"\u003e9f7d3fa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExplicitly declare support for Python 3.13 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1741\"\u003e#1741\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/6fd04d57df90866f24b554c489f8f2653467d70e\"\u003e6fd04d5\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/googleapis/google-auth-library-python/commit/ca94ead4035beea4741dc5384449032f8e6f75d8\"\u003e\u003ccode\u003eca94ead\u003c/code\u003e\u003c/a\u003e chore(main): release 2.40.3 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1768\"\u003e#1768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e\u003ccode\u003e88891cc\u003c/code\u003e\u003c/a\u003e fix: auth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0be91e2f795c989a592cb9c7828a1c53d8107165\"\u003e\u003ccode\u003e0be91e2\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;fix: remove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25660bc57569b3f3e9a1f664516d10f4bc8744b8\"\u003e\u003ccode\u003e25660bc\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1774\"\u003e#1774\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e\u003ccode\u003e7c61c7d\u003c/code\u003e\u003c/a\u003e fix: remove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e\u003ccode\u003e554f967\u003c/code\u003e\u003c/a\u003e fix: retry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/6845065aca69d5130eec40fbe052f56c36860bf7\"\u003e\u003ccode\u003e6845065\u003c/code\u003e\u003c/a\u003e chore(main): release 2.40.2 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1766\"\u003e#1766\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e\u003ccode\u003e44e38b6\u003c/code\u003e\u003c/a\u003e fix: Update test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e\u003ccode\u003e97ed1c8\u003c/code\u003e\u003c/a\u003e chore: remove sync response logs in AuthorizedSession (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1761\"\u003e#1761\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/13a897ea05feff6a2267f700a53b50e9741919a0\"\u003e\u003ccode\u003e13a897e\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1764\"\u003e#1764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.40.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: ensure find_dotenv work reliably on python 3.13 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003etheskumar/python-dotenv#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cli): issue with execvpe on Windows by \u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\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/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a security policy by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/512\"\u003etheskumar/python-dotenv#512\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep GitHub Actions up to date with GitHub's Dependabot by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/506\"\u003etheskumar/python-dotenv#506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix multiline string in test.yml \u0026amp; use fail-fast strategy by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/514\"\u003etheskumar/python-dotenv#514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnhance dotenv run: Switch to execvpe for better resource management and signal handling by \u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add py3.13 to test.yml by \u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 trove classifier by \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for python 3.13 and drop 3.8 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/551\"\u003etheskumar/python-dotenv#551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update README.md by \u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSome more s/Python-dotenv/python-dotenv/ by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/552\"\u003etheskumar/python-dotenv#552\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd _is_debugger so load_dotenv will work in pdb by \u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/553\"\u003etheskumar/python-dotenv#553\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/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/553\"\u003etheskumar/python-dotenv#553\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.0\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCLI: revert the use of execvpe on Windows by [\u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003e#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.0] - 2025-03-25\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFeature\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for python 3.13\u003c/li\u003e\n\u003cli\u003eEnhance \u003ccode\u003edotenv run\u003c/code\u003e, switch to \u003ccode\u003eexecvpe\u003c/code\u003e for better resource management and signal handling (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/523\"\u003e#523\u003c/a\u003e) by [\u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efind_dotenv\u003c/code\u003e and \u003ccode\u003eload_dotenv\u003c/code\u003e now correctly looks up at the current directory when running in debugger or pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e by [\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e])\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eMisc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8\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/theskumar/python-dotenv/commit/16e660d384b942b11879b44500afbbe021650448\"\u003e\u003ccode\u003e16e660d\u003c/code\u003e\u003c/a\u003e Bump version: 1.1.0 → 1.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/667e82f18d6e5306894c8746c46b1da2d031bd23\"\u003e\u003ccode\u003e667e82f\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/9d85edb3b8652de4601f9ad8a7a49ad9909f898a\"\u003e\u003ccode\u003e9d85edb\u003c/code\u003e\u003c/a\u003e fix(cli): issue with execvpe on Windows (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/566\"\u003e#566\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8411987b9301f716245074872afa30646e9b9eb7\"\u003e\u003ccode\u003e8411987\u003c/code\u003e\u003c/a\u003e fix: ensure find_dotenv work reliably on python 3.13 (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/01f899733de664cda0550207067eb36a1795062f\"\u003e\u003ccode\u003e01f8997\u003c/code\u003e\u003c/a\u003e docs update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/6a02ef5a1034d66338811757df07a113a1169af6\"\u003e\u003ccode\u003e6a02ef5\u003c/code\u003e\u003c/a\u003e update mkdocs -\u0026gt; mkdocstrings config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/36c6270db41e1e88be4ec21d0fb876ba0c79d363\"\u003e\u003ccode\u003e36c6270\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/2198b698c021851201261fac27884ee8db6553d5\"\u003e\u003ccode\u003e2198b69\u003c/code\u003e\u003c/a\u003e Bump version: 1.0.1 → 1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/c89fb6d41c0a25f670b34ba05f392260eaa6ccd1\"\u003e\u003ccode\u003ec89fb6d\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8dd413e84b1fb1b3368c02106aab07a533fae015\"\u003e\u003ccode\u003e8dd413e\u003c/code\u003e\u003c/a\u003e Add _is_debugger so load_dotenv will work in pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `orjson` from 3.10.16 to 3.11.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ijl/orjson/releases\"\u003eorjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared buffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI Windows aarch64/arm64 wheels.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 alpha 7.\u003c/li\u003e\n\u003cli\u003eFix incompatibility running on Python 3.13 using WASM.\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/ijl/orjson/blob/master/CHANGELOG.md\"\u003eorjson's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.3 - 2025-08-26\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1 - 2025-07-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures. This was introduced in 3.11.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 - 2025-07-15\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared\nbuffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18 - 2025-04-29\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17 - 2025-04-29\u003c/h2\u003e\n\u003ch3\u003eChanged\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/ijl/orjson/commit/aa8c946cfbe2aba29016bc9c9ddc8713cb00173b\"\u003e\u003ccode\u003eaa8c946\u003c/code\u003e\u003c/a\u003e 3.11.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2442efc125068e43bec97c26e3a6b5da8932936c\"\u003e\u003ccode\u003e2442efc\u003c/code\u003e\u003c/a\u003e Fix PyPI project metadata when using maturin 1.9.2 or later\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/ba760146e7bc407d729436d8dbcb9e1495c83773\"\u003e\u003ccode\u003eba76014\u003c/code\u003e\u003c/a\u003e 3.11.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/49315905a4f071f2279b6df87125ca94780b5173\"\u003e\u003ccode\u003e4931590\u003c/code\u003e\u003c/a\u003e CPython compatibility misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/3de9324511a704ffbe13a94221c8f05062bf71e8\"\u003e\u003ccode\u003e3de9324\u003c/code\u003e\u003c/a\u003e MSRV 1.85, edition 2024, stdarch_x86_avx512 fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/d7359c9899c63570b21a200bc0f8d559eea7cd19\"\u003e\u003ccode\u003ed7359c9\u003c/code\u003e\u003c/a\u003e Remove macOS 13 CI runner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/1d3aa7af6271981907b1e0d1eeee2e07a7c49302\"\u003e\u003ccode\u003e1d3aa7a\u003c/code\u003e\u003c/a\u003e 3.11.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/11d29cb9bcd73777c554d65ba670cde2d6c8c802\"\u003e\u003ccode\u003e11d29cb\u003c/code\u003e\u003c/a\u003e 3.14 packaging misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/168391825ba415df853735a4359095a0327dcd1a\"\u003e\u003ccode\u003e1683918\u003c/code\u003e\u003c/a\u003e bytes::BufMut\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/9c33ff9df61b3b9d71527acf4fb60a735d841025\"\u003e\u003ccode\u003e9c33ff9\u003c/code\u003e\u003c/a\u003e Fix big-endian PyStr\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ijl/orjson/compare/3.10.16...3.11.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` from 2.2.3 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\u003ch2\u003ePandas 2.3.0\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.0.\nThis release includes some new features, bug fixes, and performance improvements. 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.0/whatsnew/v2.3.0.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.0 supports Python 3.10 and higher.\u003c/p\u003e\n\u003cp\u003eThe release will be available on the defaults and conda-forge channels:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install -c conda-forge pandas\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr via PyPI:\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/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.2.3...v2.3.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geoalchemy2` from 0.17.1 to 0.18.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/releases\"\u003egeoalchemy2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/538\"\u003egeoalchemy/geoalchemy2#538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/540\"\u003egeoalchemy/geoalchemy2#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCompile literal binds by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/543\"\u003egeoalchemy/geoalchemy2#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/544\"\u003egeoalchemy/geoalchemy2#544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore (mariadb): Stop converting WKB to WKT by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/545\"\u003egeoalchemy/geoalchemy2#545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker containers by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/546\"\u003egeoalchemy/geoalchemy2#546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/547\"\u003egeoalchemy/geoalchemy2#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/553\"\u003egeoalchemy/geoalchemy2#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/554\"\u003egeoalchemy/geoalchemy2#554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Improve readbility of benchmark results by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/556\"\u003egeoalchemy/geoalchemy2#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/555\"\u003egeoalchemy/geoalchemy2#555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/557\"\u003egeoalchemy/geoalchemy2#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Remove warning message from MySQL/MariaDB reflection by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/560\"\u003egeoalchemy/geoalchemy2#560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/561\"\u003egeoalchemy/geoalchemy2#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: correct doc strings by \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/564\"\u003egeoalchemy/geoalchemy2#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.0 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/565\"\u003egeoalchemy/geoalchemy2#565\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/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.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/geoalchemy/geoalchemy2/blob/master/CHANGES.txt\"\u003egeoalchemy2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Fix doc strings for cache enabled - \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e(papacodebear/master) Fix: Remove warning from MySQL/MariaDB reflection \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Improve readability of benchmark results \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/547\"\u003e#547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker container \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/546\"\u003e#546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf (mariadb): Stop converting WKB to WKT \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/545\"\u003e#545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/544\"\u003e#544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Compile literal binds properly \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/540\"\u003e#540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/538\"\u003e#538\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/geoalchemy/geoalchemy2/commit/60767082df9f4587fadd56ab94847ebc39df8295\"\u003e\u003ccode\u003e6076708\u003c/code\u003e\u003c/a\u003e Release: 0.18.0 (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/565\"\u003e#565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/e13112177bdf79cae0d72a6e89d815dc272e3dc5\"\u003e\u003ccode\u003ee131121\u003c/code\u003e\u003c/a\u003e Feat: Add support of spatial indexes for Raster type for PostgreSQL (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/0b432086a0c3b8ab160c5cc1864aa65e02f35362\"\u003e\u003ccode\u003e0b43208\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/8791b2eec013f21f599ca060d9fee4aba72ec2a1\"\u003e\u003ccode\u003e8791b2e\u003c/code\u003e\u003c/a\u003e Docs: Fix doc strings for cache enabled (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/d3c1d04c8b462c61132403e44a7a4f04a487c142\"\u003e\u003ccode\u003ed3c1d04\u003c/code\u003e\u003c/a\u003e Chore: Move reflection type registering (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/24dc5d05d97fb9a2a57103c1823a58f06940a5e8\"\u003e\u003ccode\u003e24dc5d0\u003c/code\u003e\u003c/a\u003e Fix: Remove warning from MySQL/MariaDB reflection (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/71f7914d4ddf7d9c46c772e36a8463e20901966a\"\u003e\u003ccode\u003e71f7914\u003c/code\u003e\u003c/a\u003e Feat: Handle computed columns (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/c139cdbca62019d92d18f12429706732777c38e2\"\u003e\u003ccode\u003ec139cdb\u003c/code\u003e\u003c/a\u003e Perf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/2e94baa4f3ac23e0160ed841d4efe7ceb3fa2378\"\u003e\u003ccode\u003e2e94baa\u003c/code\u003e\u003c/a\u003e Test: Improve readbility of benchmark results (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/84292bc352ab7ff1102a0529772d32afb0309616\"\u003e\u003ccode\u003e84292bc\u003c/code\u003e\u003c/a\u003e Chore: Create FUNDING.yml (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gql` from 3.5.2 to 4.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/graphql-python/gql/releases\"\u003egql's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eChange transports prototype using GraphQLRequest (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/551\"\u003e#551\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUsing GraphQLRequest instead of DocumentNode for gql, execute, subscribe methods (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/556\"\u003e#556\u003c/a\u003e):\n\u003cstrong\u003eThis is a big change:\u003c/strong\u003e\n\u003cul\u003e\n\u003cli\u003ethe \u003ccode\u003egql\u003c/code\u003e and \u003ccode\u003edsl_gql\u003c/code\u003e methods will now return a \u003ccode\u003eGraphQLRequest\u003c/code\u003e instead of a \u003ccode\u003eDocument\u003c/code\u003e Node\na \u003ccode\u003eGraphQLRequest\u003c/code\u003e is an object containing the document and optional \u003ccode\u003evariable_values\u003c/code\u003e and \u003ccode\u003eoperation_name\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eALL the \u003ccode\u003eexecute\u003c/code\u003e and \u003ccode\u003esubscribe\u003c/code\u003e methods now receive a \u003ccode\u003eGraphQLRequest\u003c/code\u003e as main argument instead of\na \u003ccode\u003eDocumentNode\u003c/code\u003e, \u003ccode\u003evariable_values\u003c/code\u003e and \u003ccode\u003eoperation_name\u003c/code\u003e arguments\u003c/li\u003e\n\u003cli\u003eThe old method of sending \u003ccode\u003evariable_values\u003c/code\u003e as an argument of \u003ccode\u003eexecute\u003c/code\u003e or \u003ccode\u003esubscribe\u003c/code\u003e still works but is deprecated\nSee \u003ca href=\"https://gql.readthedocs.io/en/latest/usage/variables.html\"\u003ehttps://gql.readthedocs.io/en/latest/usage/variables.html\u003c/a\u003e for the new syntax.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix subscription task cancel exception swallow (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/548\"\u003e#548\u003c/a\u003e):\nPreviously if a task was cancelled while a subscription task was active,\nthe \u003ccode\u003easyncio.CancelledError\u003c/code\u003e Exception would be swallowed by our code.\nThis is not the case anymore so you should now trap that Exception yourself.\u003c/li\u003e\n\u003cli\u003eClean up the file upload interface with FileVar class (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/549\"\u003e#549\u003c/a\u003e):\nThe file upload functionality has been modified to require \u003ccode\u003eFileVar\u003c/code\u003e instances\nfor uploaded files (the old method still works but is deprecated).\nSee \u003ca href=\"https://gql.readthedocs.io/en/latest/usage/file_upload.html\"\u003ehttps://gql.readthedocs.io/en/latest/usage/file_upload.html\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSet logging level to DEBUG for all transports (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/552\"\u003e#552\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eintrospection now requests deprecated input fields by default (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/553\"\u003e#553\u003c/a\u003e)\nNote that some backends might not support this and return \u003ccode\u003eUnknown argument includeDeprecated\u003c/code\u003e. See \u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/564\"\u003e#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTrapping dependencies Exceptions into TransportConnectionFailed (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/558\"\u003e#558\u003c/a\u003e):\nNow gql will trap Exceptions raised by dependencies when executing a request and will\nencapsulate that Exception into the \u003ccode\u003eTransportConnectionFailed\u003c/code\u003e Exception\u003c/li\u003e\n\u003cli\u003eSet \u003cstrong\u003essl=True\u003c/strong\u003e by default for AIOHTTPTransport (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/538\"\u003e#538\u003c/a\u003e) (issue \u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/529\"\u003e#529\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eTransportConnectionClosed\u003c/code\u003e Exception replacing \u003ccode\u003eConnectionClosed\u003c/code\u003e Exception (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/536\"\u003e#536\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ewebsocket\u003c/code\u003e attribute removed from transport, now using \u003ccode\u003e_connected\u003c/code\u003e instead (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/536\"\u003e#536\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade lastest websockets and Exceptions overhaul (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cp\u003eBatching requests is now fully supported, on sync or async transports, with automatic batching:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImplementation of execute_batch for async transports (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/550\"\u003e#550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImplementation of automatic batching for async (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://gql.readthedocs.io/en/latest/advanced/batching_requests.html\"\u003ehttps://gql.readthedocs.io/en/latest/advanced/batching_requests.html\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFi...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1324","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1324","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1324/packages"},{"uuid":"2793423565","node_id":"PR_kwDOKF4tPs6mgELN","number":2420,"state":"closed","title":"Build: Bump datafusion from 47.0.0 to 49.0.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-09-02T17:55:54.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-02T17:15:55.000Z","updated_at":"2025-09-02T17:55:54.000Z","time_to_close":2399,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Build: Bump","packages":[{"name":"datafusion","old_version":"47.0.0","new_version":"49.0.0","repository_url":"https://github.com/apache/datafusion-python"}],"path":null,"ecosystem":"pip"},"body":"Bumps [datafusion](https://github.com/apache/datafusion-python) from 47.0.0 to 49.0.0.\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/97a6ac392d6d5b46b97cc1ea1bc60c4351c878f7\"\u003e\u003ccode\u003e97a6ac3\u003c/code\u003e\u003c/a\u003e Bump version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/22c63812d03b1f228c2ab2636901a55216aaec3e\"\u003e\u003ccode\u003e22c6381\u003c/code\u003e\u003c/a\u003e Update cargo lock file and changelog for release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/d6d6ea69a7bcc80ebf025ee8778df12ecbf874c5\"\u003e\u003ccode\u003ed6d6ea6\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1204\"\u003e#1204\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/cb29176f61dbff5c0464ca16ed0f47f7b2edb12a\"\u003e\u003ccode\u003ecb29176\u003c/code\u003e\u003c/a\u003e build(deps): bump url from 2.5.4 to 2.5.7 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/b5536435bf75d6c0e2fb5ee07874d88bafef7746\"\u003e\u003ccode\u003eb553643\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1201\"\u003e#1201\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/0806ce52e4bd0086a96465206ff51319746c53c2\"\u003e\u003ccode\u003e0806ce5\u003c/code\u003e\u003c/a\u003e fix(build): Include build.rs in published crates (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1199\"\u003e#1199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/1ba8807cfd3ea878dbd866554a547da7148e2d4e\"\u003e\u003ccode\u003e1ba8807\u003c/code\u003e\u003c/a\u003e Improve \u003ccode\u003eshow()\u003c/code\u003e output for empty DataFrames (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1208\"\u003e#1208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/e28256cb935b6124373a3799f9e1f2e1c9c90a28\"\u003e\u003ccode\u003ee28256c\u003c/code\u003e\u003c/a\u003e suggestions (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1183\"\u003e#1183\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/589258533b796dd24a8ca56bbd0a0e7ed3ea05cc\"\u003e\u003ccode\u003e5892585\u003c/code\u003e\u003c/a\u003e Allow users to pass a single expression instead of a list of expressions for ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/f94794122f2d98797245ce6d9a3a441ef458f3af\"\u003e\u003ccode\u003ef947941\u003c/code\u003e\u003c/a\u003e build(deps): bump slab from 0.4.10 to 0.4.11 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1205\"\u003e#1205\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/datafusion-python/compare/47.0.0...49.0.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=datafusion\u0026package-manager=pip\u0026previous-version=47.0.0\u0026new-version=49.0.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/apache/iceberg-python/pull/2420","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Ficeberg-python/issues/2420","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2420/packages"},{"uuid":"2793081742","node_id":"PR_kwDOHTdvBs6mewuO","number":1309,"state":"open","title":"deps(ibis): bump the all group across 1 directory with 27 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-02T15:22:18.000Z","updated_at":"2025-09-02T15:22:20.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":27,"packages":[{"name":"pydantic","old_version":"2.10.6","new_version":"2.11.7","repository_url":"https://github.com/pydantic/pydantic"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.40.3","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"orjson","old_version":"3.10.16","new_version":"3.11.3","repository_url":"https://github.com/ijl/orjson"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.2","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"geopandas","old_version":"1.1.0","new_version":"1.1.1","repository_url":"https://github.com/geopandas/geopandas"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.18.0","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"anyio","old_version":"4.9.0","new_version":"4.10.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"duckdb","old_version":"1.2.1","new_version":"1.3.2","repository_url":"https://github.com/duckdb/duckdb"},{"name":"opendal","old_version":"0.45.20","new_version":"0.46.0","repository_url":"https://github.com/apache/opendal"},{"name":"oracledb","old_version":"3.0.0","new_version":"3.3.0","repository_url":"https://github.com/oracle/python-oracledb"},{"name":"uvicorn","old_version":"0.34.3","new_version":"0.35.0","repository_url":"https://github.com/encode/uvicorn"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.8","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"49.0.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"jupyterlab","old_version":"4.4.4","new_version":"4.4.6","repository_url":"https://github.com/jupyterlab/jupyterlab"},{"name":"ipykernel","old_version":"6.29.5","new_version":"6.30.1","repository_url":"https://github.com/ipython/ipykernel"},{"name":"matplotlib","old_version":"3.10.3","new_version":"3.10.6","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"plotly","old_version":"6.2.0","new_version":"6.3.0","repository_url":"https://github.com/plotly/plotly.py"},{"name":"pytest","old_version":"8.3.5","new_version":"8.4.1","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.12.0","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.43","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.12.11","repository_url":"https://github.com/astral-sh/ruff"},{"name":"trino","old_version":"0.334.0","new_version":"0.336.0","repository_url":"https://github.com/trinodb/trino-python-client"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.8.18","repository_url":"https://github.com/ClickHouse/clickhouse-connect"},{"name":"polars","old_version":"1.32.3","new_version":"1.33.0","repository_url":"https://github.com/pola-rs/polars"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 27 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.11.7` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.40.3` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.1.1` |\n| [orjson](https://github.com/ijl/orjson) | `3.10.16` | `3.11.3` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.2` |\n| [geopandas](https://github.com/geopandas/geopandas) | `1.1.0` | `1.1.1` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.18.0` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.9.0` | `4.10.0` |\n| [duckdb](https://github.com/duckdb/duckdb) | `1.2.1` | `1.3.2` |\n| [opendal](https://github.com/apache/opendal) | `0.45.20` | `0.46.0` |\n| [oracledb](https://github.com/oracle/python-oracledb) | `3.0.0` | `3.3.0` |\n| [uvicorn](https://github.com/encode/uvicorn) | `0.34.3` | `0.35.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.8` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `49.0.0` |\n| [jupyterlab](https://github.com/jupyterlab/jupyterlab) | `4.4.4` | `4.4.6` |\n| [ipykernel](https://github.com/ipython/ipykernel) | `6.29.5` | `6.30.1` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.10.3` | `3.10.6` |\n| [plotly](https://github.com/plotly/plotly.py) | `6.2.0` | `6.3.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `8.4.1` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.12.0` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.43` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.3.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.12.11` |\n| [trino](https://github.com/trinodb/trino-python-client) | `0.334.0` | `0.336.0` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.8.18` |\n| [polars](https://github.com/pola-rs/polars) | `1.32.3` | `1.33.0` |\n\n\nUpdates `pydantic` from 2.10.6 to 2.11.7\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.11.7 2025-06-14\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCopy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build 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/11980\"\u003epydantic/pydantic#11980\u003c/a\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.6...v2.11.7\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.6...v2.11.7\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.6 2025-06-13\u003c/h2\u003e\n\u003ch2\u003ev2.11.6 (2025-06-13)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRebuild dataclass fields before 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/11949\"\u003e#11949\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlways store the original field assignment on \u003ccode\u003eFieldInfo\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/11946\"\u003e#11946\u003c/a\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.5...v2.11.6\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.5...v2.11.6\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.5 2025-05-22\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCheck if \u003ccode\u003eFieldInfo\u003c/code\u003e is complete after applying type variable map 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/11855\"\u003e#11855\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not delete mock validator/serializer in \u003ccode\u003emodel_rebuild()\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/11890\"\u003e#11890\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not duplicate metadata on model rebuild 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/11902\"\u003e#11902\u003c/a\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.4...v2.11.5\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.4...v2.11.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.4 2025-04-29\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003ePackaging\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBump \u003ccode\u003emkdocs-llmstxt\u003c/code\u003e to v0.2.0 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/11725\"\u003e#11725\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eChanges\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow config and bases to be specified together in \u003ccode\u003ecreate_model()\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/11714\"\u003e#11714\u003c/a\u003e.\nThis change was backported as it was previously possible (although not meant to be supported)\nto provide \u003ccode\u003emodel_config\u003c/code\u003e as a field, which would make it possible to provide both configuration\nand bases.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eFixes\u003c/h4\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.11.7 (2025-06-14)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.7\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCopy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build 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/11898\"\u003e#11898\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.6 (2025-06-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.6\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRebuild dataclass fields before 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/11949\"\u003e#11949\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlways store the original field assignment on \u003ccode\u003eFieldInfo\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/11946\"\u003e#11946\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.5 (2025-05-22)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCheck if \u003ccode\u003eFieldInfo\u003c/code\u003e is complete after applying type variable map 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/11855\"\u003e#11855\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not delete mock validator/serializer in \u003ccode\u003emodel_rebuild()\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/11890\"\u003e#11890\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not duplicate metadata on model rebuild 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/11902\"\u003e#11902\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.4 (2025-04-29)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.4\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003ePackaging\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBump \u003ccode\u003emkdocs-llmstxt\u003c/code\u003e to v0.2.0 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/11725\"\u003e#11725\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eChanges\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow config and bases to be specified together in \u003ccode\u003ecreate_model()\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/11714\"\u003e#11714\u003c/a\u003e.\nThis change was backported as it was previously possible (although not meant to be supported)\nto provide \u003ccode\u003emodel_config\u003c/code\u003e as a field, which would make it possible to provide both configuration\nand bases.\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/pydantic/pydantic/commit/5f033e46c54fea1b59b6894d6527daf49475e690\"\u003e\u003ccode\u003e5f033e4\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c3368b83c411f421a7322959bc29f3bea4bd252a\"\u003e\u003ccode\u003ec3368b8\u003c/code\u003e\u003c/a\u003e Copy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/11980\"\u003e#11980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/3987b23db4b31ff35e9fa15c21c0c1d1c9808838\"\u003e\u003ccode\u003e3987b23\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/dc7a9d20bee55a3a6e7397ee46abfcd9057b627b\"\u003e\u003ccode\u003edc7a9d2\u003c/code\u003e\u003c/a\u003e Always store the original field assignment on \u003ccode\u003eFieldInfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c284c279a5b8c95d32ab5ec31d2511b3b27bfa87\"\u003e\u003ccode\u003ec284c27\u003c/code\u003e\u003c/a\u003e Rebuild dataclass fields before schema generation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/5e6d1dc71fe9bd832635cb2e9b4af92286fd00b8\"\u003e\u003ccode\u003e5e6d1dc\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/1b63218c42b515bd1f6b0dd323190236ead14bdb\"\u003e\u003ccode\u003e1b63218\u003c/code\u003e\u003c/a\u003e Do not duplicate metadata on model rebuild (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/11902\"\u003e#11902\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/5aefad873b3dfd60c419bd081ffaf0ac197c7b60\"\u003e\u003ccode\u003e5aefad8\u003c/code\u003e\u003c/a\u003e Do not delete mock validator/serializer in \u003ccode\u003emodel_rebuild()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/8fbe6585f4d6179e5234ab61de00059c52e57975\"\u003e\u003ccode\u003e8fbe658\u003c/code\u003e\u003c/a\u003e Check if \u003ccode\u003eFieldInfo\u003c/code\u003e is complete after applying type variable map\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/12b371a0f7f800bf65daa3eaada1b4348348d9c4\"\u003e\u003ccode\u003e12b371a\u003c/code\u003e\u003c/a\u003e Update documentation about \u003ccode\u003e@dataclass_transform\u003c/code\u003e support\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.11.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.40.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.40.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable logging response body for async logs (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1756\"\u003e#1756\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2f0ddfeb9f6c726c68beebd7eefd32c86f7f0963\"\u003e2f0ddfe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.39.0...v2.40.0\"\u003e2.40.0\u003c/a\u003e (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd request response logging to auth (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1678\"\u003e#1678\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/77ad53eb00c74b3badc486c8207a16dbc49f37e5\"\u003e77ad53e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrect webauthn JSON parsing to be compliant with standard. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1658\"\u003e#1658\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0c5ef364fb13ca9d7d17100166de87732d752de8\"\u003e0c5ef36\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.39.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.39.0\"\u003e2.39.0\u003c/a\u003e (2025-04-14)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds GA support for X.509 workload identity federation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1695\"\u003e#1695\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/74959605400f9a1976bbdc52c029943b634eb553\"\u003e7495960\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable logging response body for async logs (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1756\"\u003e#1756\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2f0ddfeb9f6c726c68beebd7eefd32c86f7f0963\"\u003e2f0ddfe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.39.0...v2.40.0\"\u003e2.40.0\u003c/a\u003e (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd request response logging to auth (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1678\"\u003e#1678\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/77ad53eb00c74b3badc486c8207a16dbc49f37e5\"\u003e77ad53e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrect webauthn JSON parsing to be compliant with standard. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1658\"\u003e#1658\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0c5ef364fb13ca9d7d17100166de87732d752de8\"\u003e0c5ef36\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.39.0\"\u003e2.39.0\u003c/a\u003e (2025-04-14)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds GA support for X.509 workload identity federation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1695\"\u003e#1695\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/74959605400f9a1976bbdc52c029943b634eb553\"\u003e7495960\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd impersonated SA via local ADC support for fetch_id_token (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1740\"\u003e#1740\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/f24976452d741de6a49d9b7a85cdab47812f5312\"\u003ef249764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd missing packaging dependency for feature requiring urllib3 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1732\"\u003e#1732\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/221f4a82fa25c1ad453b85bc8b7f2fc304724879\"\u003e221f4a8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd request timeout for MDS requests (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1699\"\u003e#1699\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/9f7d3fa92c0e656a1c970182833abe2d0d3ad3ee\"\u003e9f7d3fa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExplicitly declare support for Python 3.13 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1741\"\u003e#1741\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/6fd04d57df90866f24b554c489f8f2653467d70e\"\u003e6fd04d5\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/googleapis/google-auth-library-python/commit/ca94ead4035beea4741dc5384449032f8e6f75d8\"\u003e\u003ccode\u003eca94ead\u003c/code\u003e\u003c/a\u003e chore(main): release 2.40.3 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1768\"\u003e#1768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e\u003ccode\u003e88891cc\u003c/code\u003e\u003c/a\u003e fix: auth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0be91e2f795c989a592cb9c7828a1c53d8107165\"\u003e\u003ccode\u003e0be91e2\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;fix: remove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25660bc57569b3f3e9a1f664516d10f4bc8744b8\"\u003e\u003ccode\u003e25660bc\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1774\"\u003e#1774\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e\u003ccode\u003e7c61c7d\u003c/code\u003e\u003c/a\u003e fix: remove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e\u003ccode\u003e554f967\u003c/code\u003e\u003c/a\u003e fix: retry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/6845065aca69d5130eec40fbe052f56c36860bf7\"\u003e\u003ccode\u003e6845065\u003c/code\u003e\u003c/a\u003e chore(main): release 2.40.2 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1766\"\u003e#1766\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e\u003ccode\u003e44e38b6\u003c/code\u003e\u003c/a\u003e fix: Update test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e\u003ccode\u003e97ed1c8\u003c/code\u003e\u003c/a\u003e chore: remove sync response logs in AuthorizedSession (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1761\"\u003e#1761\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/13a897ea05feff6a2267f700a53b50e9741919a0\"\u003e\u003ccode\u003e13a897e\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1764\"\u003e#1764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.40.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: ensure find_dotenv work reliably on python 3.13 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003etheskumar/python-dotenv#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cli): issue with execvpe on Windows by \u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\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/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a security policy by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/512\"\u003etheskumar/python-dotenv#512\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep GitHub Actions up to date with GitHub's Dependabot by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/506\"\u003etheskumar/python-dotenv#506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix multiline string in test.yml \u0026amp; use fail-fast strategy by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/514\"\u003etheskumar/python-dotenv#514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnhance dotenv run: Switch to execvpe for better resource management and signal handling by \u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add py3.13 to test.yml by \u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 trove classifier by \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for python 3.13 and drop 3.8 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/551\"\u003etheskumar/python-dotenv#551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update README.md by \u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSome more s/Python-dotenv/python-dotenv/ by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/552\"\u003etheskumar/python-dotenv#552\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd _is_debugger so load_dotenv will work in pdb by \u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/553\"\u003etheskumar/python-dotenv#553\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/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/553\"\u003etheskumar/python-dotenv#553\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.0\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCLI: revert the use of execvpe on Windows by [\u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003e#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.0] - 2025-03-25\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFeature\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for python 3.13\u003c/li\u003e\n\u003cli\u003eEnhance \u003ccode\u003edotenv run\u003c/code\u003e, switch to \u003ccode\u003eexecvpe\u003c/code\u003e for better resource management and signal handling (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/523\"\u003e#523\u003c/a\u003e) by [\u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efind_dotenv\u003c/code\u003e and \u003ccode\u003eload_dotenv\u003c/code\u003e now correctly looks up at the current directory when running in debugger or pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e by [\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e])\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eMisc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8\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/theskumar/python-dotenv/commit/16e660d384b942b11879b44500afbbe021650448\"\u003e\u003ccode\u003e16e660d\u003c/code\u003e\u003c/a\u003e Bump version: 1.1.0 → 1.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/667e82f18d6e5306894c8746c46b1da2d031bd23\"\u003e\u003ccode\u003e667e82f\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/9d85edb3b8652de4601f9ad8a7a49ad9909f898a\"\u003e\u003ccode\u003e9d85edb\u003c/code\u003e\u003c/a\u003e fix(cli): issue with execvpe on Windows (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/566\"\u003e#566\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8411987b9301f716245074872afa30646e9b9eb7\"\u003e\u003ccode\u003e8411987\u003c/code\u003e\u003c/a\u003e fix: ensure find_dotenv work reliably on python 3.13 (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/01f899733de664cda0550207067eb36a1795062f\"\u003e\u003ccode\u003e01f8997\u003c/code\u003e\u003c/a\u003e docs update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/6a02ef5a1034d66338811757df07a113a1169af6\"\u003e\u003ccode\u003e6a02ef5\u003c/code\u003e\u003c/a\u003e update mkdocs -\u0026gt; mkdocstrings config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/36c6270db41e1e88be4ec21d0fb876ba0c79d363\"\u003e\u003ccode\u003e36c6270\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/2198b698c021851201261fac27884ee8db6553d5\"\u003e\u003ccode\u003e2198b69\u003c/code\u003e\u003c/a\u003e Bump version: 1.0.1 → 1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/c89fb6d41c0a25f670b34ba05f392260eaa6ccd1\"\u003e\u003ccode\u003ec89fb6d\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8dd413e84b1fb1b3368c02106aab07a533fae015\"\u003e\u003ccode\u003e8dd413e\u003c/code\u003e\u003c/a\u003e Add _is_debugger so load_dotenv will work in pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `orjson` from 3.10.16 to 3.11.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ijl/orjson/releases\"\u003eorjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared buffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI Windows aarch64/arm64 wheels.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 alpha 7.\u003c/li\u003e\n\u003cli\u003eFix incompatibility running on Python 3.13 using WASM.\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/ijl/orjson/blob/master/CHANGELOG.md\"\u003eorjson's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.3 - 2025-08-26\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1 - 2025-07-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures. This was introduced in 3.11.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 - 2025-07-15\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared\nbuffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18 - 2025-04-29\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17 - 2025-04-29\u003c/h2\u003e\n\u003ch3\u003eChanged\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/ijl/orjson/commit/aa8c946cfbe2aba29016bc9c9ddc8713cb00173b\"\u003e\u003ccode\u003eaa8c946\u003c/code\u003e\u003c/a\u003e 3.11.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2442efc125068e43bec97c26e3a6b5da8932936c\"\u003e\u003ccode\u003e2442efc\u003c/code\u003e\u003c/a\u003e Fix PyPI project metadata when using maturin 1.9.2 or later\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/ba760146e7bc407d729436d8dbcb9e1495c83773\"\u003e\u003ccode\u003eba76014\u003c/code\u003e\u003c/a\u003e 3.11.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/49315905a4f071f2279b6df87125ca94780b5173\"\u003e\u003ccode\u003e4931590\u003c/code\u003e\u003c/a\u003e CPython compatibility misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/3de9324511a704ffbe13a94221c8f05062bf71e8\"\u003e\u003ccode\u003e3de9324\u003c/code\u003e\u003c/a\u003e MSRV 1.85, edition 2024, stdarch_x86_avx512 fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/d7359c9899c63570b21a200bc0f8d559eea7cd19\"\u003e\u003ccode\u003ed7359c9\u003c/code\u003e\u003c/a\u003e Remove macOS 13 CI runner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/1d3aa7af6271981907b1e0d1eeee2e07a7c49302\"\u003e\u003ccode\u003e1d3aa7a\u003c/code\u003e\u003c/a\u003e 3.11.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/11d29cb9bcd73777c554d65ba670cde2d6c8c802\"\u003e\u003ccode\u003e11d29cb\u003c/code\u003e\u003c/a\u003e 3.14 packaging misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/168391825ba415df853735a4359095a0327dcd1a\"\u003e\u003ccode\u003e1683918\u003c/code\u003e\u003c/a\u003e bytes::BufMut\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/9c33ff9df61b3b9d71527acf4fb60a735d841025\"\u003e\u003ccode\u003e9c33ff9\u003c/code\u003e\u003c/a\u003e Fix big-endian PyStr\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ijl/orjson/compare/3.10.16...3.11.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` from 2.2.3 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\u003ch2\u003ePandas 2.3.0\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.0.\nThis release includes some new features, bug fixes, and performance improvements. 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.0/whatsnew/v2.3.0.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.0 supports Python 3.10 and higher.\u003c/p\u003e\n\u003cp\u003eThe release will be available on the defaults and conda-forge channels:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install -c conda-forge pandas\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr via PyPI:\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/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.2.3...v2.3.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geopandas` from 1.1.0 to 1.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geopandas/geopandas/releases\"\u003egeopandas's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003cp\u003eA patch release containing minor regression fixes.\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eREGR: fix GeoDataFrame constructor when np.nan given as only geometry by \u003ca href=\"https://github.com/martinfleis\"\u003e\u003ccode\u003e@​martinfleis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geopandas/geopandas/pull/3591\"\u003egeopandas/geopandas#3591\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eREGR: overlay with identity doesn't handle equal input column names correctly by \u003ca href=\"https://github.com/theroggy\"\u003e\u003ccode\u003e@​theroggy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geopandas/geopandas/pull/3596\"\u003egeopandas/geopandas#3596\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTST: use nadgrids=null to suppress influence of grid files by \u003ca href=\"https://github.com/mwtoews\"\u003e\u003ccode\u003e@​mwtoews\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geopandas/geopandas/pull/3588\"\u003egeopandas/geopandas#3588\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMAINT: enable pydocstyle ruff rules - automatic and easy fixes by \u003ca href=\"https://github.com/theroggy\"\u003e\u003ccode\u003e@​theroggy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geopandas/geopandas/pull/3598\"\u003egeopandas/geopandas#3598\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geopandas/geopandas/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/geopandas/geopandas/compare/v1.1.0...v1.1.1\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/geopandas/geopandas/blob/main/CHANGELOG.md\"\u003egeopandas's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.1.1 (June 27, 2025)\u003c/h2\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression in the GeoDataFrame constructor when np.nan is given as an only geometry (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3591\"\u003e#3591\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix regression in \u003ccode\u003eoverlay\u003c/code\u003e with \u003ccode\u003ehow=\u0026quot;identity\u0026quot;\u003c/code\u003e when input dataframes have column\nnames that are equal (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3596\"\u003e#3596\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/geopandas/geopandas/commit/e9b58ce57a238b28ebf5eddd83d437db92c314b5\"\u003e\u003ccode\u003ee9b58ce\u003c/code\u003e\u003c/a\u003e RLS: v1.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/c6bf8b318da5e4e8fde53d27b1a6481e15e54b59\"\u003e\u003ccode\u003ec6bf8b3\u003c/code\u003e\u003c/a\u003e MAINT: enable pydocstyle ruff rules - automatic and easy fixes (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3598\"\u003e#3598\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/339c7f78e92f1549bfa854ffe3bebdc03390d265\"\u003e\u003ccode\u003e339c7f7\u003c/code\u003e\u003c/a\u003e TST: use nadgrids=null to suppress influence of grid files (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3588\"\u003e#3588\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/2a7fad90d1a2af1dd8318f97831d9993164542f8\"\u003e\u003ccode\u003e2a7fad9\u003c/code\u003e\u003c/a\u003e REGR: overlay with identity doesn't handle equal input column names correctly...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/1a1585ddfba8ef229ebdfc05b1c20ef3eb1e67a7\"\u003e\u003ccode\u003e1a1585d\u003c/code\u003e\u003c/a\u003e REGR: fix GeoDataFrame constructor when np.nan given as only geometry (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3591\"\u003e#3591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/geopandas/geopandas/compare/v1.1.0...v1.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geoalchemy2` from 0.17.1 to 0.18.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/releases\"\u003egeoalchemy2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/538\"\u003egeoalchemy/geoalchemy2#538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/540\"\u003egeoalchemy/geoalchemy2#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCompile literal binds by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/543\"\u003egeoalchemy/geoalchemy2#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/544\"\u003egeoalchemy/geoalchemy2#544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore (mariadb): Stop converting WKB to WKT by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/545\"\u003egeoalchemy/geoalchemy2#545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker containers by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/546\"\u003egeoalchemy/geoalchemy2#546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/547\"\u003egeoalchemy/geoalchemy2#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/553\"\u003egeoalchemy/geoalchemy2#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/554\"\u003egeoalchemy/geoalchemy2#554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Improve readbility of benchmark results by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/556\"\u003egeoalchemy/geoalchemy2#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/555\"\u003egeoalchemy/geoalchemy2#555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/557\"\u003egeoalchemy/geoalchemy2#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Remove warning message from MySQL/MariaDB reflection by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/560\"\u003egeoalchemy/geoalchemy2#560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/561\"\u003egeoalchemy/geoalchemy2#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: correct doc strings by \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/564\"\u003egeoalchemy/geoalchemy2#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.0 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/565\"\u003egeoalchemy/geoalchemy2#565\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/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.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/geoalchemy/geoalchemy2/blob/master/CHANGES.txt\"\u003egeoalchemy2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Fix doc strings for cache enabled - \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e(papacodebear/master) Fix: Remove warning from MySQL/MariaDB reflection \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Improve readability of benchmark results \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/547\"\u003e#547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker container \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/546\"\u003e#546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf (mariadb): Stop converting WKB to WKT \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/545\"\u003e#545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/544\"\u003e#544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Compile literal binds properly \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/540\"\u003e#540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/538\"\u003e#538\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/geoalchemy/geoalchemy2/commit/60767082df9f4587fadd56ab94847ebc39df8295\"\u003e\u003ccode\u003e6076708\u003c/code\u003e\u003c/a\u003e Release: 0.18.0 (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/565\"\u003e#565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/e13112177bdf79cae0d72a6e89d815dc272e3dc5\"\u003e\u003ccode\u003ee131121\u003c/code\u003e\u003c/a\u003e Feat: Add support of spatial indexes for Raster type for PostgreSQL (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/0b432086a0c3b8ab160c5cc1864aa65e02f35362\"\u003e\u003ccode\u003e0b43208\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/8791b2eec013f21f599ca060d9fee4aba72ec2a1\"\u003e\u003ccode\u003e8791b2e\u003c/code\u003e\u003c/a\u003e Docs: Fix doc strings for cache enabled (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/d3c1d04c8b462c61132403e44a7a4f04a487c142\"\u003e\u003ccode\u003ed3c1d04\u003c/code\u003e\u003c/a\u003e Chore: Move reflection type registering (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/24dc5d05d97fb9a2a57103c1823a58f06940a5e8\"\u003e\u003ccode\u003e24dc5d0\u003c/code\u003e\u003c/a\u003e Fix: Remove warning from MySQL/MariaDB reflection (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/71f7914d4ddf7d9c46c772e36a8463e20901966a\"\u003e\u003ccode\u003e71f7914\u003c/code\u003e\u003c/a\u003e Feat: Handle computed columns (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/c139cdbca62019d92d18f12429706732777c38e2\"\u003e\u003ccode\u003ec139cdb\u003c/code\u003e\u003c/a\u003e Perf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/2e94baa4f3ac23e0160ed841d4efe7ceb3fa2378\"\u003e\u003ccode\u003e2e94baa\u003c/code\u003e\u003c/a\u003e Test: Improve readbility of benchmark results (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/84292bc352ab7ff1102a0529772d32afb0309616\"\u003e\u003ccode\u003e84292bc\u003c/code\u003e\u003c/a\u003e Chore: Create FUNDING.yml (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gql` from 3.5.2 to 4.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/graphql-python/gql/releases\"\u003egql's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eChange transports prototype using GraphQLRequest (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/551\"\u003e#551\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUsing GraphQLRequest instead of DocumentNode for gql, execute, subscribe methods (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/556\"\u003e#556\u003c/a\u003e):\n\u003cstrong\u003eThis is a big change:\u003c/strong\u003e\n\u003cul\u003e\n\u003cli\u003ethe \u003ccode\u003egql\u003c/code\u003e and \u003ccode\u003edsl_gql\u003c/code\u003e methods will now return a \u003ccode\u003eGraphQLRequest\u003c/code\u003e instead of a \u003ccode\u003eDocument\u003c/code\u003e Node\na \u003ccode\u003eGraphQLRequest\u003c/code\u003e is an object containing the document and optional \u003ccode\u003evariable_values\u003c/code\u003e and \u003ccode\u003eoperation_name\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eALL the \u003ccode\u003eexecute\u003c/code\u003e and \u003ccode\u003esubscribe\u003c/code\u003e methods now receive a \u003ccode\u003eGraphQLRequest\u003c/code\u003e as main argument instead of\na \u003ccode\u003eDocumentNode\u003c/code\u003e, \u003ccode\u003evariable_values\u003c/code\u003e and \u003ccode\u003eoperation_name\u003c/code\u003e arguments\u003c/li\u003e\n\u003cli\u003eThe old method of sending \u003ccode\u003evariable_values\u003c/code\u003e as an argument of \u003ccode\u003eexecute\u003c/code\u003e or \u003ccode\u003esubscribe\u003c/code\u003e still works but is deprecated\nSee \u003ca href=\"https://gql.readthedocs.io/en/latest/usage/variables.html\"\u003ehttps://gql.readthedocs.io/en/latest/usage/variables.html\u003c/a\u003e for the new syntax.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix subscription task cancel exception swallow (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/548\"\u003e#548\u003c/a\u003e):\nPreviously if a task was cancelled while a subscription task was active,\nthe \u003ccode\u003easyncio.CancelledError\u003c/code\u003e Exception would be swallowed by our code.\nThis is not the case anymore so you should now trap that Exception yourself.\u003c/li\u003e\n\u003cli\u003eClean up the file upload interface with FileVar class (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/549\"\u003e#549\u003c/a\u003e):\nThe file upload functionality has been modified to require \u003ccode\u003eFileVar\u003c/code\u003e instances\nfor uploaded files (the old method still works but is deprecated).\nSee \u003ca href=\"https://gql.readthedocs.io/en/latest/usage/file_upload.html\"\u003ehttps://gql.readthedocs.io/en/latest/usage/file_upload.html\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSet logging level to DEBUG for all transports (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/552\"\u003e#552\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eintrospection now requests deprecated input fields by default (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTrapping dependencies Exceptions into TransportConnectionFailed (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/558\"\u003e#558\u003c/a\u003e):\nNow gql will trap Exceptions raised by dependencies when executing a request and will\nencapsulate that Exception into the \u003ccode\u003eTransportConnectionFailed\u003c/code\u003e Exception\u003c/li\u003e\n\u003cli\u003eSet \u003cstrong\u003essl=True\u003c/strong\u003e by default for AIOHTTPTransport (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/538\"\u003e#538\u003c/a\u003e) (issue \u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/529\"\u003e#529\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eTransportConnectionClosed\u003c/code\u003e Exception replacing \u003ccode\u003eConnectionClosed\u003c/code\u003e Exception (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/536\"\u003e#536\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ewebsocket\u003c/code\u003e attribute removed from transport, now using \u003ccode\u003e_connected\u003c/code\u003e instead (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/536\"\u003e#536\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade lastest websockets and Exceptions overhaul (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cp\u003eBatching requests is now fully supported, on sync or async transports, with automatic batching:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImplementation of execute_batch for async transports (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/550\"\u003e#550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImplementation of automatic batching for async (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://gql.readthedocs.io/en/latest/advanced/batching_requests.html\"\u003ehttps://gql.readthedocs.io/en/latest/advanced/batching_requests.html\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix httpx test deprecated warning (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/542\"\u003e#542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRefactor websockets transports (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/536\"\u003e#536\u003c/a\u003e) :\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eRefactor WebSockets Transport with Dependency Injection Architecture\u003c/p\u003e\n\u003cp\u003eThis major architectural improvement implements dependency injection patterns across the WebSockets transport layer, creating a more modular, testable, and extensible system:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCreated abstract AdapterConnection interface in common/adapters/connection.py\u003c/li\u003e\n\u003cli\u003eImplemented concrete WebSocketsAdapter to wrap the websockets library\u003c/li\u003e\n\u003cli\u003eMoved websockets_base.py to common/base.py maintaining better structure which is independant of the websockets library used\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/graphql-python/gql/commit/059cabaadf69c3ebe94f34db5e4f5a24c918c231\"\u003e\u003ccode\u003e059caba\u003c/code\u003e\u003c/a\u003e Bump version number to 4.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-python/gql/commit/7695620579f6b3c94d69fed3fba147950fab4e5c\"\u003e\u003ccode\u003e7695620\u003c/code\u003e\u003c/a\u003e Restrict graphql-core to \u0026lt;3.3 instead of \u0026lt;3.2.7 on stable branch\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-python/gql/commit/16c76bfba8ac0ddd1e8213c8ab310eafcf32751f\"\u003e\u003ccode\u003e16c76bf\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-python/gql/commit/dba4953add92249800d8d8a92cb33dc66856a8a6\"\u003e\u003ccode\u003edba4953\u003c/code\u003e\u003c/a\u003e Documentation improvements (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-python/gql/commit/a90f92322713bd75d8557b8fa79e89c1708fdcff\"\u003e\u003ccode\u003ea90f923\u003c/code\u003e\u003c/a\u003e Bump version number to 4.0.0b0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-python/gql/commit/4af703e6a0c0bbb824012a5d4c75978f53a8e25a\"\u003e\u003ccode\u003e4af703e\u003c/code\u003e\u003c/a\u003e Trapping dependencies Exceptions into TransportConnectionFailed (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/558\"\u003e#558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-python/gql/commit/4fa1553fd5ba7c99b7176fe9eb6a18d8cc2cc5d4\"\u003e\u003ccode\u003e4fa1553\u003c/code\u003e\u003c/a\u003e Refactor transports (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-python/gql/commit/b3789ef85f728e7b0dbc60e7159d9eb2cb71476a\"\u003e\u003ccode\u003eb3789ef\u003c/code\u003e\u003c/a\u003e Using GraphQLRequest instead of DocumentNode for gql, execute, subscribe meth...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-python/gql/commit/b221c0e60d7d02e8d32b8f1e4f113e86d74f1c51\"\u003e\u003ccode\u003eb221c0e\u003c/code\u003e\u003c/a\u003e Remove MIT license classifier (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-python/gql/commit/7fcb5b6f1a4f517b1f97c50f66599ea5943366e7\"\u003e\u003ccode\u003e7fcb5b6\u003c/code\u003e\u003c/a\u003e Implementation of automatic batching for async (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/graphql-python/gql/compare/v3.5.2...v4.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `anyio` from 4.9.0 to 4.10.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/agronholm/anyio/releases\"\u003eanyio's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.10.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded the \u003ccode\u003efeed_data()\u003c/code\u003e method to the \u003ccode\u003eBufferedByteReceiveStream\u003c/code\u003e class, allowing users to inject data directly into the buffer\u003c/li\u003e\n\u003cli\u003eAdded various class methods to wrap existing sockets as listeners or socket streams:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eSocketListener.from_socket()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eSocketStream.from_socket()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUNIXSocketStream.from_socket()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUDPSocket.from_socket()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnectedUDPSocket.from_socket()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUNIXDatagramSocket.from_socket()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnectedUNIXDatagramSocket.from_socket()\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eAdded a hierarchy of connectable stream classes for transparently connecting to various remote or local endpoints for exchanging bytes or objects\u003c/li\u003e\n\u003cli\u003eAdded context manager mix-in classes (\u003ccode\u003eanyio.ContextManagerMixin\u003c/code\u003e and \u003ccode\u003eanyio.AsyncContextManagerMixin\u003c/code\u003e) to help write classes that embed other context managers, particularly cancel scopes or task groups (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/905\"\u003e#905\u003c/a\u003e; PR by \u003ca href=\"https://github.com/agronholm\"\u003e\u003ccode\u003e@​agronholm\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/tapetersen\"\u003e\u003ccode\u003e@​tapetersen\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded the ability to specify the thread name in \u003ccode\u003estart_blocking_portal()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/818\"\u003e#818\u003c/a\u003e; PR by \u003ca href=\"https://github.com/davidbrochart\"\u003e\u003ccode\u003e@​davidbrochart\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eanyio.notify_closing\u003c/code\u003e to allow waking \u003ccode\u003eanyio.wait_readable\u003c/code\u003e and \u003ccode\u003eanyio.wait_writable\u003c/code\u003e before closing a socket. Among other things, this prevents an OSError on the \u003ccode\u003eProactorEventLoop\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/896\"\u003e#896\u003c/a\u003e; PR by \u003ca href=\"https://github.com/graingert\"\u003e\u003ccode\u003e@​graingert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eIncorporated several documentation improvements from the EuroPython 2025 sprint (special thanks to the sprinters: Emmanuel Okedele, Jan Murre, Euxenia Miruna Goia and Christoffer Fjord)\u003c/li\u003e\n\u003cli\u003eAdded a documentation page explaining why one might want to use AnyIO's APIs instead of asyncio's\u003c/li\u003e\n\u003cli\u003eUpdated the \u003ccode\u003eto_interpreters\u003c/code\u003e module to use the public \u003ccode\u003econcurrent.interpreters\u003c/code\u003e API on Python 3.14 or later\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eanyio.Path.copy()\u003c/code\u003e and \u003ccode\u003eanyio.Path.copy_into()\u003c/code\u003e failing on Python 3.14.0a7\u003c/li\u003e\n\u003cli\u003eFixed return annotation of \u003ccode\u003e__aexit__\u003c/code\u003e on async context managers. CMs which can suppress exceptions should return \u003ccode\u003ebool\u003c/code\u003e, or \u003ccode\u003eNone\u003c/code\u003e otherwise. (\u003ca href=\"https://redirect.github.com/agronh...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1309","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1309","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1309/packages"},{"uuid":"2792310326","node_id":"PR_kwDOL2ZwPc6mb0Y2","number":436,"state":"open","title":"build(deps): bump datafusion from 46.0.0 to 49.0.0 in /python","user":"dependabot[bot]","labels":["python","dependencies"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-02T11:29:59.000Z","updated_at":"2025-09-02T11:30:00.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"datafusion","old_version":"46.0.0","new_version":"49.0.0","repository_url":"https://github.com/apache/datafusion-python"}],"path":"/python","ecosystem":"pip"},"body":"Bumps [datafusion](https://github.com/apache/datafusion-python) from 46.0.0 to 49.0.0.\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/97a6ac392d6d5b46b97cc1ea1bc60c4351c878f7\"\u003e\u003ccode\u003e97a6ac3\u003c/code\u003e\u003c/a\u003e Bump version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/22c63812d03b1f228c2ab2636901a55216aaec3e\"\u003e\u003ccode\u003e22c6381\u003c/code\u003e\u003c/a\u003e Update cargo lock file and changelog for release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/d6d6ea69a7bcc80ebf025ee8778df12ecbf874c5\"\u003e\u003ccode\u003ed6d6ea6\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1204\"\u003e#1204\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/cb29176f61dbff5c0464ca16ed0f47f7b2edb12a\"\u003e\u003ccode\u003ecb29176\u003c/code\u003e\u003c/a\u003e build(deps): bump url from 2.5.4 to 2.5.7 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/b5536435bf75d6c0e2fb5ee07874d88bafef7746\"\u003e\u003ccode\u003eb553643\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1201\"\u003e#1201\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/0806ce52e4bd0086a96465206ff51319746c53c2\"\u003e\u003ccode\u003e0806ce5\u003c/code\u003e\u003c/a\u003e fix(build): Include build.rs in published crates (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1199\"\u003e#1199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/1ba8807cfd3ea878dbd866554a547da7148e2d4e\"\u003e\u003ccode\u003e1ba8807\u003c/code\u003e\u003c/a\u003e Improve \u003ccode\u003eshow()\u003c/code\u003e output for empty DataFrames (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1208\"\u003e#1208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/e28256cb935b6124373a3799f9e1f2e1c9c90a28\"\u003e\u003ccode\u003ee28256c\u003c/code\u003e\u003c/a\u003e suggestions (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1183\"\u003e#1183\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/589258533b796dd24a8ca56bbd0a0e7ed3ea05cc\"\u003e\u003ccode\u003e5892585\u003c/code\u003e\u003c/a\u003e Allow users to pass a single expression instead of a list of expressions for ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/f94794122f2d98797245ce6d9a3a441ef458f3af\"\u003e\u003ccode\u003ef947941\u003c/code\u003e\u003c/a\u003e build(deps): bump slab from 0.4.10 to 0.4.11 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1205\"\u003e#1205\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/datafusion-python/compare/46.0.0...49.0.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=datafusion\u0026package-manager=pip\u0026previous-version=46.0.0\u0026new-version=49.0.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/apache/hudi-rs/pull/436","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fhudi-rs/issues/436","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/436/packages"},{"uuid":"2788382204","node_id":"PR_kwDOKa92Zs6mM1X8","number":186,"state":"open","title":"Build: Bump datafusion from 48.0.0 to 49.0.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-09-01T03:14:56.000Z","updated_at":"2025-09-01T03:14:57.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Build: Bump","packages":[{"name":"datafusion","old_version":"48.0.0","new_version":"49.0.0","repository_url":"https://github.com/apache/datafusion-python"}],"path":null,"ecosystem":"pip"},"body":"Bumps [datafusion](https://github.com/apache/datafusion-python) from 48.0.0 to 49.0.0.\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/97a6ac392d6d5b46b97cc1ea1bc60c4351c878f7\"\u003e\u003ccode\u003e97a6ac3\u003c/code\u003e\u003c/a\u003e Bump version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/22c63812d03b1f228c2ab2636901a55216aaec3e\"\u003e\u003ccode\u003e22c6381\u003c/code\u003e\u003c/a\u003e Update cargo lock file and changelog for release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/d6d6ea69a7bcc80ebf025ee8778df12ecbf874c5\"\u003e\u003ccode\u003ed6d6ea6\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1204\"\u003e#1204\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/cb29176f61dbff5c0464ca16ed0f47f7b2edb12a\"\u003e\u003ccode\u003ecb29176\u003c/code\u003e\u003c/a\u003e build(deps): bump url from 2.5.4 to 2.5.7 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/b5536435bf75d6c0e2fb5ee07874d88bafef7746\"\u003e\u003ccode\u003eb553643\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1201\"\u003e#1201\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/0806ce52e4bd0086a96465206ff51319746c53c2\"\u003e\u003ccode\u003e0806ce5\u003c/code\u003e\u003c/a\u003e fix(build): Include build.rs in published crates (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1199\"\u003e#1199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/1ba8807cfd3ea878dbd866554a547da7148e2d4e\"\u003e\u003ccode\u003e1ba8807\u003c/code\u003e\u003c/a\u003e Improve \u003ccode\u003eshow()\u003c/code\u003e output for empty DataFrames (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1208\"\u003e#1208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/e28256cb935b6124373a3799f9e1f2e1c9c90a28\"\u003e\u003ccode\u003ee28256c\u003c/code\u003e\u003c/a\u003e suggestions (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1183\"\u003e#1183\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/589258533b796dd24a8ca56bbd0a0e7ed3ea05cc\"\u003e\u003ccode\u003e5892585\u003c/code\u003e\u003c/a\u003e Allow users to pass a single expression instead of a list of expressions for ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/f94794122f2d98797245ce6d9a3a441ef458f3af\"\u003e\u003ccode\u003ef947941\u003c/code\u003e\u003c/a\u003e build(deps): bump slab from 0.4.10 to 0.4.11 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1205\"\u003e#1205\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/datafusion-python/compare/48.0.0...49.0.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=datafusion\u0026package-manager=pip\u0026previous-version=48.0.0\u0026new-version=49.0.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/Fokko/iceberg-python/pull/186","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fokko%2Ficeberg-python/issues/186","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/186/packages"},{"uuid":"2774632676","node_id":"PR_kwDOL2ZwPc6lYYjk","number":427,"state":"closed","title":"build(deps): bump datafusion from 46.0.0 to 48.0.0 in /python","user":"dependabot[bot]","labels":["python","dependencies"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-08-26T15:29:07.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-08-26T10:24:31.000Z","updated_at":"2025-08-26T15:29:07.000Z","time_to_close":18276,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"datafusion","old_version":"46.0.0","new_version":"48.0.0","repository_url":"https://github.com/apache/datafusion-python"}],"path":"/python","ecosystem":"pip"},"body":"Bumps [datafusion](https://github.com/apache/datafusion-python) from 46.0.0 to 48.0.0.\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/f10d3b892b81f48b4dfc2ccd848d9c2ad5a1c4a7\"\u003e\u003ccode\u003ef10d3b8\u003c/code\u003e\u003c/a\u003e Prepare for 48 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/2e1b71369eefc97c22b82be84bbabb414f748fb9\"\u003e\u003ccode\u003e2e1b713\u003c/code\u003e\u003c/a\u003e refactor: style loading logic in DataFrameHtmlFormatter (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1177\"\u003e#1177\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/98f4773bbe24e31abb7ab1a4a0b5f8c925257885\"\u003e\u003ccode\u003e98f4773\u003c/code\u003e\u003c/a\u003e feat: add FFI support for user defined functions (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1145\"\u003e#1145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/9362f53150e5423581757ed56883b3ca2c95b8a2\"\u003e\u003ccode\u003e9362f53\u003c/code\u003e\u003c/a\u003e feat: python based catalog and schema provider (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1156\"\u003e#1156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/954563429384078a9e85c56ad553c7e3be7ac52a\"\u003e\u003ccode\u003e9545634\u003c/code\u003e\u003c/a\u003e feat: collect once during display() in jupyter notebooks (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1167\"\u003e#1167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/03921d9629c576afc43b63ad67172f70abcd73e8\"\u003e\u003ccode\u003e03921d9\u003c/code\u003e\u003c/a\u003e feat: dataframe string formatter (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1170\"\u003e#1170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/ef62fa897e6e8334779f556aad4c0da89ebdc86f\"\u003e\u003ccode\u003eef62fa8\u003c/code\u003e\u003c/a\u003e Add compression_level support to ParquetWriterOptions and enhance write_parqu...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/0d3c37f9379fd12406022c7edc3fee056866a694\"\u003e\u003ccode\u003e0d3c37f\u003c/code\u003e\u003c/a\u003e Consolidate DataFrame Docs: Merge HTML Rendering Section as Subpage (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1161\"\u003e#1161\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/1812a0d3e88976f51b40ccfd1a02fddb17ddb8bb\"\u003e\u003ccode\u003e1812a0d\u003c/code\u003e\u003c/a\u003e Fix signature of \u003ccode\u003e__arrow_c_stream__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1168\"\u003e#1168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/98dc06b553b69576d50157542f761b44f456dcf2\"\u003e\u003ccode\u003e98dc06b\u003c/code\u003e\u003c/a\u003e feat: Support Parquet writer options (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1123\"\u003e#1123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/datafusion-python/compare/46.0.0...48.0.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=datafusion\u0026package-manager=pip\u0026previous-version=46.0.0\u0026new-version=48.0.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/apache/hudi-rs/pull/427","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fhudi-rs/issues/427","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/427/packages"}],"issue_packages":[{"old_version":"47.0.0","new_version":"53.0.0","update_type":"major","path":null,"pr_created_at":"2026-04-27T22:31:53.000Z","version_change":"47.0.0 → 53.0.0","issue":{"uuid":"4339256101","node_id":"PR_kwDOHTdvBs7WIng2","number":1590,"state":"closed","title":"deps(ibis): bump the all group across 1 directory with 33 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-04T23:10:36.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-27T22:31:53.000Z","updated_at":"2026-05-04T23:10:38.000Z","time_to_close":607123,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":33,"packages":[{"name":"fastapi","old_version":"0.120.1","new_version":"0.136.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"pydantic","old_version":"2.10.6","new_version":"2.13.3","repository_url":"https://github.com/pydantic/pydantic"},{"name":"ibis-framework","old_version":"10.8.0","new_version":"12.0.0","repository_url":"https://github.com/ibis-project/ibis"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.49.2","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.2.2","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"orjson","old_version":"3.11.7","new_version":"3.11.8","repository_url":"https://github.com/ijl/orjson"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.19.0","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"anyio","old_version":"4.10.0","new_version":"4.13.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"duckdb","old_version":"1.3.2","new_version":"1.5.2","repository_url":"https://github.com/duckdb/duckdb-python"},{"name":"oracledb","old_version":"3.3.0","new_version":"3.4.2","repository_url":"https://github.com/oracle/python-oracledb"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.46.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"gunicorn","old_version":"23.0.0","new_version":"25.3.0","repository_url":"https://github.com/benoitc/gunicorn"},{"name":"uvicorn-worker","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/Kludex/uvicorn-worker"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.13","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"53.0.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"starlette","old_version":"0.49.3","new_version":"1.0.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"databricks-sql-connector","old_version":"4.2.5","new_version":"4.2.6","repository_url":"https://github.com/databricks/databricks-sql-python"},{"name":"databricks-sdk","old_version":"0.73.0","new_version":"0.105.0","repository_url":"https://github.com/databricks/databricks-sdk-py"},{"name":"pyspark","old_version":"3.5.7","new_version":"4.1.1","repository_url":"https://github.com/apache/spark"},{"name":"pyopenssl","old_version":"26.0.0","new_version":"26.1.0","repository_url":"https://github.com/pyca/pyopenssl"},{"name":"wren-engine","old_version":"0.1.0","new_version":"0.3.0","repository_url":"https://github.com/Canner/wren-engine"},{"name":"matplotlib","old_version":"3.10.8","new_version":"3.10.9","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"plotly","old_version":"6.6.0","new_version":"6.7.0","repository_url":"https://github.com/plotly/plotly.py"},{"name":"pytest","old_version":"8.3.5","new_version":"9.0.3","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.14.2","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.49","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.6.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.15.12","repository_url":"https://github.com/astral-sh/ruff"},{"name":"psycopg2","old_version":"2.9.11","new_version":"2.9.12","repository_url":"https://github.com/psycopg/psycopg2"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.15.1","repository_url":"https://github.com/ClickHouse/clickhouse-connect"},{"name":"polars","old_version":"1.39.3","new_version":"1.40.1","repository_url":"https://github.com/pola-rs/polars"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 33 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.120.1` | `0.136.1` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.13.3` |\n| [ibis-framework](https://github.com/ibis-project/ibis) | `10.8.0` | `12.0.0` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.49.2` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.2.2` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.7` | `3.11.8` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.3` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.19.0` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.10.0` | `4.13.0` |\n| [duckdb](https://github.com/duckdb/duckdb-python) | `1.3.2` | `1.5.2` |\n| [oracledb](https://github.com/oracle/python-oracledb) | `3.3.0` | `3.4.2` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.46.0` |\n| [gunicorn](https://github.com/benoitc/gunicorn) | `23.0.0` | `25.3.0` |\n| [uvicorn-worker](https://github.com/Kludex/uvicorn-worker) | `0.3.0` | `0.4.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.13` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `53.0.0` |\n| [starlette](https://github.com/Kludex/starlette) | `0.49.3` | `1.0.0` |\n| [databricks-sql-connector](https://github.com/databricks/databricks-sql-python) | `4.2.5` | `4.2.6` |\n| [databricks-sdk](https://github.com/databricks/databricks-sdk-py) | `0.73.0` | `0.105.0` |\n| [pyspark](https://github.com/apache/spark) | `3.5.7` | `4.1.1` |\n| [pyopenssl](https://github.com/pyca/pyopenssl) | `26.0.0` | `26.1.0` |\n| [wren-engine](https://github.com/Canner/wren-engine) | `0.1.0` | `0.3.0` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.10.8` | `3.10.9` |\n| [plotly](https://github.com/plotly/plotly.py) | `6.6.0` | `6.7.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `9.0.3` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.14.2` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.49` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.6.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.15.12` |\n| [psycopg2](https://github.com/psycopg/psycopg2) | `2.9.11` | `2.9.12` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.15.1` |\n| [polars](https://github.com/pola-rs/polars) | `1.39.3` | `1.40.1` |\n\n\nUpdates `fastapi` from 0.120.1 to 0.136.1\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's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.136.1\u003c/h2\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Update Pydantic v2 code to address deprecations. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15101\"\u003e#15101\u003c/a\u003e by \u003ca href=\"https://github.com/svlandeg\"\u003e\u003ccode\u003e@​svlandeg\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🔨 Tweak translation script. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15174\"\u003e#15174\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump mkdocs-material from 9.7.1 to 9.7.6. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15408\"\u003e#15408\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump inline-snapshot from 0.31.1 to 0.32.6. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15409\"\u003e#15409\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump pytest-codspeed from 4.3.0 to 4.4.0. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15407\"\u003e#15407\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump pytest-cov from 7.0.0 to 7.1.0. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15406\"\u003e#15406\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump cloudflare/wrangler-action from 3.14.1 to 3.15.0. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15405\"\u003e#15405\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump mypy from 1.19.1 to 1.20.1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15410\"\u003e#15410\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump python-dotenv from 1.2.1 to 1.2.2. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15400\"\u003e#15400\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump starlette from 0.52.1 to 1.0.0. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15397\"\u003e#15397\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump pygithub from 2.8.1 to 2.9.1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15396\"\u003e#15396\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump pyjwt from 2.12.0 to 2.12.1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15393\"\u003e#15393\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump zizmor from 1.23.1 to 1.24.1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15394\"\u003e#15394\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump strawberry-graphql from 0.312.3 to 0.314.3. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15395\"\u003e#15395\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump python-multipart from 0.0.22 to 0.0.26. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15360\"\u003e#15360\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump authlib from 1.6.9 to 1.6.11. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15373\"\u003e#15373\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump aiohttp from 3.13.3 to 3.13.4. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15282\"\u003e#15282\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump pygments from 2.19.2 to 2.20.0. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15263\"\u003e#15263\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump pymdown-extensions from 10.20.1 to 10.21.2. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15391\"\u003e#15391\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump pillow from 12.1.1 to 12.2.0. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15333\"\u003e#15333\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump pytest from 9.0.2 to 9.0.3. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15334\"\u003e#15334\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump actions/upload-artifact from 7.0.0 to 7.0.1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15374\"\u003e#15374\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump actions/cache from 5.0.4 to 5.0.5. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15385\"\u003e#15385\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔧 Update sponsors: remove Zuplo. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15369\"\u003e#15369\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔧 Update sponsors: remove Speakeasy. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15368\"\u003e#15368\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔒️ Add zizmor and fix audit findings. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15316\"\u003e#15316\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.136.0\u003c/h2\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Support free-threaded Python 3.14t. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15149\"\u003e#15149\u003c/a\u003e by \u003ca href=\"https://github.com/svlandeg\"\u003e\u003ccode\u003e@​svlandeg\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.135.4\u003c/h2\u003e\n\u003ch3\u003eRefactors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🔥 Remove April Fool's \u003ccode\u003e@app.vibe()\u003c/code\u003e 🤪. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15363\"\u003e#15363\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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⬆ Bump cryptography from 46.0.5 to 46.0.7. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15314\"\u003e#15314\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump strawberry-graphql from 0.307.1 to 0.312.3. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15309\"\u003e#15309\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔨 Add pre-commit hook to ensure latest release header has date. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15293\"\u003e#15293\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.135.3\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/fastapi/fastapi/commit/e54e5a8980ffa6d7ff68ee7b25a1c46036375521\"\u003e\u003ccode\u003ee54e5a8\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.136.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/9a8a5fd99902c3b80d4cc94b85e120e2b808825f\"\u003e\u003ccode\u003e9a8a5fd\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/7815a32f2ed177b8b786a48b3e0712c05b5c644f\"\u003e\u003ccode\u003e7815a32\u003c/code\u003e\u003c/a\u003e ⬆️ Update Pydantic v2 code to address deprecations (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/15101\"\u003e#15101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/ef1c927b0558d414e199a666833942a6fabb3a51\"\u003e\u003ccode\u003eef1c927\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/38039e12a86e67f2001b9b7d96c219691d6cb4af\"\u003e\u003ccode\u003e38039e1\u003c/code\u003e\u003c/a\u003e 🔨 Tweak translation script (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/15174\"\u003e#15174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/4fa826ce0a3b16884a04f51e5aac95d01790b599\"\u003e\u003ccode\u003e4fa826c\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/c39415673e621665fdb7bbdde69beba7eb1dfd12\"\u003e\u003ccode\u003ec394156\u003c/code\u003e\u003c/a\u003e ⬆ Bump mkdocs-material from 9.7.1 to 9.7.6 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/15408\"\u003e#15408\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/ae230ad2f9d90a4e3f6222ff1a5d6e8da41ec0ad\"\u003e\u003ccode\u003eae230ad\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d9eb39d1a1bf2f6e6e5d3a55088f61c712cb864e\"\u003e\u003ccode\u003ed9eb39d\u003c/code\u003e\u003c/a\u003e ⬆ Bump inline-snapshot from 0.31.1 to 0.32.6 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/15409\"\u003e#15409\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/4f8b5d14d324ae8e15cfae8d85adb4186d4c2175\"\u003e\u003ccode\u003e4f8b5d1\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.120.1...0.136.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.10.6 to 2.13.3\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.13.3 2026-04-20\u003c/h2\u003e\n\u003ch2\u003ev2.13.3 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eHandle \u003ccode\u003eAttributeError\u003c/code\u003e subclasses with \u003ccode\u003efrom_attributes\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/13096\"\u003e#13096\u003c/a\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.13.2...v2.13.3\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.13.2...v2.13.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.13.2 2026-04-17\u003c/h2\u003e\n\u003ch2\u003ev2.13.2 (2026-04-17)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eValidationInfo.field_name\u003c/code\u003e missing with \u003ccode\u003emodel_validate_json()\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/13084\"\u003e#13084\u003c/a\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.13.1...v2.13.2\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.13.1...v2.13.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.13.1 2026-04-15\u003c/h2\u003e\n\u003ch2\u003ev2.13.1 (2026-04-15)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eValidationInfo.data\u003c/code\u003e missing with \u003ccode\u003emodel_validate_json()\u003c/code\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13079\"\u003e#13079\u003c/a\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.13.0...v2.13.1\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.13.0...v2.13.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.13.0 2026-04-13\u003c/h2\u003e\n\u003ch2\u003ev2.13.0 (2026-04-13)\u003c/h2\u003e\n\u003cp\u003eThe highlights of the v2.13 release are available in the \u003ca href=\"https://pydantic.dev/articles/pydantic-v2-13-release\"\u003eblog post\u003c/a\u003e.\nSeveral minor changes (considered non-breaking changes according to our \u003ca href=\"https://pydantic.dev/docs/validation/2.13/get-started/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\u003cp\u003eThis release contains the updated \u003ccode\u003epydantic.v1\u003c/code\u003e namespace, matching version 1.10.26 which includes support for Python 3.14.\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eSee the beta releases for all changes sinces 2.12.\u003c/p\u003e\n\u003ch4\u003ePackaging\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAdd zizmor for GitHub Actions workflow linting 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/13039\"\u003e#13039\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate jiter to v0.14.0 to fix a segmentation fault on musl Linux 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/13064\"\u003e#13064\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/pydantic/pydantic/blob/main/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.13.3 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.13.3\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eHandle \u003ccode\u003eAttributeError\u003c/code\u003e subclasses with \u003ccode\u003efrom_attributes\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/13096\"\u003e#13096\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.13.2 (2026-04-17)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.13.2\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eValidationInfo.field_name\u003c/code\u003e missing with \u003ccode\u003emodel_validate_json()\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/13084\"\u003e#13084\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.13.1 (2026-04-15)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.13.1\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eValidationInfo.data\u003c/code\u003e missing with \u003ccode\u003emodel_validate_json()\u003c/code\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13079\"\u003e#13079\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.13.0 (2026-04-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.13.0\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThe highlights of the v2.13 release are available in the \u003ca href=\"https://pydantic.dev/articles/pydantic-v2-13-release\"\u003eblog post\u003c/a\u003e.\nSeveral minor changes (considered non-breaking changes according to our \u003ca href=\"https://pydantic.dev/docs/validation/2.13/get-started/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\u003eThis release contains the updated \u003ccode\u003epydantic.v1\u003c/code\u003e namespace, matching version 1.10.26 which includes support for Python 3.14.\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eSee the beta releases for all changes sinces 2.12.\u003c/p\u003e\n\u003ch4\u003eNew Features\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow default factories of private attributes to take validated model data 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/13013\"\u003e#13013\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eChanges\u003c/h4\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/9e9a11132c980c4ec84ff6d2df06d4c1a55ca8f3\"\u003e\u003ccode\u003e9e9a111\u003c/code\u003e\u003c/a\u003e Fix backported test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/1ec8c6aa0cae1c78409c6f31af738a24e16c7124\"\u003e\u003ccode\u003e1ec8c6a\u003c/code\u003e\u003c/a\u003e Prepare release v2.13.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/fb4f2044436e9fa4ff9745479ce263016a99c4d6\"\u003e\u003ccode\u003efb4f204\u003c/code\u003e\u003c/a\u003e Handle \u003ccode\u003eAttributeError\u003c/code\u003e subclasses with \u003ccode\u003efrom_attributes\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/ca3ddd1149bd3b14273922a29da174804496a055\"\u003e\u003ccode\u003eca3ddd1\u003c/code\u003e\u003c/a\u003e Prepare release v2.13.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/000e823a3ab7545b0c6064fde34effdcd02044ab\"\u003e\u003ccode\u003e000e823\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eValidationInfo.field_name\u003c/code\u003e missing with \u003ccode\u003emodel_validate_json()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/d45d8be3ffb6dfc6d0c64da6980140c91ff841fb\"\u003e\u003ccode\u003ed45d8be\u003c/code\u003e\u003c/a\u003e Prepare release 2.13.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/54aca609ce58e73dfe1c681d93432fbe3a4621da\"\u003e\u003ccode\u003e54aca60\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eValidationInfo.data\u003c/code\u003e missing with \u003ccode\u003emodel_validate_json()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/46bf4fa648af3a1fbf4603a37f210e9d9c618357\"\u003e\u003ccode\u003e46bf4fa\u003c/code\u003e\u003c/a\u003e Fix Pydantic release workflow (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/13067\"\u003e#13067\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/1b359edab09c623464d23c6fd2503ae5ff276d43\"\u003e\u003ccode\u003e1b359ed\u003c/code\u003e\u003c/a\u003e Prepare release v2.13.0 (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/13065\"\u003e#13065\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/b1bf19445d8ac144a7a0e82674d2d87eebab6c18\"\u003e\u003ccode\u003eb1bf194\u003c/code\u003e\u003c/a\u003e Fix model equality when using runtime \u003ccode\u003eextra\u003c/code\u003e configuration (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/13062\"\u003e#13062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.13.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ibis-framework` from 10.8.0 to 12.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ibis-project/ibis/releases\"\u003eibis-framework's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e12.0.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ibis-project/ibis/compare/11.0.0...12.0.0\"\u003e12.0.0\u003c/a\u003e (2026-02-07)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003epyspark:\u003c/strong\u003e PySpark \u0026lt;3.5 is no longer supported\u003c/li\u003e\n\u003cli\u003eofficially drop support for 3.9, bump all dependencies\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatatypes:\u003c/strong\u003e infer decimal precision and scale\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e implement \u003ccode\u003eupsert()\u003c/code\u003e using \u003ccode\u003eMERGE INTO\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11624\"\u003e#11624\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/9126733b38e1c92f6e787f92dc9954e88ab6400d\"\u003e9126733\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/5391\"\u003e#5391\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e support Table.cast(my_col=int) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/9e209f37b6228472071ef8b9168ed56ec9c0a727\"\u003e9e209f3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatabricks:\u003c/strong\u003e support json literals (\u003ca href=\"https://github.com/ibis-project/ibis/commit/f46a58f9eb5128e64981b756b0a866e291663997\"\u003ef46a58f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatafusion:\u003c/strong\u003e add compilation rule for Strftime (\u003ca href=\"https://github.com/ibis-project/ibis/commit/6fa8411e43a68f0f0ac38f493242bc1ff28a5253\"\u003e6fa8411\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e enable compatibility with pandas 3.0.0 (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11873\"\u003e#11873\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/34a36be80e589e449501942bda8ec4125e89beb0\"\u003e34a36be\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ematerialize:\u003c/strong\u003e add new backend for Materialize streaming database (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11893\"\u003e#11893\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/35fcce08369ed7650b00fed7064535eeceeaba41\"\u003e35fcce0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eofficially drop support for 3.9, bump all dependencies (\u003ca href=\"https://github.com/ibis-project/ibis/commit/aa16d0885ff62ac92ec1027a245158896f74cc0d\"\u003eaa16d08\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epyspark:\u003c/strong\u003e support pyspark 4.0 (\u003ca href=\"https://github.com/ibis-project/ibis/commit/e9c35e6a3574855daf4e02f4217727df0d54872d\"\u003ee9c35e6\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003esinglestoredb:\u003c/strong\u003e add SingleStoreDB backend (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11595\"\u003e#11595\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/a83cfef0f6b84f3dbb83ca55682100f32488d7c2\"\u003ea83cfef\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport JSON literal values (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11728\"\u003e#11728\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/38b19c765f02b18684ec6e7b4e0815d117fc8b60\"\u003e38b19c7\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11727\"\u003e#11727\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etyping:\u003c/strong\u003e improve typing of ibis.common.collections (\u003ca href=\"https://github.com/ibis-project/ibis/commit/e3aba92c6126e556e179f2cbff3dc837802de790\"\u003ee3aba92\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etyping:\u003c/strong\u003e make dtype() and schema() more typesafe (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11856\"\u003e#11856\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/116886f807fbf62ce0265ef152f48540c284b8c5\"\u003e116886f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etyping:\u003c/strong\u003e make more arguments positional-only (\u003ca href=\"https://github.com/ibis-project/ibis/commit/610c4504b438b5ac302b384073134ff5c8458908\"\u003e610c450\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etyping:\u003c/strong\u003e make types more precise for many common Values (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11771\"\u003e#11771\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/2eb772a7a8a5632edb347ecd49af5773c268d188\"\u003e2eb772a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd order_by to first and last (\u003ca href=\"https://github.com/ibis-project/ibis/commit/7ead7876435c55a10dc5a6457a49b9e19b7a654e\"\u003e7ead787\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11656\"\u003e#11656\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd upper _method_overrides in decompile (\u003ca href=\"https://github.com/ibis-project/ibis/commit/e7956f4cbb5daef11bbc01177ccc56f5ae3bf3fa\"\u003ee7956f4\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11717\"\u003e#11717\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ebigquery:\u003c/strong\u003e relax decimal upper bounds (\u003ca href=\"https://github.com/ibis-project/ibis/commit/d05751b445d65ae0a1c786c756ea1235d51a7f18\"\u003ed05751b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ebiquery:\u003c/strong\u003e use qualified table name for upserts (\u003ca href=\"https://github.com/ibis-project/ibis/commit/120b2d874d7b191886dcdad69be76c26bbe062ce\"\u003e120b2d8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecitation:\u003c/strong\u003e fix CITATION.cff [skip ci] (\u003ca href=\"https://github.com/ibis-project/ibis/commit/305526a8d6df097765b2affce60b1731f2608a1b\"\u003e305526a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatatypes:\u003c/strong\u003e infer decimal precision and scale (\u003ca href=\"https://github.com/ibis-project/ibis/commit/ed346e6d33157d9cf6e01f91bc67ac8866e09eb3\"\u003eed346e6\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatatypes:\u003c/strong\u003e make decimal casts more permissive (\u003ca href=\"https://github.com/ibis-project/ibis/commit/ba087d2d3a6c57451bdcf81aaa4fa5cf32350831\"\u003eba087d2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e pin dep on sqlglot to \u0026lt;28 (\u003ca href=\"https://github.com/ibis-project/ibis/commit/3e9156ef0b0b10ce6f3d95db97401175a7d9df56\"\u003e3e9156e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e sqlglot 28.0 incompatibilities (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11839\"\u003e#11839\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/ab21efd939b7cd6b7cf8f03ed7a22ec96d511be0\"\u003eab21efd\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edocs:\u003c/strong\u003e typo in Ibis description in why.qmd (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11816\"\u003e#11816\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/402c37d9920fa09bcc1aa5f9202367b01cc98ef1\"\u003e402c37d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003educkdb:\u003c/strong\u003e create a single table from Python data object (\u003ca href=\"https://github.com/ibis-project/ibis/commit/7f82e5e4aed0a492538016bfa152132ad0bc928f\"\u003e7f82e5e\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11709\"\u003e#11709\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eexasol:\u003c/strong\u003e update Exasol Docker image tag to 2025.1.8 (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11806\"\u003e#11806\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/2414952998f5f078b931e467e5b7f495062308ed\"\u003e2414952\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11703\"\u003e#11703\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eflink:\u003c/strong\u003e don't pass unsupported \u0026quot;position\u0026quot; flag to regexp_replace (\u003ca href=\"https://github.com/ibis-project/ibis/commit/34f39ccb32be76b5e61f87938ed4cfdeb560ce7c\"\u003e34f39cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emssql:\u003c/strong\u003e use \u003ccode\u003esge.National\u003c/code\u003e to support unicode in \u003ccode\u003einformation_schema\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11877\"\u003e#11877\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/a254ccb02f58d4f5b5f582249f5cfa03d141d8eb\"\u003ea254ccb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emysql:\u003c/strong\u003e use getuser() and empty password string by default (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11904\"\u003e#11904\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/ba0218f1bba2cbb9f2bb3a7aea39178365c0f663\"\u003eba0218f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epolars:\u003c/strong\u003e handle cross joins without passing join keys (\u003ca href=\"https://github.com/ibis-project/ibis/commit/d3c3bad21a2b9703047dbf4977d3d250759d189e\"\u003ed3c3bad\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11764\"\u003e#11764\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epolars:\u003c/strong\u003e support asof_join with no predicates (\u003ca href=\"https://github.com/ibis-project/ibis/commit/3fc9b64c2a464f66d5ed412e7cab7a7bbb58b811\"\u003e3fc9b64\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epostgres:\u003c/strong\u003e fix postgres asof joins to consider predicates correctly (\u003ca href=\"https://github.com/ibis-project/ibis/commit/064bd2d024d1165a92615613d977e85d4dad6331\"\u003e064bd2d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremove bogus leading ' from Struct repr (\u003ca href=\"https://github.com/ibis-project/ibis/commit/d7083c2c96e12bb7b2a1e643a52b4725f4303fcb\"\u003ed7083c2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ereturn a tuple, not generator, from Table.bind() (\u003ca href=\"https://github.com/ibis-project/ibis/commit/cfc8b0837e313bd76cf65561472a605ea6e35bef\"\u003ecfc8b08\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003esqlite:\u003c/strong\u003e create a single table from Python object (\u003ca href=\"https://github.com/ibis-project/ibis/commit/4e6ddcfa2d1dc763d431925b059c458cd0ce884a\"\u003e4e6ddcf\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003esqlite:\u003c/strong\u003e precision loss in divide (\u003ca href=\"https://github.com/ibis-project/ibis/commit/c77e1bd041df7e091c0c6c1aa5d2e87c3a99dddc\"\u003ec77e1bd\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/ibis-project/ibis/blob/main/docs/release_notes_generated.qmd\"\u003eibis-framework's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ibis-project/ibis/compare/11.0.0...12.0.0\"\u003e12.0.0\u003c/a\u003e (2026-02-07)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003epyspark:\u003c/strong\u003e PySpark \u0026lt;3.5 is no longer supported\u003c/li\u003e\n\u003cli\u003eofficially drop support for 3.9, bump all dependencies\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatatypes:\u003c/strong\u003e infer decimal precision and scale\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e implement \u003ccode\u003eupsert()\u003c/code\u003e using \u003ccode\u003eMERGE INTO\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11624\"\u003e#11624\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/9126733b38e1c92f6e787f92dc9954e88ab6400d\"\u003e9126733\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/5391\"\u003e#5391\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e support Table.cast(my_col=int) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/9e209f37b6228472071ef8b9168ed56ec9c0a727\"\u003e9e209f3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatabricks:\u003c/strong\u003e support json literals (\u003ca href=\"https://github.com/ibis-project/ibis/commit/f46a58f9eb5128e64981b756b0a866e291663997\"\u003ef46a58f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatafusion:\u003c/strong\u003e add compilation rule for Strftime (\u003ca href=\"https://github.com/ibis-project/ibis/commit/6fa8411e43a68f0f0ac38f493242bc1ff28a5253\"\u003e6fa8411\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e enable compatibility with pandas 3.0.0 (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11873\"\u003e#11873\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/34a36be80e589e449501942bda8ec4125e89beb0\"\u003e34a36be\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ematerialize:\u003c/strong\u003e add new backend for Materialize streaming database (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11893\"\u003e#11893\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/35fcce08369ed7650b00fed7064535eeceeaba41\"\u003e35fcce0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eofficially drop support for 3.9, bump all dependencies (\u003ca href=\"https://github.com/ibis-project/ibis/commit/aa16d0885ff62ac92ec1027a245158896f74cc0d\"\u003eaa16d08\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epyspark:\u003c/strong\u003e support pyspark 4.0 (\u003ca href=\"https://github.com/ibis-project/ibis/commit/e9c35e6a3574855daf4e02f4217727df0d54872d\"\u003ee9c35e6\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003esinglestoredb:\u003c/strong\u003e add SingleStoreDB backend (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11595\"\u003e#11595\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/a83cfef0f6b84f3dbb83ca55682100f32488d7c2\"\u003ea83cfef\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport JSON literal values (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11728\"\u003e#11728\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/38b19c765f02b18684ec6e7b4e0815d117fc8b60\"\u003e38b19c7\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11727\"\u003e#11727\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etyping:\u003c/strong\u003e improve typing of ibis.common.collections (\u003ca href=\"https://github.com/ibis-project/ibis/commit/e3aba92c6126e556e179f2cbff3dc837802de790\"\u003ee3aba92\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etyping:\u003c/strong\u003e make dtype() and schema() more typesafe (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11856\"\u003e#11856\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/116886f807fbf62ce0265ef152f48540c284b8c5\"\u003e116886f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etyping:\u003c/strong\u003e make more arguments positional-only (\u003ca href=\"https://github.com/ibis-project/ibis/commit/610c4504b438b5ac302b384073134ff5c8458908\"\u003e610c450\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etyping:\u003c/strong\u003e make types more precise for many common Values (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11771\"\u003e#11771\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/2eb772a7a8a5632edb347ecd49af5773c268d188\"\u003e2eb772a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd order_by to first and last (\u003ca href=\"https://github.com/ibis-project/ibis/commit/7ead7876435c55a10dc5a6457a49b9e19b7a654e\"\u003e7ead787\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11656\"\u003e#11656\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd upper _method_overrides in decompile (\u003ca href=\"https://github.com/ibis-project/ibis/commit/e7956f4cbb5daef11bbc01177ccc56f5ae3bf3fa\"\u003ee7956f4\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11717\"\u003e#11717\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ebigquery:\u003c/strong\u003e relax decimal upper bounds (\u003ca href=\"https://github.com/ibis-project/ibis/commit/d05751b445d65ae0a1c786c756ea1235d51a7f18\"\u003ed05751b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ebiquery:\u003c/strong\u003e use qualified table name for upserts (\u003ca href=\"https://github.com/ibis-project/ibis/commit/120b2d874d7b191886dcdad69be76c26bbe062ce\"\u003e120b2d8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecitation:\u003c/strong\u003e fix CITATION.cff [skip ci] (\u003ca href=\"https://github.com/ibis-project/ibis/commit/305526a8d6df097765b2affce60b1731f2608a1b\"\u003e305526a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatatypes:\u003c/strong\u003e infer decimal precision and scale (\u003ca href=\"https://github.com/ibis-project/ibis/commit/ed346e6d33157d9cf6e01f91bc67ac8866e09eb3\"\u003eed346e6\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edatatypes:\u003c/strong\u003e make decimal casts more permissive (\u003ca href=\"https://github.com/ibis-project/ibis/commit/ba087d2d3a6c57451bdcf81aaa4fa5cf32350831\"\u003eba087d2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e pin dep on sqlglot to \u0026lt;28 (\u003ca href=\"https://github.com/ibis-project/ibis/commit/3e9156ef0b0b10ce6f3d95db97401175a7d9df56\"\u003e3e9156e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e sqlglot 28.0 incompatibilities (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11839\"\u003e#11839\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/ab21efd939b7cd6b7cf8f03ed7a22ec96d511be0\"\u003eab21efd\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edocs:\u003c/strong\u003e typo in Ibis description in why.qmd (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11816\"\u003e#11816\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/402c37d9920fa09bcc1aa5f9202367b01cc98ef1\"\u003e402c37d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003educkdb:\u003c/strong\u003e create a single table from Python data object (\u003ca href=\"https://github.com/ibis-project/ibis/commit/7f82e5e4aed0a492538016bfa152132ad0bc928f\"\u003e7f82e5e\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11709\"\u003e#11709\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eexasol:\u003c/strong\u003e update Exasol Docker image tag to 2025.1.8 (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11806\"\u003e#11806\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/2414952998f5f078b931e467e5b7f495062308ed\"\u003e2414952\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11703\"\u003e#11703\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eflink:\u003c/strong\u003e don't pass unsupported \u0026quot;position\u0026quot; flag to regexp_replace (\u003ca href=\"https://github.com/ibis-project/ibis/commit/34f39ccb32be76b5e61f87938ed4cfdeb560ce7c\"\u003e34f39cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emssql:\u003c/strong\u003e use \u003ccode\u003esge.National\u003c/code\u003e to support unicode in \u003ccode\u003einformation_schema\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11877\"\u003e#11877\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/a254ccb02f58d4f5b5f582249f5cfa03d141d8eb\"\u003ea254ccb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emysql:\u003c/strong\u003e use getuser() and empty password string by default (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11904\"\u003e#11904\u003c/a\u003e) (\u003ca href=\"https://github.com/ibis-project/ibis/commit/ba0218f1bba2cbb9f2bb3a7aea39178365c0f663\"\u003eba0218f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epolars:\u003c/strong\u003e handle cross joins without passing join keys (\u003ca href=\"https://github.com/ibis-project/ibis/commit/d3c3bad21a2b9703047dbf4977d3d250759d189e\"\u003ed3c3bad\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11764\"\u003e#11764\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epolars:\u003c/strong\u003e support asof_join with no predicates (\u003ca href=\"https://github.com/ibis-project/ibis/commit/3fc9b64c2a464f66d5ed412e7cab7a7bbb58b811\"\u003e3fc9b64\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epostgres:\u003c/strong\u003e fix postgres asof joins to consider predicates correctly (\u003ca href=\"https://github.com/ibis-project/ibis/commit/064bd2d024d1165a92615613d977e85d4dad6331\"\u003e064bd2d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremove bogus leading ' from Struct repr (\u003ca href=\"https://github.com/ibis-project/ibis/commit/d7083c2c96e12bb7b2a1e643a52b4725f4303fcb\"\u003ed7083c2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ereturn a tuple, not generator, from Table.bind() (\u003ca href=\"https://github.com/ibis-project/ibis/commit/cfc8b0837e313bd76cf65561472a605ea6e35bef\"\u003ecfc8b08\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003esqlite:\u003c/strong\u003e create a single table from Python object (\u003ca href=\"https://github.com/ibis-project/ibis/commit/4e6ddcfa2d1dc763d431925b059c458cd0ce884a\"\u003e4e6ddcf\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003esqlite:\u003c/strong\u003e precision loss in divide (\u003ca href=\"https://github.com/ibis-project/ibis/commit/c77e1bd041df7e091c0c6c1aa5d2e87c3a99dddc\"\u003ec77e1bd\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003eBackend == \u0026quot;some non backend object\u0026quot;\u003c/code\u003e (\u003ca href=\"https://github.com/ibis-project/ibis/commit/a5e7c2298d1582261c0963040a687c3987507c62\"\u003ea5e7c22\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/ibis-project/ibis/commit/01e429b210f19f87e0284bd18fb072df6d3baa59\"\u003e\u003ccode\u003e01e429b\u003c/code\u003e\u003c/a\u003e chore(release): 12.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibis-project/ibis/commit/537b346aecbaaad232d08ae9a12d38d211ae0926\"\u003e\u003ccode\u003e537b346\u003c/code\u003e\u003c/a\u003e chore(deps): update ghcr.io/astral-sh/uv docker tag to v0.10.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibis-project/ibis/commit/76c3b63b33f9e6ee2993e2a2875f22ed3e405349\"\u003e\u003ccode\u003e76c3b63\u003c/code\u003e\u003c/a\u003e chore(deps): update astral-sh/setup-uv action to v7.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibis-project/ibis/commit/da202da06c17a525caf767f0f995f65108a8f3f3\"\u003e\u003ccode\u003eda202da\u003c/code\u003e\u003c/a\u003e chore(deps): update apache/druid docker tag to v36\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibis-project/ibis/commit/ba0218f1bba2cbb9f2bb3a7aea39178365c0f663\"\u003e\u003ccode\u003eba0218f\u003c/code\u003e\u003c/a\u003e fix(mysql): use getuser() and empty password string by default (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11904\"\u003e#11904\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibis-project/ibis/commit/a4ef82f82ef103fd233560adce0fbe220481d7ef\"\u003e\u003ccode\u003ea4ef82f\u003c/code\u003e\u003c/a\u003e chore(deps): update aws-actions/configure-aws-credentials action to v6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibis-project/ibis/commit/601cd8f3dc18c7f8a91aa91319b68aaa181a8a16\"\u003e\u003ccode\u003e601cd8f\u003c/code\u003e\u003c/a\u003e chore(deps): update ghcr.io/singlestore-labs/singlestoredb-dev docker tag to ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibis-project/ibis/commit/14c912425af4b318733fdc1460913ccfa4613414\"\u003e\u003ccode\u003e14c9124\u003c/code\u003e\u003c/a\u003e chore(deps): update materialize/materialized docker tag to v26.10.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibis-project/ibis/commit/b746edfb660c2b8155debc135884376742cc6929\"\u003e\u003ccode\u003eb746edf\u003c/code\u003e\u003c/a\u003e chore(deps): update ghcr.io/astral-sh/uv docker tag to v0.9.30\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibis-project/ibis/commit/7da40126f178a29d6211f8cfe29421585cff59fc\"\u003e\u003ccode\u003e7da4012\u003c/code\u003e\u003c/a\u003e chore(deps): upgrade ruff, and fix lint violations (\u003ca href=\"https://redirect.github.com/ibis-project/ibis/issues/11899\"\u003e#11899\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ibis-project/ibis/compare/10.8.0...12.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.49.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.49.0.dev0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.48.0...v2.49.0-dev0\"\u003e2.49.0-dev0\u003c/a\u003e (2026-01-26)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove deprecated rsa dependency (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e98cf69284d3620619a70b54fb0b9533caf11878\"\u003ee98cf69284d3620619a70b54fb0b9533caf11878\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003egoogle-auth 2.48.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.47.0...v2.48.0\"\u003e2.48.0\u003c/a\u003e (2026-01-21)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003ehonor \u003ccode\u003eNO_GCE_CHECK\u003c/code\u003e environment variable (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1610\"\u003e#1610\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/383c9827\"\u003e383c9827\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eadd configurable GCE Metadata Server retries (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1488\"\u003e#1488\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/454b441b\"\u003e454b441b\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eadd cryptography as required dependency (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1929\"\u003e#1929\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/52558ae2\"\u003e52558ae2\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eSupport the mTLS IAM domain for Certificate based Access (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1938\"\u003e#1938\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/8dcf91a1\"\u003e8dcf91a1\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eresolve circular imports (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1942\"\u003e#1942\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25c1b064\"\u003e25c1b064\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUse \u003ccode\u003euser_verification=preferred\u003c/code\u003e for ReAuth WebAuthn challenge (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1798\"\u003e#1798\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3f88a240\"\u003e3f88a240\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eremoves \u003ccode\u003econtent-header\u003c/code\u003e from AWS IMDS get request (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1934\"\u003e#1934\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97bfea9e\"\u003e97bfea9e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edetect correct auth when ADC env var is set but empty (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1374\"\u003e#1374\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/bfc07e10\"\u003ebfc07e10\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ereplace deprecated utcfromtimestamp (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1799\"\u003e#1799\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e431f20c\"\u003ee431f20c\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.48.0rc0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.47.0...v2.48.0rc0\"\u003e2.48.0rc0\u003c/a\u003e (2026-01-20)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ehonor NO_GCE_CHECK environment variable (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1610\"\u003e#1610\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/383c9827536d9376e8248370ce4c2b83e468d027\"\u003e383c98\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd configurable GCE Metadata Server retries (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1488\"\u003e#1488\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/454b441b478ec62bbf1a6ad5bceb6c7cbbfd0c37\"\u003e454b44\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport mTLS IAM domain for Certificate based Access (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1938\"\u003e#1938\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/8dcf91a1b05c85fbbd0bcee78d66e498099102ab\"\u003e8dcf91\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd cryptography as required dependency (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1929\"\u003e#1929\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/52558ae2881b1e6555f6f5c0d76365c15807ead9\"\u003e52558a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse user_verification=preferred for ReAuth WebAuthn challenge (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1798\"\u003e#1798\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3f88a24089c4ee6822d510de0db210b54260d873\"\u003e3f88a2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ereplace deprecated utcfromtimestamp (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1799\"\u003e#1799\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e431f20cf73ccac71926a23ec454468cea92e053\"\u003ee431f2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003edetect correct auth when ADC env var is set by empty (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1374\"\u003e#1374\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/bfc07e1050bd0aa86fa3b08cdf70c9b68b5fe6a2\"\u003ebfc07e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremoved content-header from AWS IMDS (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1934\"\u003e#1934\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97bfea9e02ede953fc8ee154e0deed3a3cfc6dcc\"\u003e97bfea\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003e\u003ca href=\"https://pypi.org/project/google-auth/#history\"\u003ePyPI History\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.47.0...v2.48.0\"\u003e2.48.0\u003c/a\u003e (2026-01-22)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd cryptography as required dependency (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1929\"\u003e#1929\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/52558ae2881b1e6555f6f5c0d76365c15807ead9\"\u003e52558ae2881b1e6555f6f5c0d76365c15807ead9\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport the mTLS IAM domain for Certificate based Access (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1938\"\u003e#1938\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/8dcf91a1b05c85fbbd0bcee78d66e498099102ab\"\u003e8dcf91a1b05c85fbbd0bcee78d66e498099102ab\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd configurable GCE Metadata Server retries (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1488\"\u003e#1488\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/454b441b478ec62bbf1a6ad5bceb6c7cbbfd0c37\"\u003e454b441b478ec62bbf1a6ad5bceb6c7cbbfd0c37\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ehonor \u003ccode\u003eNO_GCE_CHECK\u003c/code\u003e environment variable (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1610\"\u003e#1610\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/383c9827536d9376e8248370ce4c2b83e468d027\"\u003e383c9827536d9376e8248370ce4c2b83e468d027\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eresolve circular imports (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1942\"\u003e#1942\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25c1b064545702cbef087cfcd15fbbb6ef1af74f\"\u003e25c1b064545702cbef087cfcd15fbbb6ef1af74f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremoves \u003ccode\u003econtent-header\u003c/code\u003e from AWS IMDS get request (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1934\"\u003e#1934\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97bfea9e02ede953fc8ee154e0deed3a3cfc6dcc\"\u003e97bfea9e02ede953fc8ee154e0deed3a3cfc6dcc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003edetect correct auth when ADC env var is set but empty (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1374\"\u003e#1374\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/bfc07e1050bd0aa86fa3b08cdf70c9b68b5fe6a2\"\u003ebfc07e1050bd0aa86fa3b08cdf70c9b68b5fe6a2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ereplace deprecated utcfromtimestamp (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1799\"\u003e#1799\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e431f20cf73ccac71926a23ec454468cea92e053\"\u003ee431f20cf73ccac71926a23ec454468cea92e053\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003euser_verification=preferred\u003c/code\u003e for ReAuth WebAuthn challenge (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1798\"\u003e#1798\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3f88a24089c4ee6822d510de0db210b54260d873\"\u003e3f88a24089c4ee6822d510de0db210b54260d873\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.46.0...v2.47.0\"\u003e2.47.0\u003c/a\u003e (2026-01-06)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edrop \u003ccode\u003ecachetools\u003c/code\u003e dependency in favor of simple local implementation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1590\"\u003e#1590\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/5c07e1c4f52bc77a1b16fa3b7b3c5269c242f6f4\"\u003e5c07e1c4f52bc77a1b16fa3b7b3c5269c242f6f4\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1918\"\u003e#1918\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/60dc20014a35ec4ba71e8065b9a33ecbdbeca97a\"\u003e60dc20014a35ec4ba71e8065b9a33ecbdbeca97a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.45.0...v2.46.0\"\u003e2.46.0\u003c/a\u003e (2026-01-05)\u003c/h2\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate urllib3 docstrings for v2 compatibility (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1903\"\u003e#1903\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3f1aeea2d1014ea1d244a4c3470e52d74d55404b\"\u003e3f1aeea2d1014ea1d244a4c3470e52d74d55404b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRecognize workload certificate config in has_default_client_cert_source for mTLS for Agentic Identities (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1907\"\u003e#1907\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0b9107d573123e358c347ffa067637f992af61b4\"\u003e0b9107d573123e358c347ffa067637f992af61b4\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\u003eSee full diff in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.2.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.2.2\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Python 3.14, including the free-threaded (3.14t) build. (#)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ccode\u003edotenv run\u003c/code\u003e command now forwards flags directly to the specified command by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/607\"\u003etheskumar/python-dotenv#607\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImproved documentation clarity regarding override behavior and the reference page.\u003c/li\u003e\n\u003cli\u003eUpdated PyPy support to version 3.11.\u003c/li\u003e\n\u003cli\u003eDocumentation for FIFO file support.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.9.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImproved \u003ccode\u003eset_key\u003c/code\u003e and \u003ccode\u003eunset_key\u003c/code\u003e behavior when interacting with symlinks by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://github.com/theskumar/python-dotenv/commit/790c5c02991100aa1bf41ee5330aca75edc51311\"\u003e#790c5\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCorrected the license specifier and added missing Python 3.14 classifiers in package metadata by \u003ca href=\"https://github.com/JYOuyang\"\u003e\u003ccode\u003e@​JYOuyang\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/590\"\u003etheskumar/python-dotenv#590\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003edotenv.set_key\u003c/code\u003e and \u003ccode\u003edotenv.unset_key\u003c/code\u003e used to follow symlinks in some\nsituations. This is no longer the case. For that behavior to be restored in\nall cases, \u003ccode\u003efollow_symlinks=True\u003c/code\u003e should be used.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eIn the CLI, \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003eunset\u003c/code\u003e used to follow symlinks in some situations. This\nis no longer the case.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003edotenv.set_key\u003c/code\u003e, \u003ccode\u003edotenv.unset_key\u003c/code\u003e and the CLI commands \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003eunset\u003c/code\u003e\nused to reset the file mode of the modified .env file to \u003ccode\u003e0o600\u003c/code\u003e in some\nsituations. This is no longer the case: The original mode of the file is now\npreserved. Is the file needed to be created or wasn't a regular file, mode\n\u003ccode\u003e0o600\u003c/code\u003e is used.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eskip 000 permission tests for root user by \u003ca href=\"https://github.com/burnout-projects\"\u003e\u003ccode\u003e@​burnout-projects\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/561\"\u003etheskumar/python-dotenv#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump actions/checkout 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/theskumar/python-dotenv/pull/593\"\u003etheskumar/python-dotenv#593\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Windows testing to CI by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/604\"\u003etheskumar/python-dotenv#604\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove workflow efficiency with best practices by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/609\"\u003etheskumar/python-dotenv#609\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove the use of \u003ccode\u003esh\u003c/code\u003e in tests by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/612\"\u003etheskumar/python-dotenv#612\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/JYOuyang\"\u003e\u003ccode\u003e@​JYOuyang\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/590\"\u003etheskumar/python-dotenv#590\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/burnout-projects\"\u003e\u003ccode\u003e@​burnout-projects\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/561\"\u003etheskumar/python-dotenv#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cpackham-atlnz\"\u003e\u003ccode\u003e@​cpackham-atlnz\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/597\"\u003etheskumar/python-dotenv#597\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.2.1...v1.2.2\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.2.1...v1.2.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.2.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.2.2] - 2026-03-01\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Python 3.14, including the free-threaded (3.14t) build. (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/588\"\u003e#588\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ccode\u003edotenv run\u003c/code\u003e command now forwards flags directly to the specified command by [\u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/607\"\u003e#607\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImproved documentation clarity regarding override behavior and the reference page.\u003c/li\u003e\n\u003cli\u003eUpdated PyPy support to version 3.11.\u003c/li\u003e\n\u003cli\u003eDocumentation for FIFO file support.\u003c/li\u003e\n\u003cli\u003eDropped Support for Python 3.9.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImproved \u003ccode\u003eset_key\u003c/code\u003e and \u003ccode\u003eunset_key\u003c/code\u003e behavior when interacting with symlinks by [\u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e] in [790c5c0]\u003c/li\u003e\n\u003cli\u003eCorrected the license specifier and added missing Python 3.14 classifiers in package metadata by [\u003ca href=\"https://github.com/JYOuyang\"\u003e\u003ccode\u003e@​JYOuyang\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/590\"\u003e#590\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003edotenv.set_key\u003c/code\u003e and \u003ccode\u003edotenv.unset_key\u003c/code\u003e used to follow symlinks in some\nsituations. This is no longer the case. For that behavior to be restored in\nall cases, \u003ccode\u003efollow_symlinks=True\u003c/code\u003e should be used.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eIn the CLI, \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003eunset\u003c/code\u003e used to follow symlinks in some situations. This\nis no longer the case.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003edotenv.set_key\u003c/code\u003e, \u003ccode\u003edotenv.unset_key\u003c/code\u003e and the CLI commands \u003ccode\u003eset\u003c/code\u003e and \u003ccode\u003eunset\u003c/code\u003e\nused to reset the file mode of the modified .env file to \u003ccode\u003e0o600\u003c/code\u003e in some\nsituations. This is no longer the case: The original mode of the file is now\npreserved. Is the file needed to be created or wasn't a regular file, mode\n\u003ccode\u003e0o600\u003c/code\u003e is used.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.2.1] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMove more config to \u003ccode\u003epyproject.toml\u003c/code\u003e, removed \u003ccode\u003esetup.cfg\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for reading \u003ccode\u003e.env\u003c/code\u003e from FIFOs (Unix) by [\u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.2.0] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade build system to use PEP 517 \u0026amp; PEP 518 to use \u003ccode\u003ebuild\u003c/code\u003e and \u003ccode\u003epyproject.toml\u003c/code\u003e by [\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/583\"\u003e#583\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14 by [\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/579\"\u003e#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for disabling of \u003ccode\u003eload_dotenv()\u003c/code\u003e using \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e env var. by [\u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/569\"\u003e#569\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/563\"\u003e#563\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/theskumar/python-dotenv/commit/36004e0e34be7665ff2b11a8a4005144f76f176d\"\u003e\u003ccode\u003e36004e0\u003c/code\u003e\u003c/a\u003e Bump version: 1.2.1 → 1.2.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/eb202520e5933c9daf42501e1e42fdb0144002c8\"\u003e\u003ccode\u003eeb20252\u003c/code\u003e\u003c/a\u003e docs: update changelog for v1.2.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/790c5c02991100aa1bf41ee5330aca75edc51311\"\u003e\u003ccode\u003e790c5c0\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/43340da220fb4ca4f95357bbe21a3c7f8f1278b1\"\u003e\u003ccode\u003e43340da\u003c/code\u003e\u003c/a\u003e Remove the use of \u003ccode\u003esh\u003c/code\u003e in tests (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/612\"\u003e#612\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/09d7cee32459e7abdcb5c9d8122a552589c06a9c\"\u003e\u003ccode\u003e09d7cee\u003c/code\u003e\u003c/a\u003e docs: clarify override behavior and document FIFO support (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/610\"\u003e#610\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/c8de2887c00198c22842c5ae5e92d1747467363c\"\u003e\u003ccode\u003ec8de288\u003c/code\u003e\u003c/a\u003e ci: improve workflow efficiency with best practices (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/609\"\u003e#609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/7bd9e3dbfedc0983ad7d56d5570013035242bdf4\"\u003e\u003ccode\u003e7bd9e3d\u003c/code\u003e\u003c/a\u003e Add Windows testing to CI (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/604\"\u003e#604\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/1baaf04f336072e0ee324d5df9563ec767f14f81\"\u003e\u003ccode\u003e1baaf04\u003c/code\u003e\u003c/a\u003e Drop Python 3.9 support and update to PyPy 3.11 (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/608\"\u003e#608\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/4a22cf8993804aeede0c20b75bb1a29d3a99e9dc\"\u003e\u003ccode\u003e4a22cf8\u003c/code\u003e\u003c/a\u003e ci: enable testing on Python 3.14t (free-threaded) (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/588\"\u003e#588\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/e2e8e776b42e382ae38b44d3982dd649e7507dd4\"\u003e\u003ccode\u003ee2e8e77\u003c/code\u003e\u003c/a\u003e Fix license specifier (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/597\"\u003e#597\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.2.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `orjson` from 3.11.7 to 3.11.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ijl/orjson/releases\"\u003eorjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.8\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild and compatibility improvements.\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/ijl/orjson/blob/master/CHANGELOG.md\"\u003eorjson's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.8 - 2026-03-31\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild and compatibility improvements.\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/ijl/orjson/commit/5cbb3d0398a2f42de51210270286fecd798c5d78\"\u003e\u003ccode\u003e5cbb3d0\u003c/code\u003e\u003c/a\u003e 3.11.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/4195d7f263e33076295b75efdcbaf6a55af8674e\"\u003e\u003ccode\u003e4195d7f\u003c/code\u003e\u003c/a\u003e writer::half\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/d00641b69410728a735f0855eb1c2843b0a5819b\"\u003e\u003ccode\u003ed00641b\u003c/code\u003e\u003c/a\u003e writer::uuid\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/c84d9b4ba4853781af943fa5c493e261e2f82b84\"\u003e\u003ccode\u003ec84d9b4\u003c/code\u003e\u003c/a\u003e build and compatibility misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/4547234b681fac5e0e0734cf44c21e75f9654e43\"\u003e\u003ccode\u003e4547234\u003c/code\u003e\u003c/a\u003e ffi::numpy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/0d4a5ad1f17a72528ba027554466fdec6580cdeb\"\u003e\u003ccode\u003e0d4a5ad\u003c/code\u003e\u003c/a\u003e datetime PyRef idiom\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/e93a13d372ec956d027e71d023eb534b8445ac85\"\u003e\u003ccode\u003ee93a13d\u003c/code\u003e\u003c/a\u003e Cross-compile avoids maturin v1.12 build-details.json error\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/ijl/orjson/compare/3.11.7...3.11.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` from 2.2.3 to 2.3.3\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.3\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.3.\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.3.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.3 supports Python 3.9 and higher, and is the first release to support Python 3.14.\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.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.o...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1590","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1590","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1590/packages"}},{"old_version":"47.0.0","new_version":"51.0.0","update_type":"major","path":null,"pr_created_at":"2026-02-12T03:20:10.000Z","version_change":"47.0.0 → 51.0.0","issue":{"uuid":"3929655000","node_id":"PR_kwDOHTdvBs7DKmC2","number":1422,"state":"closed","title":"deps(ibis): bump the all group across 1 directory with 31 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-03-10T09:37:43.000Z","author_association":null,"state_reason":null,"created_at":"2026-02-12T03:20:10.000Z","updated_at":"2026-03-10T09:37:45.000Z","time_to_close":2269053,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":31,"packages":[{"name":"fastapi","old_version":"0.120.1","new_version":"0.128.8","repository_url":"https://github.com/fastapi/fastapi"},{"name":"pydantic","old_version":"2.10.6","new_version":"2.12.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.48.0","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.2.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.18.1","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"anyio","old_version":"4.10.0","new_version":"4.12.1","repository_url":"https://github.com/agronholm/anyio"},{"name":"duckdb","old_version":"1.3.2","new_version":"1.4.4","repository_url":"https://github.com/duckdb/duckdb-python"},{"name":"oracledb","old_version":"3.3.0","new_version":"3.4.2","repository_url":"https://github.com/oracle/python-oracledb"},{"name":"mysqlclient","old_version":"2.2.7","new_version":"2.2.8","repository_url":"https://github.com/PyMySQL/mysqlclient"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.40.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"gunicorn","old_version":"23.0.0","new_version":"25.0.3","repository_url":"https://github.com/benoitc/gunicorn"},{"name":"uvicorn-worker","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/Kludex/uvicorn-worker"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.11","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"51.0.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"starlette","old_version":"0.49.3","new_version":"0.52.1","repository_url":"https://github.com/Kludex/starlette"},{"name":"databricks-sql-connector","old_version":"4.2.3","new_version":"4.2.5","repository_url":"https://github.com/databricks/databricks-sql-python"},{"name":"databricks-sdk","old_version":"0.73.0","new_version":"0.87.0","repository_url":"https://github.com/databricks/databricks-sdk-py"},{"name":"pyspark","old_version":"3.5.7","new_version":"4.1.1","repository_url":"https://github.com/apache/spark"},{"name":"jupyterlab","old_version":"4.5.1","new_version":"4.5.4","repository_url":"https://github.com/jupyterlab/jupyterlab"},{"name":"ipykernel","old_version":"7.1.0","new_version":"7.2.0","repository_url":"https://github.com/ipython/ipykernel"},{"name":"plotly","old_version":"6.5.0","new_version":"6.5.2","repository_url":"https://github.com/plotly/plotly.py"},{"name":"pytest","old_version":"8.3.5","new_version":"9.0.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.14.1","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.46","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.5.1","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.15.0","repository_url":"https://github.com/astral-sh/ruff"},{"name":"trino","old_version":"0.335.0","new_version":"0.336.0","repository_url":"https://github.com/trinodb/trino-python-client"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.11.0","repository_url":"https://github.com/ClickHouse/clickhouse-connect"},{"name":"polars","old_version":"1.36.1","new_version":"1.38.1","repository_url":"https://github.com/pola-rs/polars"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 31 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.120.1` | `0.128.8` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.12.5` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.48.0` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.2.1` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.3` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.18.1` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.10.0` | `4.12.1` |\n| [duckdb](https://github.com/duckdb/duckdb-python) | `1.3.2` | `1.4.4` |\n| [oracledb](https://github.com/oracle/python-oracledb) | `3.3.0` | `3.4.2` |\n| [mysqlclient](https://github.com/PyMySQL/mysqlclient) | `2.2.7` | `2.2.8` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.40.0` |\n| [gunicorn](https://github.com/benoitc/gunicorn) | `23.0.0` | `25.0.3` |\n| [uvicorn-worker](https://github.com/Kludex/uvicorn-worker) | `0.3.0` | `0.4.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.11` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `51.0.0` |\n| [starlette](https://github.com/Kludex/starlette) | `0.49.3` | `0.52.1` |\n| [databricks-sql-connector](https://github.com/databricks/databricks-sql-python) | `4.2.3` | `4.2.5` |\n| [databricks-sdk](https://github.com/databricks/databricks-sdk-py) | `0.73.0` | `0.87.0` |\n| [pyspark](https://github.com/apache/spark) | `3.5.7` | `4.1.1` |\n| [jupyterlab](https://github.com/jupyterlab/jupyterlab) | `4.5.1` | `4.5.4` |\n| [ipykernel](https://github.com/ipython/ipykernel) | `7.1.0` | `7.2.0` |\n| [plotly](https://github.com/plotly/plotly.py) | `6.5.0` | `6.5.2` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `9.0.2` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.14.1` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.46` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.5.1` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.15.0` |\n| [trino](https://github.com/trinodb/trino-python-client) | `0.335.0` | `0.336.0` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.11.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.36.1` | `1.38.1` |\n\n\nUpdates `fastapi` from 0.120.1 to 0.128.8\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's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.128.8\u003c/h2\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Fix grammar in \u003ccode\u003edocs/en/docs/tutorial/first-steps.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14708\"\u003e#14708\u003c/a\u003e by \u003ca href=\"https://github.com/SanjanaS10\"\u003e\u003ccode\u003e@​SanjanaS10\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🔨 Tweak PDM hook script. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14895\"\u003e#14895\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e♻️ Update build setup for \u003ccode\u003efastapi-slim\u003c/code\u003e, deprecate it, and make it only depend on \u003ccode\u003efastapi\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14894\"\u003e#14894\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.128.7\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Show a clear error on attempt to include router into itself. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14258\"\u003e#14258\u003c/a\u003e by \u003ca href=\"https://github.com/JavierSanchezCastro\"\u003e\u003ccode\u003e@​JavierSanchezCastro\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✨ Replace \u003ccode\u003edict\u003c/code\u003e by \u003ccode\u003eMapping\u003c/code\u003e on \u003ccode\u003eHTTPException.headers\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/12997\"\u003e#12997\u003c/a\u003e by \u003ca href=\"https://github.com/rijenkii\"\u003e\u003ccode\u003e@​rijenkii\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRefactors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e♻️ Simplify reading files in memory, do it sequentially instead of (fake) parallel. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14884\"\u003e#14884\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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📝 Use \u003ccode\u003edfn\u003c/code\u003e tag for definitions instead of \u003ccode\u003eabbr\u003c/code\u003e in docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14744\"\u003e#14744\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\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✅ Tweak comment in test to reference PR. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14885\"\u003e#14885\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔧 Update LLM-prompt for \u003ccode\u003eabbr\u003c/code\u003e and \u003ccode\u003edfn\u003c/code\u003e tags. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14747\"\u003e#14747\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Test order for the submitted byte Files. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14828\"\u003e#14828\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🔧 Configure \u003ccode\u003etest\u003c/code\u003e workflow to run tests with \u003ccode\u003einline-snapshot=review\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14876\"\u003e#14876\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.128.6\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eon_startup\u003c/code\u003e and \u003ccode\u003eon_shutdown\u003c/code\u003e parameters of \u003ccode\u003eAPIRouter\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14873\"\u003e#14873\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\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🌐 Update translations for zh (update-outdated). PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14843\"\u003e#14843\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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✅ Fix parameterized tests with snapshots. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14875\"\u003e#14875\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.128.5\u003c/h2\u003e\n\u003ch3\u003eRefactors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e♻️ Refactor and simplify Pydantic v2 (and v1) compatibility internal utils. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14862\"\u003e#14862\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\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/fastapi/fastapi/commit/bdd20051c42d08762b2cdcc6571e4356014de572\"\u003e\u003ccode\u003ebdd2005\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.128.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/1ed9bd49230b192bb531f4195d3d6a309261a777\"\u003e\u003ccode\u003e1ed9bd4\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/aac30fd7071d79798130137728aeb363c8c5f695\"\u003e\u003ccode\u003eaac30fd\u003c/code\u003e\u003c/a\u003e 🔨 Tweak PDM hook script (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14895\"\u003e#14895\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/417f1ee07825c6f4e983629bee6039857197112f\"\u003e\u003ccode\u003e417f1ee\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/ffb8965260c71657f26644673f218b99b1315cc7\"\u003e\u003ccode\u003effb8965\u003c/code\u003e\u003c/a\u003e ♻️ Update build setup for \u003ccode\u003efastapi-slim\u003c/code\u003e, deprecate it, and make it only depe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/93fa935fb8ac1c40488da7bf9b134466588ffaee\"\u003e\u003ccode\u003e93fa935\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/f0f3e7a113b7771388aef6d4a4cb863ce3890d9c\"\u003e\u003ccode\u003ef0f3e7a\u003c/code\u003e\u003c/a\u003e 📝 Fix grammar in \u003ccode\u003edocs/en/docs/tutorial/first-steps.md\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14708\"\u003e#14708\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8f82c94de0ff641a239db59e58dfdc6010a4b26a\"\u003e\u003ccode\u003e8f82c94\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.128.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/5bb3423205daf98f88f14d696d104fea2221028a\"\u003e\u003ccode\u003e5bb3423\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/6ce5e3e961876c39d8a60a3a2cb4147a6748d116\"\u003e\u003ccode\u003e6ce5e3e\u003c/code\u003e\u003c/a\u003e ✅ Tweak comment in test to reference PR (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14885\"\u003e#14885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.120.1...0.128.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.10.6 to 2.12.5\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.5 2025-11-26\u003c/h2\u003e\n\u003ch2\u003ev2.12.5 (2025-11-26)\u003c/h2\u003e\n\u003cp\u003eThis is the fifth 2.12 patch release, addressing an issue with the \u003ccode\u003eMISSING\u003c/code\u003e sentinel and providing several documentation improvements.\u003c/p\u003e\n\u003cp\u003eThe next 2.13 minor release will be published in a couple weeks, and will include a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature addressing\nthe remaining unexpected changes to the \u003cem\u003eserialize as any\u003c/em\u003e behavior.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix pickle error when using \u003ccode\u003emodel_construct()\u003c/code\u003e on a model with \u003ccode\u003eMISSING\u003c/code\u003e as a default value by \u003ca href=\"https://github.com/ornariece\"\u003e\u003ccode\u003e@​ornariece\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12522\"\u003e#12522\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eSeveral updates to the documentation by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\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.12.4...v2.12.5\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.4...v2.12.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.4 2025-11-05\u003c/h2\u003e\n\u003ch2\u003ev2.12.4 (2025-11-05)\u003c/h2\u003e\n\u003cp\u003eThis is the fourth 2.12 patch release, fixing more regressions, and reverting a change in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis patch release also fixes an issue with the serialization of IP address types, when \u003ccode\u003eserialize_as_any\u003c/code\u003e is used. The next patch release\nwill try to address the remaining issues with \u003cem\u003eserialize as any\u003c/em\u003e behavior by introducing a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature, that\nshould be used in most cases in place of \u003cem\u003eserialize as any\u003c/em\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with forward references in parent \u003ccode\u003eTypedDict\u003c/code\u003e classes 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/12427\"\u003e#12427\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis issue is only relevant on Python 3.14 and greater.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExclude fields with \u003ccode\u003eexclude_if\u003c/code\u003e from JSON Schema required fields 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/12430\"\u003e#12430\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRevert URL percent-encoding of credentials in the \u003ccode\u003ebuild()\u003c/code\u003e method of the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1833\"\u003epydantic-core#1833\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis was initially considered as a bugfix, but caused regressions and as such was fully reverted. The next release will include\nan opt-in option to percent-encode components of the URL.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd type inference for IP address types by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1868\"\u003epydantic-core#1868\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe 2.12 changes to the \u003ccode\u003eserialize_as_any\u003c/code\u003e behavior made it so that IP address types could not properly serialize to JSON.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid getting default values from defaultdict by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1853\"\u003epydantic-core#1853\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis fixes a subtle regression in the validation behavior of the \u003ca href=\"https://docs.python.org/3/library/collections.html#collections.defaultdict\"\u003e\u003ccode\u003ecollections.defaultdict\u003c/code\u003e\u003c/a\u003e\ntype.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with field serializers on nested typed dictionaries by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1879\"\u003epydantic-core#1879\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd more \u003ccode\u003epydantic-core\u003c/code\u003e builds for the three-threaded version of Python 3.14 by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1864\"\u003epydantic-core#1864\u003c/a\u003e.\u003c/p\u003e\n\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.12.3...v2.12.4\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.3...v2.12.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.3 2025-10-17\u003c/h2\u003e\n\u003ch2\u003ev2.12.3 (2025-10-17)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eThis is the third 2.13 patch release, fixing issues related to the \u003ccode\u003eFieldInfo\u003c/code\u003e class, and reverting a change to the supported \u003ca href=\"https://docs.pydantic.dev/latest/concepts/validators/#model-validators\"\u003e\u003cem\u003eafter\u003c/em\u003e model validator\u003c/a\u003e function signatures.\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\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.5 (2025-11-26)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis is the fifth 2.12 patch release, addressing an issue with the \u003ccode\u003eMISSING\u003c/code\u003e sentinel and providing several documentation improvements.\u003c/p\u003e\n\u003cp\u003eThe next 2.13 minor release will be published in a couple weeks, and will include a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature addressing\nthe remaining unexpected changes to the \u003cem\u003eserialize as any\u003c/em\u003e behavior.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix pickle error when using \u003ccode\u003emodel_construct()\u003c/code\u003e on a model with \u003ccode\u003eMISSING\u003c/code\u003e as a default value by \u003ca href=\"https://github.com/ornariece\"\u003e\u003ccode\u003e@​ornariece\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12522\"\u003e#12522\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eSeveral updates to the documentation by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.12.4 (2025-11-05)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.4\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis is the fourth 2.12 patch release, fixing more regressions, and reverting a change in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis patch release also fixes an issue with the serialization of IP address types, when \u003ccode\u003eserialize_as_any\u003c/code\u003e is used. The next patch release\nwill try to address the remaining issues with \u003cem\u003eserialize as any\u003c/em\u003e behavior by introducing a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature, that\nshould be used in most cases in place of \u003cem\u003eserialize as any\u003c/em\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with forward references in parent \u003ccode\u003eTypedDict\u003c/code\u003e classes 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/12427\"\u003e#12427\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis issue is only relevant on Python 3.14 and greater.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExclude fields with \u003ccode\u003eexclude_if\u003c/code\u003e from JSON Schema required fields 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/12430\"\u003e#12430\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRevert URL percent-encoding of credentials in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in\n\u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1833\"\u003epydantic-core#1833\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis was initially considered as a bugfix, but caused regressions and as such was fully reverted. The next release will include\nan opt-in option to percent-encode components of the URL.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd type inference for IP address types by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1868\"\u003epydantic-core#1868\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe 2.12 changes to the \u003ccode\u003eserialize_as_any\u003c/code\u003e behavior made it so that IP address types could not properly serialize to JSON.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid getting default values from defaultdict by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1853\"\u003epydantic-core#1853\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis fixes a subtle regression in the validation behavior of the \u003ca href=\"https://docs.python.org/3/library/collections.html#collections.defaultdict\"\u003e\u003ccode\u003ecollections.defaultdict\u003c/code\u003e\u003c/a\u003e\ntype.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with field serializers on nested typed dictionaries by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1879\"\u003epydantic-core#1879\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd more \u003ccode\u003epydantic-core\u003c/code\u003e builds for the three-threaded version of Python 3.14 by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1864\"\u003epydantic-core#1864\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.12.3 (2025-10-17)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.3\"\u003eGitHub release\u003c/a\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/pydantic/pydantic/commit/bd2d0dd0137dfa1a8fdff2529b9dfb1547980150\"\u003e\u003ccode\u003ebd2d0dd\u003c/code\u003e\u003c/a\u003e Prepare release v2.12.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/7d0302ec7ec2cf115de3450a615522875bdd8b56\"\u003e\u003ccode\u003e7d0302e\u003c/code\u003e\u003c/a\u003e Document security implications when using \u003ccode\u003ecreate_model()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/e9ef980def726b6f59b6c495ddc9dc259a0228db\"\u003e\u003ccode\u003ee9ef980\u003c/code\u003e\u003c/a\u003e Fix typo in Standard Library Types documentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/f2c20c00c265a31a13c48f9bae923a87c829952e\"\u003e\u003ccode\u003ef2c20c0\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003epydantic-docs\u003c/code\u003e dev dependency, make use of versioning blocks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a76c1aa26f2d64a3fd080ac515d80832689197e8\"\u003e\u003ccode\u003ea76c1aa\u003c/code\u003e\u003c/a\u003e Update documentation about JSON Schema\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/8cbc72ca489891e574fba45238ee8bd4f8e719a2\"\u003e\u003ccode\u003e8cbc72c\u003c/code\u003e\u003c/a\u003e Add documentation about custom \u003ccode\u003e__init__()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/99eba599069da137b3f708ffa74627f2b456ba73\"\u003e\u003ccode\u003e99eba59\u003c/code\u003e\u003c/a\u003e Add additional test for \u003ccode\u003eFieldInfo.get_default()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c71076988e507ea93844c77c3bf0bbb85a5716af\"\u003e\u003ccode\u003ec710769\u003c/code\u003e\u003c/a\u003e Special case \u003ccode\u003eMISSING\u003c/code\u003e sentinel in \u003ccode\u003esmart_deepcopy()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/20a9d771c210fd77d52366ac923258c4c199727f\"\u003e\u003ccode\u003e20a9d77\u003c/code\u003e\u003c/a\u003e Do not delete mock validator/serializer in \u003ccode\u003erebuild_dataclass()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c86515a3a8f2120148fab2eaedd3bc45925779d0\"\u003e\u003ccode\u003ec86515a\u003c/code\u003e\u003c/a\u003e Update parts of the model and \u003ccode\u003erevalidate_instances\u003c/code\u003e documentation\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.12.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.48.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003egoogle-auth 2.48.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.47.0...v2.48.0\"\u003e2.48.0\u003c/a\u003e (2026-01-21)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003ehonor \u003ccode\u003eNO_GCE_CHECK\u003c/code\u003e environment variable (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1610\"\u003e#1610\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/383c9827\"\u003e383c9827\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eadd configurable GCE Metadata Server retries (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1488\"\u003e#1488\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/454b441b\"\u003e454b441b\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eadd cryptography as required dependency (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1929\"\u003e#1929\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/52558ae2\"\u003e52558ae2\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eSupport the mTLS IAM domain for Certificate based Access (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1938\"\u003e#1938\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/8dcf91a1\"\u003e8dcf91a1\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eresolve circular imports (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1942\"\u003e#1942\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25c1b064\"\u003e25c1b064\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUse \u003ccode\u003euser_verification=preferred\u003c/code\u003e for ReAuth WebAuthn challenge (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1798\"\u003e#1798\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3f88a240\"\u003e3f88a240\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eremoves \u003ccode\u003econtent-header\u003c/code\u003e from AWS IMDS get request (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1934\"\u003e#1934\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97bfea9e\"\u003e97bfea9e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edetect correct auth when ADC env var is set but empty (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1374\"\u003e#1374\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/bfc07e10\"\u003ebfc07e10\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ereplace deprecated utcfromtimestamp (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1799\"\u003e#1799\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e431f20c\"\u003ee431f20c\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.48.0rc0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.47.0...v2.48.0rc0\"\u003e2.48.0rc0\u003c/a\u003e (2026-01-20)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ehonor NO_GCE_CHECK environment variable (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1610\"\u003e#1610\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/383c9827536d9376e8248370ce4c2b83e468d027\"\u003e383c98\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd configurable GCE Metadata Server retries (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1488\"\u003e#1488\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/454b441b478ec62bbf1a6ad5bceb6c7cbbfd0c37\"\u003e454b44\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport mTLS IAM domain for Certificate based Access (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1938\"\u003e#1938\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/8dcf91a1b05c85fbbd0bcee78d66e498099102ab\"\u003e8dcf91\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd cryptography as required dependency (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1929\"\u003e#1929\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/52558ae2881b1e6555f6f5c0d76365c15807ead9\"\u003e52558a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse user_verification=preferred for ReAuth WebAuthn challenge (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1798\"\u003e#1798\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3f88a24089c4ee6822d510de0db210b54260d873\"\u003e3f88a2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ereplace deprecated utcfromtimestamp (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1799\"\u003e#1799\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e431f20cf73ccac71926a23ec454468cea92e053\"\u003ee431f2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003edetect correct auth when ADC env var is set by empty (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1374\"\u003e#1374\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/bfc07e1050bd0aa86fa3b08cdf70c9b68b5fe6a2\"\u003ebfc07e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremoved content-header from AWS IMDS (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1934\"\u003e#1934\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97bfea9e02ede953fc8ee154e0deed3a3cfc6dcc\"\u003e97bfea\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eresolve circular imports (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1942\"\u003e#1942\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25c1b064545702cbef087cfcd15fbbb6ef1af74f\"\u003e25c1b0\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003egoogle-auth 2.47.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.46.0...v2.47.0\"\u003e2.47.0\u003c/a\u003e (2026-01-06)\u003c/h2\u003e\n\u003ch3\u003eFeatures\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.47.0...v2.48.0\"\u003e2.48.0\u003c/a\u003e (2026-01-22)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd cryptography as required dependency (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1929\"\u003e#1929\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/52558ae2881b1e6555f6f5c0d76365c15807ead9\"\u003e52558ae2881b1e6555f6f5c0d76365c15807ead9\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport the mTLS IAM domain for Certificate based Access (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1938\"\u003e#1938\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/8dcf91a1b05c85fbbd0bcee78d66e498099102ab\"\u003e8dcf91a1b05c85fbbd0bcee78d66e498099102ab\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd configurable GCE Metadata Server retries (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1488\"\u003e#1488\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/454b441b478ec62bbf1a6ad5bceb6c7cbbfd0c37\"\u003e454b441b478ec62bbf1a6ad5bceb6c7cbbfd0c37\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ehonor \u003ccode\u003eNO_GCE_CHECK\u003c/code\u003e environment variable (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1610\"\u003e#1610\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/383c9827536d9376e8248370ce4c2b83e468d027\"\u003e383c9827536d9376e8248370ce4c2b83e468d027\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eresolve circular imports (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1942\"\u003e#1942\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25c1b064545702cbef087cfcd15fbbb6ef1af74f\"\u003e25c1b064545702cbef087cfcd15fbbb6ef1af74f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremoves \u003ccode\u003econtent-header\u003c/code\u003e from AWS IMDS get request (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1934\"\u003e#1934\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97bfea9e02ede953fc8ee154e0deed3a3cfc6dcc\"\u003e97bfea9e02ede953fc8ee154e0deed3a3cfc6dcc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003edetect correct auth when ADC env var is set but empty (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1374\"\u003e#1374\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/bfc07e1050bd0aa86fa3b08cdf70c9b68b5fe6a2\"\u003ebfc07e1050bd0aa86fa3b08cdf70c9b68b5fe6a2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ereplace deprecated utcfromtimestamp (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1799\"\u003e#1799\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e431f20cf73ccac71926a23ec454468cea92e053\"\u003ee431f20cf73ccac71926a23ec454468cea92e053\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003euser_verification=preferred\u003c/code\u003e for ReAuth WebAuthn challenge (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1798\"\u003e#1798\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3f88a24089c4ee6822d510de0db210b54260d873\"\u003e3f88a24089c4ee6822d510de0db210b54260d873\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.46.0...v2.47.0\"\u003e2.47.0\u003c/a\u003e (2026-01-06)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edrop \u003ccode\u003ecachetools\u003c/code\u003e dependency in favor of simple local implementation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1590\"\u003e#1590\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/5c07e1c4f52bc77a1b16fa3b7b3c5269c242f6f4\"\u003e5c07e1c4f52bc77a1b16fa3b7b3c5269c242f6f4\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1918\"\u003e#1918\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/60dc20014a35ec4ba71e8065b9a33ecbdbeca97a\"\u003e60dc20014a35ec4ba71e8065b9a33ecbdbeca97a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.45.0...v2.46.0\"\u003e2.46.0\u003c/a\u003e (2026-01-05)\u003c/h2\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate urllib3 docstrings for v2 compatibility (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1903\"\u003e#1903\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3f1aeea2d1014ea1d244a4c3470e52d74d55404b\"\u003e3f1aeea2d1014ea1d244a4c3470e52d74d55404b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRecognize workload certificate config in has_default_client_cert_source for mTLS for Agentic Identities (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1907\"\u003e#1907\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0b9107d573123e358c347ffa067637f992af61b4\"\u003e0b9107d573123e358c347ffa067637f992af61b4\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd types to default and verify_token and Request \u003cstrong\u003einit\u003c/strong\u003e based on comments in the source code. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1588\"\u003e#1588\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/59a5f588f7793b59d923a4185c8c07738da618f7\"\u003e59a5f588f7793b59d923a4185c8c07738da618f7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix the document of secure_authorized_session (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1536\"\u003e#1536\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/5d0014707fc359782df5ccfcaa75fd372fe9dce3\"\u003e5d0014707fc359782df5ccfcaa75fd372fe9dce3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremove setup.cfg configuration for creating universal wheels (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1693\"\u003e#1693\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/c767531ce05a89002d109f595187aff1fcaacfb7\"\u003ec767531ce05a89002d109f595187aff1fcaacfb7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse .read() instead of .content.read() in aiohttp transport (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1899\"\u003e#1899\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/12f4470f808809e8abf1141f98d88ab720c3899b\"\u003e12f4470f808809e8abf1141f98d88ab720c3899b\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/googleapis/google-auth-library-python/commit/6a982be06e513a3182069cd910466e743fa7db6a\"\u003e\u003ccode\u003e6a982be\u003c/code\u003e\u003c/a\u003e chore: librarian release pull request: 20260121T162706Z (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1946\"\u003e#1946\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/526d6c63d70aabcfbb69d1d5277831269aac28c1\"\u003e\u003ccode\u003e526d6c6\u003c/code\u003e\u003c/a\u003e chore(tests): add cryptography to constraints file (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1944\"\u003e#1944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/52558ae2881b1e6555f6f5c0d76365c15807ead9\"\u003e\u003ccode\u003e52558ae\u003c/code\u003e\u003c/a\u003e feat: add cryptography as required dependency (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1929\"\u003e#1929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/8dcf91a1b05c85fbbd0bcee78d66e498099102ab\"\u003e\u003ccode\u003e8dcf91a\u003c/code\u003e\u003c/a\u003e feat(iam): Support the mTLS IAM domain for Certificate based Access (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1938\"\u003e#1938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/db17a641a2866e1016fde939567facdfd9935a41\"\u003e\u003ccode\u003edb17a64\u003c/code\u003e\u003c/a\u003e chore(tests): add sleep mocks (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1943\"\u003e#1943\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25c1b064545702cbef087cfcd15fbbb6ef1af74f\"\u003e\u003ccode\u003e25c1b06\u003c/code\u003e\u003c/a\u003e fix: resolve circular imports (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1942\"\u003e#1942\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e5a28b590192d1280c5de3c023e221b70df5e26f\"\u003e\u003ccode\u003ee5a28b5\u003c/code\u003e\u003c/a\u003e tests: system tests for expired User Credentials (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1937\"\u003e#1937\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/4292ab0226dae86e0885cbeb83be39ec6c91ee36\"\u003e\u003ccode\u003e4292ab0\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency google-cloud-compute to v1.42.0 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1939\"\u003e#1939\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/4848ac4fff4d458d797edb938077e348650539d0\"\u003e\u003ccode\u003e4848ac4\u003c/code\u003e\u003c/a\u003e chore: extracts unit tests to individual github actions (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1941\"\u003e#1941\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/71e6e8e5da89f096655a4d61fbf35b8e215b0ad5\"\u003e\u003ccode\u003e71e6e8e\u003c/code\u003e\u003c/a\u003e chore: dedent deprecation warning message (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1932\"\u003e#1932\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.48.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.2.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.2.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport reading .env from FIFOs (Unix) by \u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CI to use trusted publishing on PyPI\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/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003estyle: upgrade to use ruff by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/567\"\u003etheskumar/python-dotenv#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse sys.exit() instead of exit() by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/568\"\u003etheskumar/python-dotenv#568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat:  add \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e flag to disable load_dotenv (fixes \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/510\"\u003e#510\u003c/a\u003e) by \u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded Python@3.14: Github CI \u0026amp; tox.ini by \u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eocs: clarify what load_dotenv() does in README by \u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group across 1 directory with 2 updates 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/theskumar/python-dotenv/pull/577\"\u003etheskumar/python-dotenv#577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove project metadata and config to pyproject.toml by \u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\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/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: ensure find_dotenv work reliably on python 3.13 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003etheskumar/python-dotenv#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cli): issue with execvpe on Windows by \u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\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/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a security policy by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/512\"\u003etheskumar/python-dotenv#512\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep GitHub Actions up to date with GitHub's Dependabot by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/506\"\u003etheskumar/python-dotenv#506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix multiline string in test.yml \u0026amp; use fail-fast strategy by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/514\"\u003etheskumar/python-dotenv#514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnhance dotenv run: Switch to execvpe for better resource management and signal handling by \u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add py3.13 to test.yml by \u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 trove classifier by \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for python 3.13 and drop 3.8 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/551\"\u003etheskumar/python-dotenv#551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update README.md by \u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSome more s/Python-dotenv/python-dotenv/ by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/552\"\u003etheskumar/python-dotenv#552\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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.2.1] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMove more config to \u003ccode\u003epyproject.toml\u003c/code\u003e, removed \u003ccode\u003esetup.cfg\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for reading \u003ccode\u003e.env\u003c/code\u003e from FIFOs (Unix) by [\u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.2.0] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade build system to use PEP 517 \u0026amp; PEP 518 to use \u003ccode\u003ebuild\u003c/code\u003e and \u003ccode\u003epyproject.toml\u003c/code\u003e by [\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/583\"\u003e#583\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14 by [\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for disabling of \u003ccode\u003eload_dotenv()\u003c/code\u003e using \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e env var. by [\u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/569\"\u003e#569\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCLI: revert the use of execvpe on Windows by [\u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003e#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.0] - 2025-03-25\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFeature\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for python 3.13\u003c/li\u003e\n\u003cli\u003eEnhance \u003ccode\u003edotenv run\u003c/code\u003e, switch to \u003ccode\u003eexecvpe\u003c/code\u003e for better resource management and signal handling (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/523\"\u003e#523\u003c/a\u003e) by [\u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efind_dotenv\u003c/code\u003e and \u003ccode\u003eload_dotenv\u003c/code\u003e now correctly looks up at the current directory when running in debugger or pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e by [\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e])\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eMisc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8\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/theskumar/python-dotenv/commit/eaf2a9129ccec6febda0f741eb3bb852c3f947bd\"\u003e\u003ccode\u003eeaf2a91\u003c/code\u003e\u003c/a\u003e Do not remove .coverage file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8716196891532eeb67d24a513e8d975437f5e8b7\"\u003e\u003ccode\u003e8716196\u003c/code\u003e\u003c/a\u003e Bump version: 1.2.0 → 1.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/b87807fcad6e74332c3c63a75c92ce5814fa7a55\"\u003e\u003ccode\u003eb87807f\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/3af77d3029eb717aeec0a3c25f751b6a614a6d3c\"\u003e\u003ccode\u003e3af77d3\u003c/code\u003e\u003c/a\u003e Support reading .env from FIFOs (Unix) (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/467ee22fccb2fb7ccda71a0d9e37c6ea3cb8d993\"\u003e\u003ccode\u003e467ee22\u003c/code\u003e\u003c/a\u003e Fix test failures after moving config to pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/76999e741d87e958ebd74e3ae9834c0514e77a59\"\u003e\u003ccode\u003e76999e7\u003c/code\u003e\u003c/a\u003e Move more config pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/222ce2cc58ebc82ba78da8781269267b9f585932\"\u003e\u003ccode\u003e222ce2c\u003c/code\u003e\u003c/a\u003e Update to use trusted publisher on pypi\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8ed4f79d202eba582b44bdf1f5deb726dd68783d\"\u003e\u003ccode\u003e8ed4f79\u003c/code\u003e\u003c/a\u003e Update docs requirements\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/5bf882241c607445bf02cf5b241535d62e2b99c1\"\u003e\u003ccode\u003e5bf8822\u003c/code\u003e\u003c/a\u003e Bump version: 1.1.1 → 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/1fe11cc737ee4399e9c51d1b69b0dd858f6b4669\"\u003e\u003ccode\u003e1fe11cc\u003c/code\u003e\u003c/a\u003e upadate changelog\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.2.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.2.3 to 2.3.3\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.3\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.3.\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.3.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.3 supports Python 3.9 and higher, and is the first release to support Python 3.14.\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.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\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/pandas-dev/pandas/commit/9c8bc3e55188c8aff37207a74f1dd144980b8874\"\u003e\u003ccode\u003e9c8bc3e\u003c/code\u003e\u003c/a\u003e RLS: 2.3.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/6aa788a00bda9b0f004302076dad94df3edeafc7\"\u003e\u003ccode\u003e6aa788a\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] DOC: prepare 2.3.3 whatsnew notes for release (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62499\"\u003e#62499\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62508\"\u003e#62508\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/b64f0df403d11ac733d9f460f89a5e99c8044ed0\"\u003e\u003ccode\u003eb64f0df\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: avoid validation error for ufunc with string[python] ar...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/058eb2b0edfc408dae9966ef1f03372f2a3ff04c\"\u003e\u003ccode\u003e058eb2b\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: String[pyarrow] comparison with mixed object (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62424\"\u003e#62424\u003c/a\u003e) (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/2ca088daef6a9d9333fea8aedffc7e50d28dfdee\"\u003e\u003ccode\u003e2ca088d\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] DEPR: remove the Period resampling deprecation (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62480\"\u003e#62480\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62\"\u003e#62\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/92bf98f623572ed053d48be5818c8503f1b61888\"\u003e\u003ccode\u003e92bf98f\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: fix .str.isdigit to honor unicode superscript for older...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/e57c7d6a2247316188fba0ba2a0db3c11028d75c\"\u003e\u003ccode\u003ee57c7d6\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62452\"\u003e#62452\u003c/a\u003e on branch 2.3.x (TST: Adjust tests for numexpr 2.13) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62454\"\u003e#62454\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/e0fe9a03c90e560c34a3bbbdd1735a8b64f7b281\"\u003e\u003ccode\u003ee0fe9a0\u003c/code\u003e\u003c/a\u003e Backport to 2.3.x: REGR: from_records not initializing subclasses properly (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/23a1085e641c8e3a5b500e319c5973e4160b9236\"\u003e\u003ccode\u003e23a1085\u003c/code\u003e\u003c/a\u003e BUG: improve future warning for boolean operations with missaligned indexes (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/61136969fb18b438b6660bd5d485d0236dbf4a71\"\u003e\u003ccode\u003e6113696\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62396\"\u003e#62396\u003c/a\u003e on branch 2.3.x (PKG/DOC: indicate Python 3.14 support in ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pandas-dev/pandas/compare/v2.2.3...v2.3.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geoalchemy2` from 0.17.1 to 0.18.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/releases\"\u003egeoalchemy2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix (mysql): Fix failing test for MySQL dialect by \u003ca href=\"https://github.com/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/567\"\u003egeoalchemy/geoalchemy2#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/570\"\u003egeoalchemy/geoalchemy2#570\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Allow scientific notation within WKT string by \u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/573\"\u003egeoalchemy/geoalchemy2#573\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.1 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/574\"\u003egeoalchemy/geoalchemy2#574\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/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/567\"\u003egeoalchemy/geoalchemy2#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/573\"\u003egeoalchemy/geoalchemy2#573\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.18.0...0.18.1\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.18.0...0.18.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/538\"\u003egeoalchemy/geoalchemy2#538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/540\"\u003egeoalchemy/geoalchemy2#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCompile literal binds by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/543\"\u003egeoalchemy/geoalchemy2#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/544\"\u003egeoalchemy/geoalchemy2#544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore (mariadb): Stop converting WKB to WKT by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/545\"\u003egeoalchemy/geoalchemy2#545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker containers by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/546\"\u003egeoalchemy/geoalchemy2#546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/547\"\u003egeoalchemy/geoalchemy2#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/553\"\u003egeoalchemy/geoalchemy2#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/554\"\u003egeoalchemy/geoalchemy2#554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Improve readbility of benchmark results by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/556\"\u003egeoalchemy/geoalchemy2#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/555\"\u003egeoalchemy/geoalchemy2#555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/557\"\u003egeoalchemy/geoalchemy2#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Remove warning message from MySQL/MariaDB reflection by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/560\"\u003egeoalchemy/geoalchemy2#560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/561\"\u003egeoalchemy/geoalchemy2#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: correct doc strings by \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/564\"\u003egeoalchemy/geoalchemy2#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.0 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/565\"\u003egeoalchemy/geoalchemy2#565\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/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.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/geoalchemy/geoalchemy2/blob/main/CHANGES.txt\"\u003egeoalchemy2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Allow scientific notation within WKT string - \u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/573\"\u003e#573\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix (mysql): Fix failing test for MySQL dialect - \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/567\"\u003e#567\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Fix doc strings for cache enabled - \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e(papacodebear/master) Fix: Remove warning from MySQL/MariaDB reflection \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Improve readability of benchmark results \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/547\"\u003e#547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker container \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/546\"\u003e#546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf (mariadb): Stop converting WKB to WKT \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/545\"\u003e#545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/544\"\u003e#544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Compile literal binds properly \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/540\"\u003e#540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/538\"\u003e#538\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/geoalchemy/geoalchemy2/commit/0c311122e5228a885e262d8f79b037cb74c0949b\"\u003e\u003ccode\u003e0c31112\u003c/code\u003e\u003c/a\u003e Release: 0.18.1 (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/574\"\u003e#574\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/75f87fac699ed31579ef93dffc59cc25bda241a8\"\u003e\u003ccode\u003e75f87fa\u003c/code\u003e\u003c/a\u003e Fix: Allow scientific notation within WKT string (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/573\"\u003e#573\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/8653df3a1b0236556f1c39c916f0fb717475a6d1\"\u003e\u003ccode\u003e8653df3\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/570\"\u003e#570\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/3d6099504023afda68137f0ac2d041986159dac9\"\u003e\u003ccode\u003e3d60995\u003c/code\u003e\u003c/a\u003e Fix (mysql): Fix failing test for MySQL dialect (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/567\"\u003e#567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/60767082df9f4587fadd56ab94847ebc39df8295\"\u003e\u003ccode\u003e6076708\u003c/code\u003e\u003c/a\u003e Release: 0.18.0 (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/565\"\u003e#565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/e13112177bdf79cae0d72a6e89d815dc272e3dc5\"\u003e\u003ccode\u003ee131121\u003c/code\u003e\u003c/a\u003e Feat: Add support of spatial indexes for Raster type for PostgreSQL (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/0b432086a0c3b8ab1...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1422","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1422","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1422/packages"}},{"old_version":"47.0.0","new_version":"50.1.0","update_type":"major","path":null,"pr_created_at":"2026-01-09T03:32:46.000Z","version_change":"47.0.0 → 50.1.0","issue":{"uuid":"3795330434","node_id":"PR_kwDOHTdvBs68P6-_","number":1401,"state":"open","title":"deps(ibis): bump the all group across 1 directory with 27 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-01-09T03:32:46.000Z","updated_at":"2026-01-12T07:14:12.529Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":27,"packages":[{"name":"fastapi","old_version":"0.120.1","new_version":"0.128.0","repository_url":"https://github.com/fastapi/fastapi"},{"name":"pydantic","old_version":"2.10.6","new_version":"2.12.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.47.0","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.2.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"orjson","old_version":"3.10.16","new_version":"3.11.5","repository_url":"https://github.com/ijl/orjson"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.18.1","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"anyio","old_version":"4.10.0","new_version":"4.12.1","repository_url":"https://github.com/agronholm/anyio"},{"name":"duckdb","old_version":"1.3.2","new_version":"1.4.3","repository_url":"https://github.com/duckdb/duckdb-python"},{"name":"oracledb","old_version":"3.3.0","new_version":"3.4.1","repository_url":"https://github.com/oracle/python-oracledb"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.40.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"uvicorn-worker","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/Kludex/uvicorn-worker"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.10","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"50.1.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"starlette","old_version":"0.49.3","new_version":"0.50.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"databricks-sql-connector","old_version":"4.2.3","new_version":"4.2.4","repository_url":"https://github.com/databricks/databricks-sql-python"},{"name":"databricks-sdk","old_version":"0.73.0","new_version":"0.77.0","repository_url":"https://github.com/databricks/databricks-sdk-py"},{"name":"pyspark","old_version":"3.5.7","new_version":"4.1.0","repository_url":"https://github.com/apache/spark"},{"name":"plotly","old_version":"6.5.0","new_version":"6.5.1","repository_url":"https://github.com/plotly/plotly.py"},{"name":"pytest","old_version":"8.3.5","new_version":"9.0.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.14.0","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.45","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.5.1","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.14.11","repository_url":"https://github.com/astral-sh/ruff"},{"name":"trino","old_version":"0.335.0","new_version":"0.336.0","repository_url":"https://github.com/trinodb/trino-python-client"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.10.0","repository_url":"https://github.com/ClickHouse/clickhouse-connect"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 27 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.120.1` | `0.128.0` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.12.5` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.47.0` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.2.1` |\n| [orjson](https://github.com/ijl/orjson) | `3.10.16` | `3.11.5` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.3` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.18.1` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.10.0` | `4.12.1` |\n| [duckdb](https://github.com/duckdb/duckdb-python) | `1.3.2` | `1.4.3` |\n| [oracledb](https://github.com/oracle/python-oracledb) | `3.3.0` | `3.4.1` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.40.0` |\n| [uvicorn-worker](https://github.com/Kludex/uvicorn-worker) | `0.3.0` | `0.4.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.10` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `50.1.0` |\n| [starlette](https://github.com/Kludex/starlette) | `0.49.3` | `0.50.0` |\n| [databricks-sql-connector](https://github.com/databricks/databricks-sql-python) | `4.2.3` | `4.2.4` |\n| [databricks-sdk](https://github.com/databricks/databricks-sdk-py) | `0.73.0` | `0.77.0` |\n| [pyspark](https://github.com/apache/spark) | `3.5.7` | `4.1.0` |\n| [plotly](https://github.com/plotly/plotly.py) | `6.5.0` | `6.5.1` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `9.0.2` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.14.0` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.45` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.5.1` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.14.11` |\n| [trino](https://github.com/trinodb/trino-python-client) | `0.335.0` | `0.336.0` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.10.0` |\n\n\nUpdates `fastapi` from 0.120.1 to 0.128.0\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's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.128.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e➖ Drop support for \u003ccode\u003epydantic.v1\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14609\"\u003e#14609\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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✅ Run performance tests only on Pydantic v2. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14608\"\u003e#14608\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.127.1\u003c/h2\u003e\n\u003ch3\u003eRefactors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🔊 Add a custom \u003ccode\u003eFastAPIDeprecationWarning\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14605\"\u003e#14605\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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📝 Add documentary to website. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14600\"\u003e#14600\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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🌐 Update translations for de (update-outdated). PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14602\"\u003e#14602\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Update translations for de (update-outdated). PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14581\"\u003e#14581\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\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🔧 Update pre-commit to use local Ruff instead of hook. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14604\"\u003e#14604\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Add missing tests for code examples. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14569\"\u003e#14569\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👷 Remove \u003ccode\u003elint\u003c/code\u003e job from \u003ccode\u003etest\u003c/code\u003e CI workflow. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14593\"\u003e#14593\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👷 Update secrets check. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14592\"\u003e#14592\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👷 Run CodSpeed tests in parallel to other tests to speed up CI. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14586\"\u003e#14586\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔨 Update scripts and pre-commit to autofix files. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14585\"\u003e#14585\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.127.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🔊 Add deprecation warnings when using \u003ccode\u003epydantic.v1\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14583\"\u003e#14583\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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 LLM prompt file for Korean, generated from the existing translations. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14546\"\u003e#14546\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔧 Add LLM prompt file for Japanese, generated from the existing translations. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14545\"\u003e#14545\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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⬆️ Upgrade OpenAI model for translations to gpt-5.2. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14579\"\u003e#14579\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.126.0\u003c/h2\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e➖ Drop support for Pydantic v1, keeping short temporary support for Pydantic v2's \u003ccode\u003epydantic.v1\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14575\"\u003e#14575\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8322a4445a3b25acd9b26b61192571b2d92f9bcd\"\u003e\u003ccode\u003e8322a44\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.128.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/4b2cfcfd34d0b2e158a05b377426e0c8376b94de\"\u003e\u003ccode\u003e4b2cfcf\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/e3006305518a56ea35f62a31748ad26fe4356fcc\"\u003e\u003ccode\u003ee300630\u003c/code\u003e\u003c/a\u003e ➖ Drop support for \u003ccode\u003epydantic.v1\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14609\"\u003e#14609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/1b3bea8b6be2220cc1544653ea785d2134fcb35b\"\u003e\u003ccode\u003e1b3bea8\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/34e884156f38dff4094a7764ff895c4d4b872060\"\u003e\u003ccode\u003e34e8841\u003c/code\u003e\u003c/a\u003e ✅ Run performance tests only on Pydantic v2 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14608\"\u003e#14608\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/cd90c78391f86f3fd06d5b327bffad9666b05b44\"\u003e\u003ccode\u003ecd90c78\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.127.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/93f4dfd88b7d62bda89eb521ebd9322e357e6fff\"\u003e\u003ccode\u003e93f4dfd\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/535b5daa317a9d1d1f9a1058e57650a7beefa861\"\u003e\u003ccode\u003e535b5da\u003c/code\u003e\u003c/a\u003e 🔊 Add a custom \u003ccode\u003eFastAPIDeprecationWarning\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14605\"\u003e#14605\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/6b53786f626db95a42fd0f66afd360bab161f4b1\"\u003e\u003ccode\u003e6b53786\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d98f4eb56eae3155034fe631d9639d95171fb9ab\"\u003e\u003ccode\u003ed98f4eb\u003c/code\u003e\u003c/a\u003e 🔧 Update pre-commit to use local Ruff instead of hook (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14604\"\u003e#14604\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.120.1...0.128.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.10.6 to 2.12.5\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.5 2025-11-26\u003c/h2\u003e\n\u003ch2\u003ev2.12.5 (2025-11-26)\u003c/h2\u003e\n\u003cp\u003eThis is the fifth 2.12 patch release, addressing an issue with the \u003ccode\u003eMISSING\u003c/code\u003e sentinel and providing several documentation improvements.\u003c/p\u003e\n\u003cp\u003eThe next 2.13 minor release will be published in a couple weeks, and will include a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature addressing\nthe remaining unexpected changes to the \u003cem\u003eserialize as any\u003c/em\u003e behavior.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix pickle error when using \u003ccode\u003emodel_construct()\u003c/code\u003e on a model with \u003ccode\u003eMISSING\u003c/code\u003e as a default value by \u003ca href=\"https://github.com/ornariece\"\u003e\u003ccode\u003e@​ornariece\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12522\"\u003e#12522\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eSeveral updates to the documentation by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\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.12.4...v2.12.5\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.4...v2.12.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.4 2025-11-05\u003c/h2\u003e\n\u003ch2\u003ev2.12.4 (2025-11-05)\u003c/h2\u003e\n\u003cp\u003eThis is the fourth 2.12 patch release, fixing more regressions, and reverting a change in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis patch release also fixes an issue with the serialization of IP address types, when \u003ccode\u003eserialize_as_any\u003c/code\u003e is used. The next patch release\nwill try to address the remaining issues with \u003cem\u003eserialize as any\u003c/em\u003e behavior by introducing a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature, that\nshould be used in most cases in place of \u003cem\u003eserialize as any\u003c/em\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with forward references in parent \u003ccode\u003eTypedDict\u003c/code\u003e classes 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/12427\"\u003e#12427\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis issue is only relevant on Python 3.14 and greater.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExclude fields with \u003ccode\u003eexclude_if\u003c/code\u003e from JSON Schema required fields 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/12430\"\u003e#12430\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRevert URL percent-encoding of credentials in the \u003ccode\u003ebuild()\u003c/code\u003e method of the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1833\"\u003epydantic-core#1833\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis was initially considered as a bugfix, but caused regressions and as such was fully reverted. The next release will include\nan opt-in option to percent-encode components of the URL.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd type inference for IP address types by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1868\"\u003epydantic-core#1868\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe 2.12 changes to the \u003ccode\u003eserialize_as_any\u003c/code\u003e behavior made it so that IP address types could not properly serialize to JSON.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid getting default values from defaultdict by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1853\"\u003epydantic-core#1853\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis fixes a subtle regression in the validation behavior of the \u003ca href=\"https://docs.python.org/3/library/collections.html#collections.defaultdict\"\u003e\u003ccode\u003ecollections.defaultdict\u003c/code\u003e\u003c/a\u003e\ntype.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with field serializers on nested typed dictionaries by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1879\"\u003epydantic-core#1879\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd more \u003ccode\u003epydantic-core\u003c/code\u003e builds for the three-threaded version of Python 3.14 by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1864\"\u003epydantic-core#1864\u003c/a\u003e.\u003c/p\u003e\n\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.12.3...v2.12.4\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.3...v2.12.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.3 2025-10-17\u003c/h2\u003e\n\u003ch2\u003ev2.12.3 (2025-10-17)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eThis is the third 2.13 patch release, fixing issues related to the \u003ccode\u003eFieldInfo\u003c/code\u003e class, and reverting a change to the supported \u003ca href=\"https://docs.pydantic.dev/latest/concepts/validators/#model-validators\"\u003e\u003cem\u003eafter\u003c/em\u003e model validator\u003c/a\u003e function signatures.\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\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.5 (2025-11-26)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis is the fifth 2.12 patch release, addressing an issue with the \u003ccode\u003eMISSING\u003c/code\u003e sentinel and providing several documentation improvements.\u003c/p\u003e\n\u003cp\u003eThe next 2.13 minor release will be published in a couple weeks, and will include a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature addressing\nthe remaining unexpected changes to the \u003cem\u003eserialize as any\u003c/em\u003e behavior.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix pickle error when using \u003ccode\u003emodel_construct()\u003c/code\u003e on a model with \u003ccode\u003eMISSING\u003c/code\u003e as a default value by \u003ca href=\"https://github.com/ornariece\"\u003e\u003ccode\u003e@​ornariece\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12522\"\u003e#12522\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eSeveral updates to the documentation by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.12.4 (2025-11-05)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.4\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis is the fourth 2.12 patch release, fixing more regressions, and reverting a change in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis patch release also fixes an issue with the serialization of IP address types, when \u003ccode\u003eserialize_as_any\u003c/code\u003e is used. The next patch release\nwill try to address the remaining issues with \u003cem\u003eserialize as any\u003c/em\u003e behavior by introducing a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature, that\nshould be used in most cases in place of \u003cem\u003eserialize as any\u003c/em\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with forward references in parent \u003ccode\u003eTypedDict\u003c/code\u003e classes 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/12427\"\u003e#12427\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis issue is only relevant on Python 3.14 and greater.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExclude fields with \u003ccode\u003eexclude_if\u003c/code\u003e from JSON Schema required fields 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/12430\"\u003e#12430\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRevert URL percent-encoding of credentials in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in\n\u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1833\"\u003epydantic-core#1833\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis was initially considered as a bugfix, but caused regressions and as such was fully reverted. The next release will include\nan opt-in option to percent-encode components of the URL.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd type inference for IP address types by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1868\"\u003epydantic-core#1868\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe 2.12 changes to the \u003ccode\u003eserialize_as_any\u003c/code\u003e behavior made it so that IP address types could not properly serialize to JSON.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid getting default values from defaultdict by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1853\"\u003epydantic-core#1853\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis fixes a subtle regression in the validation behavior of the \u003ca href=\"https://docs.python.org/3/library/collections.html#collections.defaultdict\"\u003e\u003ccode\u003ecollections.defaultdict\u003c/code\u003e\u003c/a\u003e\ntype.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with field serializers on nested typed dictionaries by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1879\"\u003epydantic-core#1879\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd more \u003ccode\u003epydantic-core\u003c/code\u003e builds for the three-threaded version of Python 3.14 by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1864\"\u003epydantic-core#1864\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.12.3 (2025-10-17)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.3\"\u003eGitHub release\u003c/a\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/pydantic/pydantic/commit/bd2d0dd0137dfa1a8fdff2529b9dfb1547980150\"\u003e\u003ccode\u003ebd2d0dd\u003c/code\u003e\u003c/a\u003e Prepare release v2.12.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/7d0302ec7ec2cf115de3450a615522875bdd8b56\"\u003e\u003ccode\u003e7d0302e\u003c/code\u003e\u003c/a\u003e Document security implications when using \u003ccode\u003ecreate_model()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/e9ef980def726b6f59b6c495ddc9dc259a0228db\"\u003e\u003ccode\u003ee9ef980\u003c/code\u003e\u003c/a\u003e Fix typo in Standard Library Types documentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/f2c20c00c265a31a13c48f9bae923a87c829952e\"\u003e\u003ccode\u003ef2c20c0\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003epydantic-docs\u003c/code\u003e dev dependency, make use of versioning blocks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a76c1aa26f2d64a3fd080ac515d80832689197e8\"\u003e\u003ccode\u003ea76c1aa\u003c/code\u003e\u003c/a\u003e Update documentation about JSON Schema\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/8cbc72ca489891e574fba45238ee8bd4f8e719a2\"\u003e\u003ccode\u003e8cbc72c\u003c/code\u003e\u003c/a\u003e Add documentation about custom \u003ccode\u003e__init__()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/99eba599069da137b3f708ffa74627f2b456ba73\"\u003e\u003ccode\u003e99eba59\u003c/code\u003e\u003c/a\u003e Add additional test for \u003ccode\u003eFieldInfo.get_default()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c71076988e507ea93844c77c3bf0bbb85a5716af\"\u003e\u003ccode\u003ec710769\u003c/code\u003e\u003c/a\u003e Special case \u003ccode\u003eMISSING\u003c/code\u003e sentinel in \u003ccode\u003esmart_deepcopy()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/20a9d771c210fd77d52366ac923258c4c199727f\"\u003e\u003ccode\u003e20a9d77\u003c/code\u003e\u003c/a\u003e Do not delete mock validator/serializer in \u003ccode\u003erebuild_dataclass()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c86515a3a8f2120148fab2eaedd3bc45925779d0\"\u003e\u003ccode\u003ec86515a\u003c/code\u003e\u003c/a\u003e Update parts of the model and \u003ccode\u003erevalidate_instances\u003c/code\u003e documentation\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.12.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.47.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003egoogle-auth 2.47.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.46.0...v2.47.0\"\u003e2.47.0\u003c/a\u003e (2026-01-06)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edrop \u003ccode\u003ecachetools\u003c/code\u003e dependency in favor of simple local implementation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1590\"\u003e#1590\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/5c07e1c4\"\u003e5c07e1c4\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1918\"\u003e#1918\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/60dc2001\"\u003e60dc2001\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003egoogle-auth 2.46.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.45.0...v2.46.0\"\u003e2.46.0\u003c/a\u003e (2026-01-05)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRecognize workload certificate config in has_default_client_cert_source for mTLS for Agentic Identities (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1907\"\u003e#1907\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0b9107d5\"\u003e0b9107d5\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix test coverage for mtls_helper (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1886\"\u003e#1886\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/02e71631\"\u003e02e71631\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003euse .read() instead of .content.read() in aiohttp transport (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1899\"\u003e#1899\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/12f4470f\"\u003e12f4470f\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eadd types to default and verify_token and Request \u003cstrong\u003einit\u003c/strong\u003e based on comments in the source code. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1588\"\u003e#1588\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/59a5f588\"\u003e59a5f588\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003efix the document of secure_authorized_session (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1536\"\u003e#1536\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/5d001470\"\u003e5d001470\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eraise RefreshError for missing token in impersonated credentials (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1897\"\u003e#1897\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/94d04e09\"\u003e94d04e09\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eremove setup.cfg configuration for creating universal wheels (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1693\"\u003e#1693\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/c767531c\"\u003ec767531c\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate urllib3 docstrings for v2 compatibility (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1903\"\u003e#1903\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3f1aeea2\"\u003e3f1aeea2\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003egoogle-auth 2.45.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.44.0...v2.45.0\"\u003e2.45.0\u003c/a\u003e (2025-12-15)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdding Agent Identity bound token support and handling certificate mismatches with retries (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1890\"\u003e#1890\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b32c934e\"\u003eb32c934e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003egoogle-auth 2.44.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.43.0...v2.44.0\"\u003e2.44.0\u003c/a\u003e (2025-12-12)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMDS connections use mTLS (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1856\"\u003e#1856\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0387bb95\"\u003e0387bb95\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.46.0...v2.47.0\"\u003e2.47.0\u003c/a\u003e (2026-01-06)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edrop \u003ccode\u003ecachetools\u003c/code\u003e dependency in favor of simple local implementation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1590\"\u003e#1590\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/5c07e1c4f52bc77a1b16fa3b7b3c5269c242f6f4\"\u003e5c07e1c4f52bc77a1b16fa3b7b3c5269c242f6f4\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1918\"\u003e#1918\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/60dc20014a35ec4ba71e8065b9a33ecbdbeca97a\"\u003e60dc20014a35ec4ba71e8065b9a33ecbdbeca97a\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.45.0...v2.46.0\"\u003e2.46.0\u003c/a\u003e (2026-01-05)\u003c/h2\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate urllib3 docstrings for v2 compatibility (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1903\"\u003e#1903\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3f1aeea2d1014ea1d244a4c3470e52d74d55404b\"\u003e3f1aeea2d1014ea1d244a4c3470e52d74d55404b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRecognize workload certificate config in has_default_client_cert_source for mTLS for Agentic Identities (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1907\"\u003e#1907\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0b9107d573123e358c347ffa067637f992af61b4\"\u003e0b9107d573123e358c347ffa067637f992af61b4\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd types to default and verify_token and Request \u003cstrong\u003einit\u003c/strong\u003e based on comments in the source code. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1588\"\u003e#1588\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/59a5f588f7793b59d923a4185c8c07738da618f7\"\u003e59a5f588f7793b59d923a4185c8c07738da618f7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix the document of secure_authorized_session (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1536\"\u003e#1536\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/5d0014707fc359782df5ccfcaa75fd372fe9dce3\"\u003e5d0014707fc359782df5ccfcaa75fd372fe9dce3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremove setup.cfg configuration for creating universal wheels (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1693\"\u003e#1693\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/c767531ce05a89002d109f595187aff1fcaacfb7\"\u003ec767531ce05a89002d109f595187aff1fcaacfb7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse .read() instead of .content.read() in aiohttp transport (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1899\"\u003e#1899\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/12f4470f808809e8abf1141f98d88ab720c3899b\"\u003e12f4470f808809e8abf1141f98d88ab720c3899b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eraise RefreshError for missing token in impersonated credentials (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1897\"\u003e#1897\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/94d04e090fdfc61926dd32bc1d65f8820b9cede5\"\u003e94d04e090fdfc61926dd32bc1d65f8820b9cede5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix test coverage for mtls_helper (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1886\"\u003e#1886\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/02e71631fe275d93825c2e957e830773e75133f7\"\u003e02e71631fe275d93825c2e957e830773e75133f7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.44.0...v2.45.0\"\u003e2.45.0\u003c/a\u003e (2025-12-15)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdding Agent Identity bound token support and handling certificate mismatches with retries (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1890\"\u003e#1890\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b32c934e6b0d09b94c467cd432a0a635e8b05f5c\"\u003eb32c934e6b0d09b94c467cd432a0a635e8b05f5c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.43.0...v2.44.0\"\u003e2.44.0\u003c/a\u003e (2025-12-13)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esupport Python 3.14 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1822\"\u003e#1822\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0f7097e78f247665b6ef0287d482033f7be2ed6d\"\u003e0f7097e78f247665b6ef0287d482033f7be2ed6d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd ecdsa p-384 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1872\"\u003e#1872\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/39c381a5f6881b590025f36d333d12eff8dc60fc\"\u003e39c381a5f6881b590025f36d333d12eff8dc60fc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMDS connections use mTLS (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1856\"\u003e#1856\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0387bb95713653d47e846cad3a010eb55ef2db4c\"\u003e0387bb95713653d47e846cad3a010eb55ef2db4c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImplement token revocation in STS client and add revoke() metho… (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1849\"\u003e#1849\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/d5638986ca03ee95bfffa9ad821124ed7e903e63\"\u003ed5638986ca03ee95bfffa9ad821124ed7e903e63\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/googleapis/google-auth-library-python/commit/f32301a03372eb72a8b5542a4cc223e01ee1e33b\"\u003e\u003ccode\u003ef32301a\u003c/code\u003e\u003c/a\u003e chore: librarian release pull request: 20260106T130342Z (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1922\"\u003e#1922\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25f4ca658c1880c7a27ed817ded4c17d84c26854\"\u003e\u003ccode\u003e25f4ca6\u003c/code\u003e\u003c/a\u003e chore: remove Python 3.7 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1919\"\u003e#1919\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/60dc20014a35ec4ba71e8065b9a33ecbdbeca97a\"\u003e\u003ccode\u003e60dc200\u003c/code\u003e\u003c/a\u003e fix: Python 3.8 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1918\"\u003e#1918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/5c07e1c4f52bc77a1b16fa3b7b3c5269c242f6f4\"\u003e\u003ccode\u003e5c07e1c\u003c/code\u003e\u003c/a\u003e feat: drop \u003ccode\u003ecachetools\u003c/code\u003e dependency in favor of simple local implementation (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2cbc2a2e2e75e8797bf3709eb1e624ad39e7e7d4\"\u003e\u003ccode\u003e2cbc2a2\u003c/code\u003e\u003c/a\u003e chore: librarian release pull request: 20260105T122553Z (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1913\"\u003e#1913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/5b7b5d83adafe275351989a96328472b1845c4be\"\u003e\u003ccode\u003e5b7b5d8\u003c/code\u003e\u003c/a\u003e chore: librarian update image pull request: 20260105T112538Z (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1912\"\u003e#1912\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7dbf05a56c5c8f1c01f985af140dc8c5ea29656a\"\u003e\u003ccode\u003e7dbf05a\u003c/code\u003e\u003c/a\u003e chore: rename _refresh_token to _perform_refresh_token (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1900\"\u003e#1900\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/855a45af913a5d099e30036b80d8ba3b0c324a62\"\u003e\u003ccode\u003e855a45a\u003c/code\u003e\u003c/a\u003e chore(deps): update all dependencies (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1894\"\u003e#1894\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/77c8bc48b5638cbe8c4415fdd378853e9db6e156\"\u003e\u003ccode\u003e77c8bc4\u003c/code\u003e\u003c/a\u003e tests: make the TLS tests skip when pyopenssl isn't available (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1873\"\u003e#1873\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0b9107d573123e358c347ffa067637f992af61b4\"\u003e\u003ccode\u003e0b9107d\u003c/code\u003e\u003c/a\u003e feat: Recognize workload certificate config in has_default_client_cert_source...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.47.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.2.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.2.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport reading .env from FIFOs (Unix) by \u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CI to use trusted publishing on PyPI\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/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003estyle: upgrade to use ruff by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/567\"\u003etheskumar/python-dotenv#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse sys.exit() instead of exit() by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/568\"\u003etheskumar/python-dotenv#568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat:  add \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e flag to disable load_dotenv (fixes \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/510\"\u003e#510\u003c/a\u003e) by \u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded Python@3.14: Github CI \u0026amp; tox.ini by \u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eocs: clarify what load_dotenv() does in README by \u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group across 1 directory with 2 updates 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/theskumar/python-dotenv/pull/577\"\u003etheskumar/python-dotenv#577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove project metadata and config to pyproject.toml by \u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\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/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: ensure find_dotenv work reliably on python 3.13 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003etheskumar/python-dotenv#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cli): issue with execvpe on Windows by \u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\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/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a security policy by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/512\"\u003etheskumar/python-dotenv#512\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep GitHub Actions up to date with GitHub's Dependabot by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/506\"\u003etheskumar/python-dotenv#506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix multiline string in test.yml \u0026amp; use fail-fast strategy by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/514\"\u003etheskumar/python-dotenv#514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnhance dotenv run: Switch to execvpe for better resource management and signal handling by \u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add py3.13 to test.yml by \u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 trove classifier by \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for python 3.13 and drop 3.8 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/551\"\u003etheskumar/python-dotenv#551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update README.md by \u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSome more s/Python-dotenv/python-dotenv/ by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/552\"\u003etheskumar/python-dotenv#552\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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.2.1] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMove more config to \u003ccode\u003epyproject.toml\u003c/code\u003e, removed \u003ccode\u003esetup.cfg\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for reading \u003ccode\u003e.env\u003c/code\u003e from FIFOs (Unix) by [\u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.2.0] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade build system to use PEP 517 \u0026amp; PEP 518 to use \u003ccode\u003ebuild\u003c/code\u003e and \u003ccode\u003epyproject.toml\u003c/code\u003e by [\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/583\"\u003e#583\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14 by [\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for disabling of \u003ccode\u003eload_dotenv()\u003c/code\u003e using \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e env var. by [\u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/569\"\u003e#569\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCLI: revert the use of execvpe on Windows by [\u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003e#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.0] - 2025-03-25\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFeature\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for python 3.13\u003c/li\u003e\n\u003cli\u003eEnhance \u003ccode\u003edotenv run\u003c/code\u003e, switch to \u003ccode\u003eexecvpe\u003c/code\u003e for better resource management and signal handling (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/523\"\u003e#523\u003c/a\u003e) by [\u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efind_dotenv\u003c/code\u003e and \u003ccode\u003eload_dotenv\u003c/code\u003e now correctly looks up at the current directory when running in debugger or pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e by [\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e])\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eMisc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8\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/theskumar/python-dotenv/commit/eaf2a9129ccec6febda0f741eb3bb852c3f947bd\"\u003e\u003ccode\u003eeaf2a91\u003c/code\u003e\u003c/a\u003e Do not remove .coverage file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8716196891532eeb67d24a513e8d975437f5e8b7\"\u003e\u003ccode\u003e8716196\u003c/code\u003e\u003c/a\u003e Bump version: 1.2.0 → 1.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/b87807fcad6e74332c3c63a75c92ce5814fa7a55\"\u003e\u003ccode\u003eb87807f\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/3af77d3029eb717aeec0a3c25f751b6a614a6d3c\"\u003e\u003ccode\u003e3af77d3\u003c/code\u003e\u003c/a\u003e Support reading .env from FIFOs (Unix) (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/467ee22fccb2fb7ccda71a0d9e37c6ea3cb8d993\"\u003e\u003ccode\u003e467ee22\u003c/code\u003e\u003c/a\u003e Fix test failures after moving config to pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/76999e741d87e958ebd74e3ae9834c0514e77a59\"\u003e\u003ccode\u003e76999e7\u003c/code\u003e\u003c/a\u003e Move more config pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/222ce2cc58ebc82ba78da8781269267b9f585932\"\u003e\u003ccode\u003e222ce2c\u003c/code\u003e\u003c/a\u003e Update to use trusted publisher on pypi\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8ed4f79d202eba582b44bdf1f5deb726dd68783d\"\u003e\u003ccode\u003e8ed4f79\u003c/code\u003e\u003c/a\u003e Update docs requirements\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/5bf882241c607445bf02cf5b241535d62e2b99c1\"\u003e\u003ccode\u003e5bf8822\u003c/code\u003e\u003c/a\u003e Bump version: 1.1.1 → 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/1fe11cc737ee4399e9c51d1b69b0dd858f6b4669\"\u003e\u003ccode\u003e1fe11cc\u003c/code\u003e\u003c/a\u003e upadate changelog\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `orjson` from 3.10.16 to 3.11.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ijl/orjson/releases\"\u003eorjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.5\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eShow simple error message instead of traceback when attempting to\nbuild on unsupported Python versions.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.4\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eABI compatibility with CPython 3.15 alpha 1.\u003c/li\u003e\n\u003cli\u003ePublish PyPI wheels for 3.14 and manylinux i686, manylinux arm7,\nmanylinux ppc64le, manylinux s390x.\u003c/li\u003e\n\u003cli\u003eBuild now requires a C compiler.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared buffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17\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/ijl/orjson/blob/master/CHANGELOG.md\"\u003eorjson's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.5 - 2025-12-06\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eShow simple error message instead of traceback when attempting to\nbuild on unsupported Python versions.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.4 - 2025-10-24\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eABI compatibility with CPython 3.15 alpha 1.\u003c/li\u003e\n\u003cli\u003ePublish PyPI wheels for 3.14 and manylinux i686, manylinux arm7,\nmanylinux ppc64le, manylinux s390x.\u003c/li\u003e\n\u003cli\u003eBuild now requires a C compiler.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.3 - 2025-08-26\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1 - 2025-07-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures. This was introduced in 3.11.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 - 2025-07-15\u003c/h2\u003e\n\u003ch3\u003eChanged\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/ijl/orjson/commit/fb3eb1f729c7e7b019f780af5695722c99c7c695\"\u003e\u003ccode\u003efb3eb1f\u003c/code\u003e\u003c/a\u003e 3.11.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/52688e02c51c845cde24a46cd1011a6010d10eb8\"\u003e\u003ccode\u003e52688e0\u003c/code\u003e\u003c/a\u003e Record contributors in headers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/dc083e87d5262e7dde3ba4b1d2a377b5b065a27c\"\u003e\u003ccode\u003edc083e8\u003c/code\u003e\u003c/a\u003e Further compatibility and build misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/18f0186d47fbadd53c9db4e39a442d5b04225418\"\u003e\u003ccode\u003e18f0186\u003c/code\u003e\u003c/a\u003e Compatibility and build misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/a4fdeb3aff125d501ec0dd0577f9b38b2b977b4f\"\u003e\u003ccode\u003ea4fdeb3\u003c/code\u003e\u003c/a\u003e 3.11.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2e80d68afacafca8751e6a64ca05d0d4087dbd15\"\u003e\u003ccode\u003e2e80d68\u003c/code\u003e\u003c/a\u003e unlikely to cold_path, remove intrinsics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/27edea92f8da2fdfc3f1342474e2f1686f1edf55\"\u003e\u003ccode\u003e27edea9\u003c/code\u003e\u003c/a\u003e FFI through crate::ffi, partial non-CPython compatibility\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/416a8c9578da780d0d58b5e6b751793deafc610d\"\u003e\u003ccode\u003e416a8c9\u003c/code\u003e\u003c/a\u003e Unconditionally build yyjson\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/c8c1a17dca8436a2fee05ca060febd096e653d98\"\u003e\u003ccode\u003ec8c1a17\u003c/code\u003e\u003c/a\u003e edition 2024\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/af4179a1fa0aafffd0f867203b6c36e9a522f165\"\u003e\u003ccode\u003eaf4179a\u003c/code\u003e\u003c/a\u003e build maintenance, panic_immediate_abort break, test 3.15\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ijl/orjson/compare/3.10.16...3.11.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` from 2.2.3 to 2.3.3\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.3\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.3.\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.3.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.3 supports Python 3.9 and higher, and is the first release to support Python 3.14.\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.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\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/pandas-dev/pandas/commit/9c8bc3e55188c8aff37207a74f1dd144980b8874\"\u003e\u003ccode\u003e9c8bc3e\u003c/code\u003e\u003c/a\u003e RLS: 2.3.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/6aa788a00bda9b0f004302076dad94df3edeafc7\"\u003e\u003ccode\u003e6aa788a\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] DOC: prepare 2.3.3 whatsnew notes for release (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62499\"\u003e#62499\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62508\"\u003e#62508\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/b64f0df403d11ac733d9f460f89a5e99c8044ed0\"\u003e\u003ccode\u003eb64f0df\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: avoid validation error for ufunc with string[python] ar...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/058eb2b0edfc408dae9966ef1f03372f2a3ff04c\"\u003e\u003ccode\u003e058eb2b\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: String[pyarrow] comparison with mixed object (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62424\"\u003e#62424\u003c/a\u003e) (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/2ca088daef6a9d9333fea8aedffc7e50d28dfdee\"\u003e\u003ccode\u003e2ca088d\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] DEPR: remove the Period resampling deprecation (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62480\"\u003e#62480\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62\"\u003e#62\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/92bf98f623572ed053d48be5818c8503f1b61888\"\u003e\u003ccode\u003e92bf98f\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: fix .str.isdigit to honor unicode superscript for older...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/e57c7d6a2247316188fba0ba2a0db3c11028d75c\"\u003e\u003ccode\u003ee57c7d6\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62452\"\u003e#62452\u003c/a\u003e on branch 2.3.x (TST: Adjust tests for numexpr 2.13) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62454\"\u003e#62454\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/e0fe9a03c90e560c34a3bbbdd1735a8b64f7b281\"\u003e\u003ccode\u003ee0fe9a0\u003c/code\u003e\u003c/a\u003e Backport to 2.3.x: REGR: from_records not initializing subclasses properly (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/23a1085e641c8e3a5b500e319c5973e4160b9236\"\u003e\u003ccode\u003e23a1085\u003c/code\u003e\u003c/a\u003e BUG: improve future warning for boolean operations with missaligned indexes (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/61136969fb18b438b6660bd5d485d0236dbf4a71\"\u003e\u003ccode\u003e6113696\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62396\"\u003e#62396\u003c/a\u003e on branch 2.3.x (PKG/DOC: indicate Python 3.14 support in ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pandas-dev/pandas/compare/v2.2.3...v2.3.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geoalchemy2` from 0.17.1 to 0.18.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/releases\"\u003egeoalchemy2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix (mysql): Fix failing test for MySQL dialect by \u003ca href=\"https://github.com/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/567\"\u003egeoalchemy/geoalchemy2#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/570\"\u003egeoalchemy/geoalchemy2#570\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Allow scientific notation within WKT string by \u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/573\"\u003egeoalchemy/geoalchemy2#573\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.1 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/574\"\u003egeoalchemy/geoalchemy2#574\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/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/567\"\u003egeoalchemy/geoalchemy2#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/573\"\u003egeoalchemy/geoalchemy2#573\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.18.0...0.18.1\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.18.0...0.18.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/538\"\u003egeoalchemy/geoalchemy2#538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/540\"\u003egeoalchemy/geoalchemy2#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCompile literal binds by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/543\"\u003egeoalchemy/geoalchemy2#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/544\"\u003egeoalchemy/geoalchemy2#544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore (mariadb): Stop converting WKB to WKT by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/545\"\u003egeoalchemy/geoalchemy2#545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker containers by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/546\"\u003egeoalchemy/geoalchemy2#546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/547\"\u003egeoalchemy/geoalchemy2#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/553\"\u003egeoalchemy/geoalchemy2#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/554\"\u003egeoalchemy/geoalchemy2#554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Improve readbility of benchmark results by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/556\"\u003egeoalchemy/geoalchemy2#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/555\"\u003egeoalchemy/geoalchemy2#555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/557\"\u003egeoalchemy/geoalchemy2#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Remove warning message from MySQL/MariaDB reflection by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/560\"\u003egeoalchemy/geoalchemy2#560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/561\"\u003egeoalchemy/geoalchemy2#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: correct doc strings by \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/564\"\u003egeoalchemy/geoalchemy2#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.0 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/565\"\u003egeoalchemy/geoalchemy2#565\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/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.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/geoalchemy/geoalchemy2/blob/master/CHANGES.txt\"\u003egeoalchemy2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Allow scientific notation within WKT string - \u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/573\"\u003e#573\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix (mysql): Fix failing test for MySQL dialect - \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/567\"\u003e#567\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Fix doc strings for cache enabled - \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e(papacodebear/master) Fix: Remove warning from MySQL/MariaDB reflection \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Improve readability of benchmark results \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/547\"\u003e#547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker container \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/546\"\u003e#546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf (mariadb): Stop converting WKB to WKT \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/545\"\u003e#545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issu...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1401","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1401","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1401/packages"}},{"old_version":"47.0.0","new_version":"50.1.0","update_type":"major","path":null,"pr_created_at":"2025-12-29T18:38:50.000Z","version_change":"47.0.0 → 50.1.0","issue":{"uuid":"3768072730","node_id":"PR_kwDOHTdvBs663EKr","number":1397,"state":"open","title":"deps(ibis): bump the all group across 1 directory with 32 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-12-29T18:38:50.000Z","updated_at":"2025-12-29T18:39:07.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":32,"packages":[{"name":"fastapi","old_version":"0.120.1","new_version":"0.128.0","repository_url":"https://github.com/fastapi/fastapi"},{"name":"pydantic","old_version":"2.10.6","new_version":"2.12.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.45.0","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.2.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"orjson","old_version":"3.10.16","new_version":"3.11.5","repository_url":"https://github.com/ijl/orjson"},{"name":"geopandas","old_version":"1.1.1","new_version":"1.1.2","repository_url":"https://github.com/geopandas/geopandas"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.18.1","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"anyio","old_version":"4.10.0","new_version":"4.12.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"duckdb","old_version":"1.3.2","new_version":"1.4.3","repository_url":"https://github.com/duckdb/duckdb-python"},{"name":"oracledb","old_version":"3.3.0","new_version":"3.4.1","repository_url":"https://github.com/oracle/python-oracledb"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.40.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"uvicorn-worker","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/Kludex/uvicorn-worker"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.10","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"50.1.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"starlette","old_version":"0.49.1","new_version":"0.50.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"databricks-sql-connector","old_version":"4.1.4","new_version":"4.2.3","repository_url":"https://github.com/databricks/databricks-sql-python"},{"name":"databricks-sdk","old_version":"0.73.0","new_version":"0.76.0","repository_url":"https://github.com/databricks/databricks-sdk-py"},{"name":"jupyterlab","old_version":"4.4.9","new_version":"4.5.1","repository_url":"https://github.com/jupyterlab/jupyterlab"},{"name":"ipykernel","old_version":"6.30.1","new_version":"7.1.0","repository_url":"https://github.com/ipython/ipykernel"},{"name":"ipywidgets","old_version":"8.1.7","new_version":"8.1.8","repository_url":"https://github.com/jupyter-widgets/ipywidgets"},{"name":"matplotlib","old_version":"3.10.6","new_version":"3.10.8","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"plotly","old_version":"6.3.0","new_version":"6.5.0","repository_url":"https://github.com/plotly/plotly.py"},{"name":"pytest","old_version":"8.3.5","new_version":"9.0.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.13.3","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.45","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.5.1","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.14.10","repository_url":"https://github.com/astral-sh/ruff"},{"name":"trino","old_version":"0.335.0","new_version":"0.336.0","repository_url":"https://github.com/trinodb/trino-python-client"},{"name":"psycopg2","old_version":"2.9.10","new_version":"2.9.11","repository_url":"https://github.com/psycopg/psycopg2"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.10.0","repository_url":"https://github.com/ClickHouse/clickhouse-connect"},{"name":"polars","old_version":"1.33.1","new_version":"1.36.1","repository_url":"https://github.com/pola-rs/polars"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 32 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.120.1` | `0.128.0` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.12.5` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.45.0` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.2.1` |\n| [orjson](https://github.com/ijl/orjson) | `3.10.16` | `3.11.5` |\n| [geopandas](https://github.com/geopandas/geopandas) | `1.1.1` | `1.1.2` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.18.1` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.10.0` | `4.12.0` |\n| [duckdb](https://github.com/duckdb/duckdb-python) | `1.3.2` | `1.4.3` |\n| [oracledb](https://github.com/oracle/python-oracledb) | `3.3.0` | `3.4.1` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.40.0` |\n| [uvicorn-worker](https://github.com/Kludex/uvicorn-worker) | `0.3.0` | `0.4.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.10` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `50.1.0` |\n| [starlette](https://github.com/Kludex/starlette) | `0.49.1` | `0.50.0` |\n| [databricks-sql-connector](https://github.com/databricks/databricks-sql-python) | `4.1.4` | `4.2.3` |\n| [databricks-sdk](https://github.com/databricks/databricks-sdk-py) | `0.73.0` | `0.76.0` |\n| [jupyterlab](https://github.com/jupyterlab/jupyterlab) | `4.4.9` | `4.5.1` |\n| [ipykernel](https://github.com/ipython/ipykernel) | `6.30.1` | `7.1.0` |\n| [ipywidgets](https://github.com/jupyter-widgets/ipywidgets) | `8.1.7` | `8.1.8` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.10.6` | `3.10.8` |\n| [plotly](https://github.com/plotly/plotly.py) | `6.3.0` | `6.5.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `9.0.2` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.13.3` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.45` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.5.1` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.14.10` |\n| [trino](https://github.com/trinodb/trino-python-client) | `0.335.0` | `0.336.0` |\n| [psycopg2](https://github.com/psycopg/psycopg2) | `2.9.10` | `2.9.11` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.10.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.33.1` | `1.36.1` |\n\n\nUpdates `fastapi` from 0.120.1 to 0.128.0\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's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.128.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e➖ Drop support for \u003ccode\u003epydantic.v1\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14609\"\u003e#14609\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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✅ Run performance tests only on Pydantic v2. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14608\"\u003e#14608\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.127.1\u003c/h2\u003e\n\u003ch3\u003eRefactors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🔊 Add a custom \u003ccode\u003eFastAPIDeprecationWarning\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14605\"\u003e#14605\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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📝 Add documentary to website. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14600\"\u003e#14600\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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🌐 Update translations for de (update-outdated). PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14602\"\u003e#14602\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Update translations for de (update-outdated). PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14581\"\u003e#14581\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\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🔧 Update pre-commit to use local Ruff instead of hook. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14604\"\u003e#14604\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Add missing tests for code examples. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14569\"\u003e#14569\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👷 Remove \u003ccode\u003elint\u003c/code\u003e job from \u003ccode\u003etest\u003c/code\u003e CI workflow. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14593\"\u003e#14593\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👷 Update secrets check. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14592\"\u003e#14592\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👷 Run CodSpeed tests in parallel to other tests to speed up CI. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14586\"\u003e#14586\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔨 Update scripts and pre-commit to autofix files. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14585\"\u003e#14585\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.127.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🔊 Add deprecation warnings when using \u003ccode\u003epydantic.v1\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14583\"\u003e#14583\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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 LLM prompt file for Korean, generated from the existing translations. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14546\"\u003e#14546\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔧 Add LLM prompt file for Japanese, generated from the existing translations. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14545\"\u003e#14545\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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⬆️ Upgrade OpenAI model for translations to gpt-5.2. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14579\"\u003e#14579\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.126.0\u003c/h2\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e➖ Drop support for Pydantic v1, keeping short temporary support for Pydantic v2's \u003ccode\u003epydantic.v1\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14575\"\u003e#14575\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8322a4445a3b25acd9b26b61192571b2d92f9bcd\"\u003e\u003ccode\u003e8322a44\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.128.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/4b2cfcfd34d0b2e158a05b377426e0c8376b94de\"\u003e\u003ccode\u003e4b2cfcf\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/e3006305518a56ea35f62a31748ad26fe4356fcc\"\u003e\u003ccode\u003ee300630\u003c/code\u003e\u003c/a\u003e ➖ Drop support for \u003ccode\u003epydantic.v1\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14609\"\u003e#14609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/1b3bea8b6be2220cc1544653ea785d2134fcb35b\"\u003e\u003ccode\u003e1b3bea8\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/34e884156f38dff4094a7764ff895c4d4b872060\"\u003e\u003ccode\u003e34e8841\u003c/code\u003e\u003c/a\u003e ✅ Run performance tests only on Pydantic v2 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14608\"\u003e#14608\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/cd90c78391f86f3fd06d5b327bffad9666b05b44\"\u003e\u003ccode\u003ecd90c78\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.127.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/93f4dfd88b7d62bda89eb521ebd9322e357e6fff\"\u003e\u003ccode\u003e93f4dfd\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/535b5daa317a9d1d1f9a1058e57650a7beefa861\"\u003e\u003ccode\u003e535b5da\u003c/code\u003e\u003c/a\u003e 🔊 Add a custom \u003ccode\u003eFastAPIDeprecationWarning\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14605\"\u003e#14605\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/6b53786f626db95a42fd0f66afd360bab161f4b1\"\u003e\u003ccode\u003e6b53786\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d98f4eb56eae3155034fe631d9639d95171fb9ab\"\u003e\u003ccode\u003ed98f4eb\u003c/code\u003e\u003c/a\u003e 🔧 Update pre-commit to use local Ruff instead of hook (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14604\"\u003e#14604\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.120.1...0.128.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.10.6 to 2.12.5\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.5 2025-11-26\u003c/h2\u003e\n\u003ch2\u003ev2.12.5 (2025-11-26)\u003c/h2\u003e\n\u003cp\u003eThis is the fifth 2.12 patch release, addressing an issue with the \u003ccode\u003eMISSING\u003c/code\u003e sentinel and providing several documentation improvements.\u003c/p\u003e\n\u003cp\u003eThe next 2.13 minor release will be published in a couple weeks, and will include a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature addressing\nthe remaining unexpected changes to the \u003cem\u003eserialize as any\u003c/em\u003e behavior.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix pickle error when using \u003ccode\u003emodel_construct()\u003c/code\u003e on a model with \u003ccode\u003eMISSING\u003c/code\u003e as a default value by \u003ca href=\"https://github.com/ornariece\"\u003e\u003ccode\u003e@​ornariece\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12522\"\u003e#12522\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eSeveral updates to the documentation by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\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.12.4...v2.12.5\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.4...v2.12.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.4 2025-11-05\u003c/h2\u003e\n\u003ch2\u003ev2.12.4 (2025-11-05)\u003c/h2\u003e\n\u003cp\u003eThis is the fourth 2.12 patch release, fixing more regressions, and reverting a change in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis patch release also fixes an issue with the serialization of IP address types, when \u003ccode\u003eserialize_as_any\u003c/code\u003e is used. The next patch release\nwill try to address the remaining issues with \u003cem\u003eserialize as any\u003c/em\u003e behavior by introducing a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature, that\nshould be used in most cases in place of \u003cem\u003eserialize as any\u003c/em\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with forward references in parent \u003ccode\u003eTypedDict\u003c/code\u003e classes 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/12427\"\u003e#12427\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis issue is only relevant on Python 3.14 and greater.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExclude fields with \u003ccode\u003eexclude_if\u003c/code\u003e from JSON Schema required fields 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/12430\"\u003e#12430\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRevert URL percent-encoding of credentials in the \u003ccode\u003ebuild()\u003c/code\u003e method of the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1833\"\u003epydantic-core#1833\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis was initially considered as a bugfix, but caused regressions and as such was fully reverted. The next release will include\nan opt-in option to percent-encode components of the URL.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd type inference for IP address types by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1868\"\u003epydantic-core#1868\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe 2.12 changes to the \u003ccode\u003eserialize_as_any\u003c/code\u003e behavior made it so that IP address types could not properly serialize to JSON.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid getting default values from defaultdict by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1853\"\u003epydantic-core#1853\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis fixes a subtle regression in the validation behavior of the \u003ca href=\"https://docs.python.org/3/library/collections.html#collections.defaultdict\"\u003e\u003ccode\u003ecollections.defaultdict\u003c/code\u003e\u003c/a\u003e\ntype.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with field serializers on nested typed dictionaries by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1879\"\u003epydantic-core#1879\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd more \u003ccode\u003epydantic-core\u003c/code\u003e builds for the three-threaded version of Python 3.14 by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1864\"\u003epydantic-core#1864\u003c/a\u003e.\u003c/p\u003e\n\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.12.3...v2.12.4\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.3...v2.12.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.3 2025-10-17\u003c/h2\u003e\n\u003ch2\u003ev2.12.3 (2025-10-17)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eThis is the third 2.13 patch release, fixing issues related to the \u003ccode\u003eFieldInfo\u003c/code\u003e class, and reverting a change to the supported \u003ca href=\"https://docs.pydantic.dev/latest/concepts/validators/#model-validators\"\u003e\u003cem\u003eafter\u003c/em\u003e model validator\u003c/a\u003e function signatures.\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\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.5 (2025-11-26)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis is the fifth 2.12 patch release, addressing an issue with the \u003ccode\u003eMISSING\u003c/code\u003e sentinel and providing several documentation improvements.\u003c/p\u003e\n\u003cp\u003eThe next 2.13 minor release will be published in a couple weeks, and will include a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature addressing\nthe remaining unexpected changes to the \u003cem\u003eserialize as any\u003c/em\u003e behavior.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix pickle error when using \u003ccode\u003emodel_construct()\u003c/code\u003e on a model with \u003ccode\u003eMISSING\u003c/code\u003e as a default value by \u003ca href=\"https://github.com/ornariece\"\u003e\u003ccode\u003e@​ornariece\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12522\"\u003e#12522\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eSeveral updates to the documentation by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.12.4 (2025-11-05)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.4\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis is the fourth 2.12 patch release, fixing more regressions, and reverting a change in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis patch release also fixes an issue with the serialization of IP address types, when \u003ccode\u003eserialize_as_any\u003c/code\u003e is used. The next patch release\nwill try to address the remaining issues with \u003cem\u003eserialize as any\u003c/em\u003e behavior by introducing a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature, that\nshould be used in most cases in place of \u003cem\u003eserialize as any\u003c/em\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with forward references in parent \u003ccode\u003eTypedDict\u003c/code\u003e classes 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/12427\"\u003e#12427\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis issue is only relevant on Python 3.14 and greater.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExclude fields with \u003ccode\u003eexclude_if\u003c/code\u003e from JSON Schema required fields 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/12430\"\u003e#12430\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRevert URL percent-encoding of credentials in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in\n\u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1833\"\u003epydantic-core#1833\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis was initially considered as a bugfix, but caused regressions and as such was fully reverted. The next release will include\nan opt-in option to percent-encode components of the URL.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd type inference for IP address types by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1868\"\u003epydantic-core#1868\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe 2.12 changes to the \u003ccode\u003eserialize_as_any\u003c/code\u003e behavior made it so that IP address types could not properly serialize to JSON.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid getting default values from defaultdict by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1853\"\u003epydantic-core#1853\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis fixes a subtle regression in the validation behavior of the \u003ca href=\"https://docs.python.org/3/library/collections.html#collections.defaultdict\"\u003e\u003ccode\u003ecollections.defaultdict\u003c/code\u003e\u003c/a\u003e\ntype.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with field serializers on nested typed dictionaries by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1879\"\u003epydantic-core#1879\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd more \u003ccode\u003epydantic-core\u003c/code\u003e builds for the three-threaded version of Python 3.14 by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1864\"\u003epydantic-core#1864\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.12.3 (2025-10-17)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.3\"\u003eGitHub release\u003c/a\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/pydantic/pydantic/commit/bd2d0dd0137dfa1a8fdff2529b9dfb1547980150\"\u003e\u003ccode\u003ebd2d0dd\u003c/code\u003e\u003c/a\u003e Prepare release v2.12.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/7d0302ec7ec2cf115de3450a615522875bdd8b56\"\u003e\u003ccode\u003e7d0302e\u003c/code\u003e\u003c/a\u003e Document security implications when using \u003ccode\u003ecreate_model()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/e9ef980def726b6f59b6c495ddc9dc259a0228db\"\u003e\u003ccode\u003ee9ef980\u003c/code\u003e\u003c/a\u003e Fix typo in Standard Library Types documentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/f2c20c00c265a31a13c48f9bae923a87c829952e\"\u003e\u003ccode\u003ef2c20c0\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003epydantic-docs\u003c/code\u003e dev dependency, make use of versioning blocks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a76c1aa26f2d64a3fd080ac515d80832689197e8\"\u003e\u003ccode\u003ea76c1aa\u003c/code\u003e\u003c/a\u003e Update documentation about JSON Schema\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/8cbc72ca489891e574fba45238ee8bd4f8e719a2\"\u003e\u003ccode\u003e8cbc72c\u003c/code\u003e\u003c/a\u003e Add documentation about custom \u003ccode\u003e__init__()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/99eba599069da137b3f708ffa74627f2b456ba73\"\u003e\u003ccode\u003e99eba59\u003c/code\u003e\u003c/a\u003e Add additional test for \u003ccode\u003eFieldInfo.get_default()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c71076988e507ea93844c77c3bf0bbb85a5716af\"\u003e\u003ccode\u003ec710769\u003c/code\u003e\u003c/a\u003e Special case \u003ccode\u003eMISSING\u003c/code\u003e sentinel in \u003ccode\u003esmart_deepcopy()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/20a9d771c210fd77d52366ac923258c4c199727f\"\u003e\u003ccode\u003e20a9d77\u003c/code\u003e\u003c/a\u003e Do not delete mock validator/serializer in \u003ccode\u003erebuild_dataclass()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c86515a3a8f2120148fab2eaedd3bc45925779d0\"\u003e\u003ccode\u003ec86515a\u003c/code\u003e\u003c/a\u003e Update parts of the model and \u003ccode\u003erevalidate_instances\u003c/code\u003e documentation\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.12.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.45.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003egoogle-auth 2.45.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.44.0...v2.45.0\"\u003e2.45.0\u003c/a\u003e (2025-12-15)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdding Agent Identity bound token support and handling certificate mismatches with retries (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1890\"\u003e#1890\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b32c934e\"\u003eb32c934e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003egoogle-auth 2.44.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.43.0...v2.44.0\"\u003e2.44.0\u003c/a\u003e (2025-12-12)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eMDS connections use mTLS (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1856\"\u003e#1856\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0387bb95\"\u003e0387bb95\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003esupport Python 3.14 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1822\"\u003e#1822\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0f7097e7\"\u003e0f7097e7\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eadd ecdsa p-384 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1872\"\u003e#1872\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/39c381a5\"\u003e39c381a5\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd shlex to correctly parse executable commands with spaces (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1855\"\u003e#1855\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/cf6fc3cc\"\u003ecf6fc3cc\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eImplement token revocation in STS client and add revoke() metho… (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1849\"\u003e#1849\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/d5638986\"\u003ed5638986\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd temporary patch to workload cert logic to accomodate Cloud Run mis-configuration (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1880\"\u003e#1880\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/78de7907\"\u003e78de7907\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDelegate workload cert and key default lookup to helper function (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1877\"\u003e#1877\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b0993c7e\"\u003eb0993c7e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUse public refresh method for source credentials in ImpersonatedCredentials (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1884\"\u003e#1884\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e0c3296f\"\u003ee0c3296f\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003egoogle-auth 2.43.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.42.1...v2.43.0\"\u003e2.43.0\u003c/a\u003e (2025-11-05)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd public wrapper for _mtls_helper.check_use_client_cert which enables mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE is not set, when the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1859\"\u003e#1859\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/1535eccb\"\u003e1535eccb\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eEnable mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE  is not set, if the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1848\"\u003e#1848\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/395e405b\"\u003e395e405b\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eonboard \u003ccode\u003egoogle-auth\u003c/code\u003e to librarian (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1838\"\u003e#1838\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/c503eaa5\"\u003ec503eaa5\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.42.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.42.0...v2.42.1\"\u003e2.42.1\u003c/a\u003e (2025-10-30)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCatch ValueError for json.loads() (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1842\"\u003e#1842\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b074cad460589633adfc6744c01726ae86f2aa2b\"\u003eb074cad\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.42.0\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.44.0...v2.45.0\"\u003e2.45.0\u003c/a\u003e (2025-12-15)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdding Agent Identity bound token support and handling certificate mismatches with retries (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1890\"\u003e#1890\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b32c934e6b0d09b94c467cd432a0a635e8b05f5c\"\u003eb32c934e6b0d09b94c467cd432a0a635e8b05f5c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.43.0...v2.44.0\"\u003e2.44.0\u003c/a\u003e (2025-12-13)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esupport Python 3.14 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1822\"\u003e#1822\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0f7097e78f247665b6ef0287d482033f7be2ed6d\"\u003e0f7097e78f247665b6ef0287d482033f7be2ed6d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd ecdsa p-384 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1872\"\u003e#1872\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/39c381a5f6881b590025f36d333d12eff8dc60fc\"\u003e39c381a5f6881b590025f36d333d12eff8dc60fc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMDS connections use mTLS (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1856\"\u003e#1856\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0387bb95713653d47e846cad3a010eb55ef2db4c\"\u003e0387bb95713653d47e846cad3a010eb55ef2db4c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImplement token revocation in STS client and add revoke() metho… (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1849\"\u003e#1849\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/d5638986ca03ee95bfffa9ad821124ed7e903e63\"\u003ed5638986ca03ee95bfffa9ad821124ed7e903e63\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd shlex to correctly parse executable commands with spaces (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1855\"\u003e#1855\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/cf6fc3cced78bc1362a7fe596c32ebc9ce03c26b\"\u003ecf6fc3cced78bc1362a7fe596c32ebc9ce03c26b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse public refresh method for source credentials in ImpersonatedCredentials (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1884\"\u003e#1884\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e0c3296f471747258f6d98d2d9bfde636358ecde\"\u003ee0c3296f471747258f6d98d2d9bfde636358ecde\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd temporary patch to workload cert logic to accomodate Cloud Run mis-configuration (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1880\"\u003e#1880\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/78de7907b8bdb7b5510e3c6fa8a3f3721e2436d7\"\u003e78de7907b8bdb7b5510e3c6fa8a3f3721e2436d7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDelegate workload cert and key default lookup to helper function (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1877\"\u003e#1877\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b0993c7edaba505d0fb0628af28760c43034c959\"\u003eb0993c7edaba505d0fb0628af28760c43034c959\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-python/compare/google-auth-v2.42.1...google-auth-v2.43.0\"\u003e2.43.0\u003c/a\u003e (2025-11-05)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd public wrapper for _mtls_helper.check_use_client_cert which enables mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE is not set, when the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1859\"\u003e#1859\u003c/a\u003e) Add public wrapper for check_use_client_cert which enables mTLS if\nGOOGLE_API_USE_CLIENT_CERTIFICATE is not set, when the MWID/X.509 cert\nsources detected. Also, fix check_use_client_cert to return boolean\nvalue.\nChange \u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1848\"\u003e#1848\u003c/a\u003e added the check_use_client_cert method that helps know if\nclient cert should be used for mTLS connection. However, that was in a\nprivate class, thus, created a public wrapper of the same function so\nthat it can be used by python Client Libraries. Also, updated\ncheck_use_client_cert to return a boolean value instead of existing\nstring value for better readability and future scope.\n--------- (\u003ca href=\"https://github.com/googleapis/google-cloud-python/commit/1535eccbff0ad8f3fd6a9775316ac8b77dca66ba\"\u003e1535eccbff0ad8f3fd6a9775316ac8b77dca66ba\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnable mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE  is not set, if the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1848\"\u003e#1848\u003c/a\u003e) The Python SDK will use a hybrid approach for mTLS enablement:\u003c/li\u003e\n\u003c/ul\u003e\n\u003cul\u003e\n\u003cli\u003eIf the GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is set\n(either true or false), the SDK will respect that setting. This is\nnecessary for test scenarios and users who need to explicitly control\nmTLS behavior.\u003c/li\u003e\n\u003cli\u003eIf the GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is not\nset, the SDK will automatically enable mTLS only if it detects Managed\nWorkload Identity (MWID) or X.509 Workforce Identity Federation (WIF)\ncertificate sources. In other cases where the variable is not set, mTLS\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/googleapis/google-auth-library-python/commit/08fabf776c02dc6a70472b3ddd9733d66d0053bf\"\u003e\u003ccode\u003e08fabf7\u003c/code\u003e\u003c/a\u003e chore: librarian release pull request: 20251215T132028Z (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1891\"\u003e#1891\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b32c934e6b0d09b94c467cd432a0a635e8b05f5c\"\u003e\u003ccode\u003eb32c934\u003c/code\u003e\u003c/a\u003e feat: Adding Agent Identity bound token support and handling certificate mism...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/262eb9e33d58ffeb536ecd083c22d9fb12c808e6\"\u003e\u003ccode\u003e262eb9e\u003c/code\u003e\u003c/a\u003e chore: librarian release pull request: 20251212T161150Z (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1888\"\u003e#1888\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0f7097e78f247665b6ef0287d482033f7be2ed6d\"\u003e\u003ccode\u003e0f7097e\u003c/code\u003e\u003c/a\u003e feat: support Python 3.14 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1822\"\u003e#1822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e0c3296f471747258f6d98d2d9bfde636358ecde\"\u003e\u003ccode\u003ee0c3296\u003c/code\u003e\u003c/a\u003e fix(auth): Use public refresh method for source credentials in ImpersonatedCr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/78de7907b8bdb7b5510e3c6fa8a3f3721e2436d7\"\u003e\u003ccode\u003e78de790\u003c/code\u003e\u003c/a\u003e fix(auth): Add temporary patch to workload cert logic to accomodate Cloud Run...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3e8a56687fd050ff44a35cc8db0e95e996648173\"\u003e\u003ccode\u003e3e8a566\u003c/code\u003e\u003c/a\u003e chore(tests): allow expired secret in system tests (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1883\"\u003e#1883\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b0993c7edaba505d0fb0628af28760c43034c959\"\u003e\u003ccode\u003eb0993c7\u003c/code\u003e\u003c/a\u003e fix(auth): Delegate workload cert and key default lookup to helper function (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2c374d36a61569b75d11c17fae124d591c52ddc6\"\u003e\u003ccode\u003e2c374d3\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1879\"\u003e#1879\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/39c381a5f6881b590025f36d333d12eff8dc60fc\"\u003e\u003ccode\u003e39c381a\u003c/code\u003e\u003c/a\u003e feat: add ecdsa p-384 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1872\"\u003e#1872\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.45.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.2.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.2.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport reading .env from FIFOs (Unix) by \u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CI to use trusted publishing on PyPI\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/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003estyle: upgrade to use ruff by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/567\"\u003etheskumar/python-dotenv#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse sys.exit() instead of exit() by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/568\"\u003etheskumar/python-dotenv#568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat:  add \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e flag to disable load_dotenv (fixes \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/510\"\u003e#510\u003c/a\u003e) by \u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded Python@3.14: Github CI \u0026amp; tox.ini by \u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eocs: clarify what load_dotenv() does in README by \u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group across 1 directory with 2 updates 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/theskumar/python-dotenv/pull/577\"\u003etheskumar/python-dotenv#577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove project metadata and config to pyproject.toml by \u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\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/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: ensure find_dotenv work reliably on python 3.13 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003etheskumar/python-dotenv#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cli): issue with execvpe on Windows by \u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\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/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a security policy by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/512\"\u003etheskumar/python-dotenv#512\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep GitHub Actions up to date with GitHub's Dependabot by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/506\"\u003etheskumar/python-dotenv#506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix multiline string in test.yml \u0026amp; use fail-fast strategy by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/514\"\u003etheskumar/python-dotenv#514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnhance dotenv run: Switch to execvpe for better resource management and signal handling by \u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add py3.13 to test.yml by \u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 trove classifier by \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for python 3.13 and drop 3.8 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/551\"\u003etheskumar/python-dotenv#551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update README.md by \u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSome more s/Python-dotenv/python-dotenv/ by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/552\"\u003etheskumar/python-dotenv#552\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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.2.1] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMove more config to \u003ccode\u003epyproject.toml\u003c/code\u003e, removed \u003ccode\u003esetup.cfg\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for reading \u003ccode\u003e.env\u003c/code\u003e from FIFOs (Unix) by [\u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.2.0] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade build system to use PEP 517 \u0026amp; PEP 518 to use \u003ccode\u003ebuild\u003c/code\u003e and \u003ccode\u003epyproject.toml\u003c/code\u003e by [\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/583\"\u003e#583\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14 by [\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for disabling of \u003ccode\u003eload_dotenv()\u003c/code\u003e using \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e env var. by [\u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/569\"\u003e#569\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCLI: revert the use of execvpe on Windows by [\u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003e#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.0] - 2025-03-25\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFeature\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for python 3.13\u003c/li\u003e\n\u003cli\u003eEnhance \u003ccode\u003edotenv run\u003c/code\u003e, switch to \u003ccode\u003eexecvpe\u003c/code\u003e for better resource management and signal handling (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/523\"\u003e#523\u003c/a\u003e) by [\u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efind_dotenv\u003c/code\u003e and \u003ccode\u003eload_dotenv\u003c/code\u003e now correctly looks up at the current directory when running in debugger or pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e by [\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e])\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eMisc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8\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/theskumar/python-dotenv/commit/eaf2a9129ccec6febda0f741eb3bb852c3f947bd\"\u003e\u003ccode\u003eeaf2a91\u003c/code\u003e\u003c/a\u003e Do not remove .coverage file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8716196891532eeb67d24a513e8d975437f5e8b7\"\u003e\u003ccode\u003e8716196\u003c/code\u003e\u003c/a\u003e Bump version: 1.2.0 → 1.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/b87807fcad6e74332c3c63a75c92ce5814fa7a55\"\u003e\u003ccode\u003eb87807f\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/3af77d3029eb717aeec0a3c25f751b6a614a6d3c\"\u003e\u003ccode\u003e3af77d3\u003c/code\u003e\u003c/a\u003e Support reading .env from FIFOs (Unix) (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/467ee22fccb2fb7ccda71a0d9e37c6ea3cb8d993\"\u003e\u003ccode\u003e467ee22\u003c/code\u003e\u003c/a\u003e Fix test failures after moving config to pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/76999e741d87e958ebd74e3ae9834c0514e77a59\"\u003e\u003ccode\u003e76999e7\u003c/code\u003e\u003c/a\u003e Move more config pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/222ce2cc58ebc82ba78da8781269267b9f585932\"\u003e\u003ccode\u003e222ce2c\u003c/code\u003e\u003c/a\u003e Update to use trusted publisher on pypi\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8ed4f79d202eba582b44bdf1f5deb726dd68783d\"\u003e\u003ccode\u003e8ed4f79\u003c/code\u003e\u003c/a\u003e Update docs requirements\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/5bf882241c607445bf02cf5b241535d62e2b99c1\"\u003e\u003ccode\u003e5bf8822\u003c/code\u003e\u003c/a\u003e Bump version: 1.1.1 → 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/1fe11cc737ee4399e9c51d1b69b0dd858f6b4669\"\u003e\u003ccode\u003e1fe11cc\u003c/code\u003e\u003c/a\u003e upadate changelog\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `orjson` from 3.10.16 to 3.11.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ijl/orjson/releases\"\u003eorjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.5\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eShow simple error message instead of traceback when attempting to\nbuild on unsupported Python versions.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.4\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eABI compatibility with CPython 3.15 alpha 1.\u003c/li\u003e\n\u003cli\u003ePublish PyPI wheels for 3.14 and manylinux i686, manylinux arm7,\nmanylinux ppc64le, manylinux s390x.\u003c/li\u003e\n\u003cli\u003eBuild now requires a C compiler.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared buffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17\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/ijl/orjson/blob/master/CHANGELOG.md\"\u003eorjson's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.5 - 2025-12-06\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eShow simple error message instead of traceback when attempting to\nbuild on unsupported Python versions.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.4 - 2025-10-24\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eABI compatibility with CPython 3.15 alpha 1.\u003c/li\u003e\n\u003cli\u003ePublish PyPI wheels for 3.14 and manylinux i686, manylinux arm7,\nmanylinux ppc64le, manylinux s390x.\u003c/li\u003e\n\u003cli\u003eBuild now requires a C compiler.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.3 - 2025-08-26\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1 - 2025-07-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures. This was introduced in 3.11.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 - 2025-07-15\u003c/h2\u003e\n\u003ch3\u003eChanged\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/ijl/orjson/commit/fb3eb1f729c7e7b019f780af5695722c99c7c695\"\u003e\u003ccode\u003efb3eb1f\u003c/code\u003e\u003c/a\u003e 3.11.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/52688e02c51c845cde24a46cd1011a6010d10eb8\"\u003e\u003ccode\u003e52688e0\u003c/code\u003e\u003c/a\u003e Record contributors in headers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/dc083e87d5262e7dde3ba4b1d2a377b5b065a27c\"\u003e\u003ccode\u003edc083e8\u003c/code\u003e\u003c/a\u003e Further compatibility and build misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/18f0186d47fbadd53c9db4e39a442d5b04225418\"\u003e\u003ccode\u003e18f0186\u003c/code\u003e\u003c/a\u003e Compatibility and build misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/a4fdeb3aff125d501ec0dd0577f9b38b2b977b4f\"\u003e\u003ccode\u003ea4fdeb3\u003c/code\u003e\u003c/a\u003e 3.11.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2e80d68afacafca8751e6a64ca05d0d4087dbd15\"\u003e\u003ccode\u003e2e80d68\u003c/code\u003e\u003c/a\u003e unlikely to cold_path, remove intrinsics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/27edea92f8da2fdfc3f1342474e2f1686f1edf55\"\u003e\u003ccode\u003e27edea9\u003c/code\u003e\u003c/a\u003e FFI through crate::ffi, partial non-CPython compatibility\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/416a8c9578da780d0d58b5e6b751793deafc610d\"\u003e\u003ccode\u003e416a8c9\u003c/code\u003e\u003c/a\u003e Unconditionally build yyjson\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/c8c1a17dca8436a2fee05ca060febd096e653d98\"\u003e\u003ccode\u003ec8c1a17\u003c/code\u003e\u003c/a\u003e edition 2024\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/af4179a1fa0aafffd0f867203b6c36e9a522f165\"\u003e\u003ccode\u003eaf4179a\u003c/code\u003e\u003c/a\u003e build maintenance, panic_immediate_abort break, test 3.15\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ijl/orjson/compare/3.10.16...3.11.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geopandas` from 1.1.1 to 1.1.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geopandas/geopandas/releases\"\u003egeopandas's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.1.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix an issue that caused an error in \u003ccode\u003eGeoDataFrame.from_features\u003c/code\u003e when there is no \u003ccode\u003eproperties\u003c/code\u003e field (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3599\"\u003e#3599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eread_file\u003c/code\u003e and \u003ccode\u003eto_file\u003c/code\u003e errors (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3682\"\u003e#3682\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eread_parquet\u003c/code\u003e with \u003ccode\u003eto_pandas_kwargs\u003c/code\u003e for complex (list/struct) arrow types (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3640\"\u003e#3640\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evalue_counts\u003c/code\u003e on GeoSeries now preserves CRS in index (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3669\"\u003e#3669\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix f-string placeholders appearing in error messages when \u003ccode\u003epyogrio\u003c/code\u003e cannot be imported (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3682\"\u003e#3682\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eread_parquet\u003c/code\u003e with \u003ccode\u003eto_pandas_kwargs\u003c/code\u003e for complex (list/struct) arrow types (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3640\"\u003e#3640\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e.to_json\u003c/code\u003e now provides a clearer error message when called on a GeoDataFrame without an active geometry\ncolumn (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3648\"\u003e#3648\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eCalling \u003ccode\u003edel gdf[\u0026quot;geometry\u0026quot;]\u003c/code\u003e now will downcast to a \u003ccode\u003epd.DataFrame\u003c/code\u003e if there are no geometry columns left\nin the dataframe (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3648\"\u003e#3648\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix SQL injection in \u003ccode\u003eto_postgis\u003c/code\u003e via geometry column name (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3681\"\u003e#3681\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geopandas/geopandas/compare/v1.1.1...v1.1.2\"\u003ehttps://github.com/geopandas/geopandas/compare/v1.1.1...v1.1.2\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/geopandas/geopandas/blob/main/CHANGELOG.md\"\u003egeopandas's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.1.2 (December 22, 2025)\u003c/h2\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix an issue that caused an error in \u003ccode\u003eGeoDataFrame.from_features\u003c/code\u003e when there is no \u003ccode\u003eproperties\u003c/code\u003e field (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3599\"\u003e#3599\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eread_file\u003c/code\u003e and \u003ccode\u003eto_file\u003c/code\u003e errors (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3682\"\u003e#3682\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eread_parquet\u003c/code\u003e with \u003ccode\u003eto_pandas_kwargs\u003c/code\u003e for complex (list/struct) arrow types (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3640\"\u003e#3640\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evalue_counts\u003c/code\u003e on GeoSeries now preserves CRS in index (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3669\"\u003e#3669\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix f-string placeholders appearing in error messages when \u003ccode\u003epyogrio\u003c/code\u003e cannot be imported (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3682\"\u003e#3682\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eread_parquet\u003c/code\u003e with \u003ccode\u003eto_pandas_kwargs\u003c/code\u003e for complex (list/struct) arrow types (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3640\"\u003e#3640\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e.to_json\u003c/code\u003e now provides a clearer error message when called on a GeoDataFrame without an active geometry\ncolumn (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3648\"\u003e#3648\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eCalling \u003ccode\u003edel gdf[\u0026quot;geometry\u0026quot;]\u003c/code\u003e now will downcast to a \u003ccode\u003epd.DataFrame\u003c/code\u003e if there are no geometry columns left\nin the dataframe (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3648\"\u003e#3648\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix SQL injection in \u003ccode\u003eto_postgis\u003c/code\u003e via geometry column name (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3681\"\u003e#3681\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/geopandas/geopandas/commit/81214bf9f3eaba9f5fdcfd141ae8d16fa17fd860\"\u003e\u003ccode\u003e81214bf\u003c/code\u003e\u003c/a\u003e RLS: backport fixes for 1.1.2 (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3693\"\u003e#3693\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/62dd4a2469bb6236b83fb91466a8183321da04da\"\u003e\u003ccode\u003e62dd4a2\u003c/code\u003e\u003c/a\u003e COMPAT: pandas 3 refactor breaks \u003cstrong\u003efinalize\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3611\"\u003e#3611\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3621\"\u003e#3621\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/geopandas/geopandas/compare/v1.1.1...v1.1.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geoalchemy2` from 0.17.1 to 0.18.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/releases\"\u003egeoalchemy2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix (mysql): Fix failing test for MySQL dialect by \u003ca href=\"https://github.com/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/567\"\u003egeoalchemy/geoalchemy2#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/570\"\u003egeoalchemy/geoalchemy2#570\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Allow scientific notation within WKT string by \u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/573\"\u003egeoalchemy/geoalchemy2#573\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.1 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/574\"\u003egeoalchemy/geoalchemy2#574\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/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/567\"\u003egeoalchemy/geoalchemy2#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/573\"\u003egeoalchemy/geoalchemy2#573\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.18.0...0.18.1\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.18.0...0.18.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/538\"\u003egeoalchemy/geoalchemy2#538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/540\"\u003egeoalchemy/geoalchemy2#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCompile literal binds by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/543\"\u003egeoalchemy/geoalchemy2#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/544\"\u003egeoalchemy/geoalchemy2#544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore (mariadb): Stop converting WKB to WKT by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/545\"\u003egeoalchemy/geoalchemy2#545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker containers by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/546\"\u003egeoalchemy/geoalchemy2#546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/547\"\u003egeoalchemy/geoalchemy2#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/553\"\u003egeoalchemy/geoalchemy2#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/554\"\u003egeoalchemy/geoalchemy2#554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Improve readbility of benchmark results by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/556\"\u003egeoalchemy/geoalchemy2#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/555\"\u003egeoalchemy/geoalchemy2#555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/557\"\u003egeoalchemy/geoalchemy2#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Remove warning message from MySQL/MariaDB reflection by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/560\"\u003egeoalchemy/geoalchemy2#560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/561\"\u003egeoalchemy/geoalchemy2#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: correct doc strings by \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/564\"\u003egeoalchemy/geoalchemy2#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.0 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/565\"\u003egeoalchemy/geoalchemy2#565\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/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.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/geoalchemy/geoalchemy2/blob/master/CHANGES.txt\"\u003egeoalchemy2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Allow scientific notation within WKT string - \u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/573\"\u003e#573\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix (mysql): Fix failing test for MySQL dialect - \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/567\"\u003e#567\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Fix doc strings for cache enabled - \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e(papacodebear/master) Fix: Remove warning from MySQL/MariaDB reflection \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Improve readability of benchmark results \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/547\"\u003e#547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker container \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/546\"\u003e#546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf (mariadb): Stop converting WKB to WKT \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/545\"\u003e#545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/544\"\u003e#544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Compile literal binds properly \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redi...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1397","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1397","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1397/packages"}},{"old_version":"47.0.0","new_version":"50.1.0","update_type":"major","path":null,"pr_created_at":"2025-12-15T18:44:22.000Z","version_change":"47.0.0 → 50.1.0","issue":{"uuid":"3731680920","node_id":"PR_kwDOHTdvBs64_Xbv","number":1388,"state":"open","title":"deps(ibis): bump the all group across 1 directory with 31 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-12-15T18:44:22.000Z","updated_at":"2025-12-15T18:44:36.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":31,"packages":[{"name":"fastapi","old_version":"0.120.1","new_version":"0.124.4","repository_url":"https://github.com/fastapi/fastapi"},{"name":"pydantic","old_version":"2.10.6","new_version":"2.12.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.44.0","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.2.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"orjson","old_version":"3.10.16","new_version":"3.11.5","repository_url":"https://github.com/ijl/orjson"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.18.1","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"anyio","old_version":"4.10.0","new_version":"4.12.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"duckdb","old_version":"1.3.2","new_version":"1.4.3","repository_url":"https://github.com/duckdb/duckdb-python"},{"name":"oracledb","old_version":"3.3.0","new_version":"3.4.1","repository_url":"https://github.com/oracle/python-oracledb"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.38.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"uvicorn-worker","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/Kludex/uvicorn-worker"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.10","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"50.1.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"starlette","old_version":"0.49.1","new_version":"0.50.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"databricks-sql-connector","old_version":"4.1.4","new_version":"4.2.2","repository_url":"https://github.com/databricks/databricks-sql-python"},{"name":"databricks-sdk","old_version":"0.73.0","new_version":"0.74.0","repository_url":"https://github.com/databricks/databricks-sdk-py"},{"name":"jupyterlab","old_version":"4.4.9","new_version":"4.5.1","repository_url":"https://github.com/jupyterlab/jupyterlab"},{"name":"ipykernel","old_version":"6.30.1","new_version":"7.1.0","repository_url":"https://github.com/ipython/ipykernel"},{"name":"ipywidgets","old_version":"8.1.7","new_version":"8.1.8","repository_url":"https://github.com/jupyter-widgets/ipywidgets"},{"name":"matplotlib","old_version":"3.10.6","new_version":"3.10.8","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"plotly","old_version":"6.3.0","new_version":"6.5.0","repository_url":"https://github.com/plotly/plotly.py"},{"name":"pytest","old_version":"8.3.5","new_version":"9.0.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.13.3","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.45","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.5.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.14.9","repository_url":"https://github.com/astral-sh/ruff"},{"name":"trino","old_version":"0.335.0","new_version":"0.336.0","repository_url":"https://github.com/trinodb/trino-python-client"},{"name":"psycopg2","old_version":"2.9.10","new_version":"2.9.11","repository_url":"https://github.com/psycopg/psycopg2"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.10.0","repository_url":"https://github.com/ClickHouse/clickhouse-connect"},{"name":"polars","old_version":"1.33.1","new_version":"1.36.1","repository_url":"https://github.com/pola-rs/polars"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 31 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.120.1` | `0.124.4` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.12.5` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.44.0` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.2.1` |\n| [orjson](https://github.com/ijl/orjson) | `3.10.16` | `3.11.5` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.18.1` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.10.0` | `4.12.0` |\n| [duckdb](https://github.com/duckdb/duckdb-python) | `1.3.2` | `1.4.3` |\n| [oracledb](https://github.com/oracle/python-oracledb) | `3.3.0` | `3.4.1` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.38.0` |\n| [uvicorn-worker](https://github.com/Kludex/uvicorn-worker) | `0.3.0` | `0.4.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.10` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `50.1.0` |\n| [starlette](https://github.com/Kludex/starlette) | `0.49.1` | `0.50.0` |\n| [databricks-sql-connector](https://github.com/databricks/databricks-sql-python) | `4.1.4` | `4.2.2` |\n| [databricks-sdk](https://github.com/databricks/databricks-sdk-py) | `0.73.0` | `0.74.0` |\n| [jupyterlab](https://github.com/jupyterlab/jupyterlab) | `4.4.9` | `4.5.1` |\n| [ipykernel](https://github.com/ipython/ipykernel) | `6.30.1` | `7.1.0` |\n| [ipywidgets](https://github.com/jupyter-widgets/ipywidgets) | `8.1.7` | `8.1.8` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.10.6` | `3.10.8` |\n| [plotly](https://github.com/plotly/plotly.py) | `6.3.0` | `6.5.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `9.0.2` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.13.3` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.45` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.5.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.14.9` |\n| [trino](https://github.com/trinodb/trino-python-client) | `0.335.0` | `0.336.0` |\n| [psycopg2](https://github.com/psycopg/psycopg2) | `2.9.10` | `2.9.11` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.10.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.33.1` | `1.36.1` |\n\n\nUpdates `fastapi` from 0.120.1 to 0.124.4\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's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.124.4\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix parameter aliases. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14371\"\u003e#14371\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.124.3\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for tagged union with discriminator inside of \u003ccode\u003eAnnotated\u003c/code\u003e with \u003ccode\u003eBody()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14512\"\u003e#14512\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRefactors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✅ Add set of tests for request parameters and alias. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14358\"\u003e#14358\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\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📝 Tweak links format. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14505\"\u003e#14505\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Update docs about re-raising validation errors, do not include string as is to not leak information. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14487\"\u003e#14487\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔥 Remove external links section. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14486\"\u003e#14486\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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🌐 Sync Russian docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14509\"\u003e#14509\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Sync German docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14488\"\u003e#14488\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\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👷 Tweak coverage to not pass Smokeshow max file size limit. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14507\"\u003e#14507\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Expand test matrix to include Windows and MacOS. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14171\"\u003e#14171\u003c/a\u003e by \u003ca href=\"https://github.com/svlandeg\"\u003e\u003ccode\u003e@​svlandeg\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.124.2\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for \u003ccode\u003eif TYPE_CHECKING\u003c/code\u003e,  non-evaluated stringified annotations. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14485\"\u003e#14485\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.124.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix handling arbitrary types when using \u003ccode\u003earbitrary_types_allowed=True\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14482\"\u003e#14482\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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📝 Add variants for code examples in \u0026quot;Advanced User Guide\u0026quot;. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14413\"\u003e#14413\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Update tech stack in project generation docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14472\"\u003e#14472\u003c/a\u003e by \u003ca href=\"https://github.com/alejsdev\"\u003e\u003ccode\u003e@​alejsdev\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✅ Add test for Pydantic v2, dataclasses, UUID, and \u003ccode\u003e__annotations__\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14477\"\u003e#14477\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.124.0\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/fastapi/fastapi/commit/b1d9769f97295a238df8c2d318ad65dd6a40c6ff\"\u003e\u003ccode\u003eb1d9769\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.124.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/89157a803c4c75332566a5ca499afd5358c42049\"\u003e\u003ccode\u003e89157a8\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d86c47477e4d91b5e1f07973b3437908558a8b4b\"\u003e\u003ccode\u003ed86c474\u003c/code\u003e\u003c/a\u003e 🐛 Fix parameter aliases (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14371\"\u003e#14371\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/3fe6522aaed4d36d6a38175a4a8137ee0fc62451\"\u003e\u003ccode\u003e3fe6522\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.124.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/80d1f732e5e10efe75e03427558271d46cd663e3\"\u003e\u003ccode\u003e80d1f73\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/c0556ac3a50420d0ba298b5641517c61f3c1c2c4\"\u003e\u003ccode\u003ec0556ac\u003c/code\u003e\u003c/a\u003e 🐛 Fix support for tagged union with discriminator inside of \u003ccode\u003eAnnotated\u003c/code\u003e with ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/1fcec88ad2df4541b6a81c4786c4d039dc745e1e\"\u003e\u003ccode\u003e1fcec88\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/f8b216df30f4d4fd36dccf7c7e885154a2699838\"\u003e\u003ccode\u003ef8b216d\u003c/code\u003e\u003c/a\u003e 🌐 Sync Russian docs (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14509\"\u003e#14509\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/4b905b614c84fbf4a278bdb69f4a22d52a43721e\"\u003e\u003ccode\u003e4b905b6\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/6c54bcefd3c37c8656e909980af00f86acea99c3\"\u003e\u003ccode\u003e6c54bce\u003c/code\u003e\u003c/a\u003e ✅ Add set of tests for request parameters and alias (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14358\"\u003e#14358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.120.1...0.124.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.10.6 to 2.12.5\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.5 2025-11-26\u003c/h2\u003e\n\u003ch2\u003ev2.12.5 (2025-11-26)\u003c/h2\u003e\n\u003cp\u003eThis is the fifth 2.12 patch release, addressing an issue with the \u003ccode\u003eMISSING\u003c/code\u003e sentinel and providing several documentation improvements.\u003c/p\u003e\n\u003cp\u003eThe next 2.13 minor release will be published in a couple weeks, and will include a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature addressing\nthe remaining unexpected changes to the \u003cem\u003eserialize as any\u003c/em\u003e behavior.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix pickle error when using \u003ccode\u003emodel_construct()\u003c/code\u003e on a model with \u003ccode\u003eMISSING\u003c/code\u003e as a default value by \u003ca href=\"https://github.com/ornariece\"\u003e\u003ccode\u003e@​ornariece\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12522\"\u003e#12522\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eSeveral updates to the documentation by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\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.12.4...v2.12.5\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.4...v2.12.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.4 2025-11-05\u003c/h2\u003e\n\u003ch2\u003ev2.12.4 (2025-11-05)\u003c/h2\u003e\n\u003cp\u003eThis is the fourth 2.12 patch release, fixing more regressions, and reverting a change in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis patch release also fixes an issue with the serialization of IP address types, when \u003ccode\u003eserialize_as_any\u003c/code\u003e is used. The next patch release\nwill try to address the remaining issues with \u003cem\u003eserialize as any\u003c/em\u003e behavior by introducing a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature, that\nshould be used in most cases in place of \u003cem\u003eserialize as any\u003c/em\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with forward references in parent \u003ccode\u003eTypedDict\u003c/code\u003e classes 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/12427\"\u003e#12427\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis issue is only relevant on Python 3.14 and greater.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExclude fields with \u003ccode\u003eexclude_if\u003c/code\u003e from JSON Schema required fields 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/12430\"\u003e#12430\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRevert URL percent-encoding of credentials in the \u003ccode\u003ebuild()\u003c/code\u003e method of the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1833\"\u003epydantic-core#1833\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis was initially considered as a bugfix, but caused regressions and as such was fully reverted. The next release will include\nan opt-in option to percent-encode components of the URL.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd type inference for IP address types by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1868\"\u003epydantic-core#1868\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe 2.12 changes to the \u003ccode\u003eserialize_as_any\u003c/code\u003e behavior made it so that IP address types could not properly serialize to JSON.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid getting default values from defaultdict by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1853\"\u003epydantic-core#1853\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis fixes a subtle regression in the validation behavior of the \u003ca href=\"https://docs.python.org/3/library/collections.html#collections.defaultdict\"\u003e\u003ccode\u003ecollections.defaultdict\u003c/code\u003e\u003c/a\u003e\ntype.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with field serializers on nested typed dictionaries by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1879\"\u003epydantic-core#1879\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd more \u003ccode\u003epydantic-core\u003c/code\u003e builds for the three-threaded version of Python 3.14 by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1864\"\u003epydantic-core#1864\u003c/a\u003e.\u003c/p\u003e\n\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.12.3...v2.12.4\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.3...v2.12.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.3 2025-10-17\u003c/h2\u003e\n\u003ch2\u003ev2.12.3 (2025-10-17)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eThis is the third 2.13 patch release, fixing issues related to the \u003ccode\u003eFieldInfo\u003c/code\u003e class, and reverting a change to the supported \u003ca href=\"https://docs.pydantic.dev/latest/concepts/validators/#model-validators\"\u003e\u003cem\u003eafter\u003c/em\u003e model validator\u003c/a\u003e function signatures.\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\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.5 (2025-11-26)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis is the fifth 2.12 patch release, addressing an issue with the \u003ccode\u003eMISSING\u003c/code\u003e sentinel and providing several documentation improvements.\u003c/p\u003e\n\u003cp\u003eThe next 2.13 minor release will be published in a couple weeks, and will include a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature addressing\nthe remaining unexpected changes to the \u003cem\u003eserialize as any\u003c/em\u003e behavior.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix pickle error when using \u003ccode\u003emodel_construct()\u003c/code\u003e on a model with \u003ccode\u003eMISSING\u003c/code\u003e as a default value by \u003ca href=\"https://github.com/ornariece\"\u003e\u003ccode\u003e@​ornariece\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12522\"\u003e#12522\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eSeveral updates to the documentation by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.12.4 (2025-11-05)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.4\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis is the fourth 2.12 patch release, fixing more regressions, and reverting a change in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis patch release also fixes an issue with the serialization of IP address types, when \u003ccode\u003eserialize_as_any\u003c/code\u003e is used. The next patch release\nwill try to address the remaining issues with \u003cem\u003eserialize as any\u003c/em\u003e behavior by introducing a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature, that\nshould be used in most cases in place of \u003cem\u003eserialize as any\u003c/em\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with forward references in parent \u003ccode\u003eTypedDict\u003c/code\u003e classes 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/12427\"\u003e#12427\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis issue is only relevant on Python 3.14 and greater.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExclude fields with \u003ccode\u003eexclude_if\u003c/code\u003e from JSON Schema required fields 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/12430\"\u003e#12430\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRevert URL percent-encoding of credentials in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in\n\u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1833\"\u003epydantic-core#1833\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis was initially considered as a bugfix, but caused regressions and as such was fully reverted. The next release will include\nan opt-in option to percent-encode components of the URL.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd type inference for IP address types by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1868\"\u003epydantic-core#1868\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe 2.12 changes to the \u003ccode\u003eserialize_as_any\u003c/code\u003e behavior made it so that IP address types could not properly serialize to JSON.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid getting default values from defaultdict by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1853\"\u003epydantic-core#1853\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis fixes a subtle regression in the validation behavior of the \u003ca href=\"https://docs.python.org/3/library/collections.html#collections.defaultdict\"\u003e\u003ccode\u003ecollections.defaultdict\u003c/code\u003e\u003c/a\u003e\ntype.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with field serializers on nested typed dictionaries by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1879\"\u003epydantic-core#1879\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd more \u003ccode\u003epydantic-core\u003c/code\u003e builds for the three-threaded version of Python 3.14 by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1864\"\u003epydantic-core#1864\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.12.3 (2025-10-17)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.3\"\u003eGitHub release\u003c/a\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/pydantic/pydantic/commit/bd2d0dd0137dfa1a8fdff2529b9dfb1547980150\"\u003e\u003ccode\u003ebd2d0dd\u003c/code\u003e\u003c/a\u003e Prepare release v2.12.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/7d0302ec7ec2cf115de3450a615522875bdd8b56\"\u003e\u003ccode\u003e7d0302e\u003c/code\u003e\u003c/a\u003e Document security implications when using \u003ccode\u003ecreate_model()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/e9ef980def726b6f59b6c495ddc9dc259a0228db\"\u003e\u003ccode\u003ee9ef980\u003c/code\u003e\u003c/a\u003e Fix typo in Standard Library Types documentation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/f2c20c00c265a31a13c48f9bae923a87c829952e\"\u003e\u003ccode\u003ef2c20c0\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003epydantic-docs\u003c/code\u003e dev dependency, make use of versioning blocks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a76c1aa26f2d64a3fd080ac515d80832689197e8\"\u003e\u003ccode\u003ea76c1aa\u003c/code\u003e\u003c/a\u003e Update documentation about JSON Schema\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/8cbc72ca489891e574fba45238ee8bd4f8e719a2\"\u003e\u003ccode\u003e8cbc72c\u003c/code\u003e\u003c/a\u003e Add documentation about custom \u003ccode\u003e__init__()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/99eba599069da137b3f708ffa74627f2b456ba73\"\u003e\u003ccode\u003e99eba59\u003c/code\u003e\u003c/a\u003e Add additional test for \u003ccode\u003eFieldInfo.get_default()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c71076988e507ea93844c77c3bf0bbb85a5716af\"\u003e\u003ccode\u003ec710769\u003c/code\u003e\u003c/a\u003e Special case \u003ccode\u003eMISSING\u003c/code\u003e sentinel in \u003ccode\u003esmart_deepcopy()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/20a9d771c210fd77d52366ac923258c4c199727f\"\u003e\u003ccode\u003e20a9d77\u003c/code\u003e\u003c/a\u003e Do not delete mock validator/serializer in \u003ccode\u003erebuild_dataclass()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c86515a3a8f2120148fab2eaedd3bc45925779d0\"\u003e\u003ccode\u003ec86515a\u003c/code\u003e\u003c/a\u003e Update parts of the model and \u003ccode\u003erevalidate_instances\u003c/code\u003e documentation\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.12.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.44.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003egoogle-auth 2.44.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.43.0...v2.44.0\"\u003e2.44.0\u003c/a\u003e (2025-12-12)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eMDS connections use mTLS (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1856\"\u003e#1856\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0387bb95\"\u003e0387bb95\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003esupport Python 3.14 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1822\"\u003e#1822\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0f7097e7\"\u003e0f7097e7\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eadd ecdsa p-384 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1872\"\u003e#1872\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/39c381a5\"\u003e39c381a5\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd shlex to correctly parse executable commands with spaces (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1855\"\u003e#1855\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/cf6fc3cc\"\u003ecf6fc3cc\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eImplement token revocation in STS client and add revoke() metho… (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1849\"\u003e#1849\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/d5638986\"\u003ed5638986\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd temporary patch to workload cert logic to accomodate Cloud Run mis-configuration (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1880\"\u003e#1880\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/78de7907\"\u003e78de7907\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDelegate workload cert and key default lookup to helper function (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1877\"\u003e#1877\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b0993c7e\"\u003eb0993c7e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUse public refresh method for source credentials in ImpersonatedCredentials (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1884\"\u003e#1884\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e0c3296f\"\u003ee0c3296f\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003egoogle-auth 2.43.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.42.1...v2.43.0\"\u003e2.43.0\u003c/a\u003e (2025-11-05)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd public wrapper for _mtls_helper.check_use_client_cert which enables mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE is not set, when the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1859\"\u003e#1859\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/1535eccb\"\u003e1535eccb\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eEnable mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE  is not set, if the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1848\"\u003e#1848\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/395e405b\"\u003e395e405b\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eonboard \u003ccode\u003egoogle-auth\u003c/code\u003e to librarian (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1838\"\u003e#1838\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/c503eaa5\"\u003ec503eaa5\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.42.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.42.0...v2.42.1\"\u003e2.42.1\u003c/a\u003e (2025-10-30)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCatch ValueError for json.loads() (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1842\"\u003e#1842\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b074cad460589633adfc6744c01726ae86f2aa2b\"\u003eb074cad\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.42.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.41.1...v2.42.0\"\u003e2.42.0\u003c/a\u003e (2025-10-24)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd trust boundary support for external accounts. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1809\"\u003e#1809\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/36ecb1d65883477d27faf9c2281fc289659b9903\"\u003e36ecb1d\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.43.0...v2.44.0\"\u003e2.44.0\u003c/a\u003e (2025-12-13)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esupport Python 3.14 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1822\"\u003e#1822\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0f7097e78f247665b6ef0287d482033f7be2ed6d\"\u003e0f7097e78f247665b6ef0287d482033f7be2ed6d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd ecdsa p-384 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1872\"\u003e#1872\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/39c381a5f6881b590025f36d333d12eff8dc60fc\"\u003e39c381a5f6881b590025f36d333d12eff8dc60fc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMDS connections use mTLS (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1856\"\u003e#1856\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0387bb95713653d47e846cad3a010eb55ef2db4c\"\u003e0387bb95713653d47e846cad3a010eb55ef2db4c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImplement token revocation in STS client and add revoke() metho… (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1849\"\u003e#1849\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/d5638986ca03ee95bfffa9ad821124ed7e903e63\"\u003ed5638986ca03ee95bfffa9ad821124ed7e903e63\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd shlex to correctly parse executable commands with spaces (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1855\"\u003e#1855\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/cf6fc3cced78bc1362a7fe596c32ebc9ce03c26b\"\u003ecf6fc3cced78bc1362a7fe596c32ebc9ce03c26b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse public refresh method for source credentials in ImpersonatedCredentials (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1884\"\u003e#1884\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e0c3296f471747258f6d98d2d9bfde636358ecde\"\u003ee0c3296f471747258f6d98d2d9bfde636358ecde\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd temporary patch to workload cert logic to accomodate Cloud Run mis-configuration (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1880\"\u003e#1880\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/78de7907b8bdb7b5510e3c6fa8a3f3721e2436d7\"\u003e78de7907b8bdb7b5510e3c6fa8a3f3721e2436d7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDelegate workload cert and key default lookup to helper function (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1877\"\u003e#1877\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b0993c7edaba505d0fb0628af28760c43034c959\"\u003eb0993c7edaba505d0fb0628af28760c43034c959\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-python/compare/google-auth-v2.42.1...google-auth-v2.43.0\"\u003e2.43.0\u003c/a\u003e (2025-11-05)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd public wrapper for _mtls_helper.check_use_client_cert which enables mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE is not set, when the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1859\"\u003e#1859\u003c/a\u003e) Add public wrapper for check_use_client_cert which enables mTLS if\nGOOGLE_API_USE_CLIENT_CERTIFICATE is not set, when the MWID/X.509 cert\nsources detected. Also, fix check_use_client_cert to return boolean\nvalue.\nChange \u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1848\"\u003e#1848\u003c/a\u003e added the check_use_client_cert method that helps know if\nclient cert should be used for mTLS connection. However, that was in a\nprivate class, thus, created a public wrapper of the same function so\nthat it can be used by python Client Libraries. Also, updated\ncheck_use_client_cert to return a boolean value instead of existing\nstring value for better readability and future scope.\n--------- (\u003ca href=\"https://github.com/googleapis/google-cloud-python/commit/1535eccbff0ad8f3fd6a9775316ac8b77dca66ba\"\u003e1535eccbff0ad8f3fd6a9775316ac8b77dca66ba\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnable mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE  is not set, if the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1848\"\u003e#1848\u003c/a\u003e) The Python SDK will use a hybrid approach for mTLS enablement:\u003c/li\u003e\n\u003c/ul\u003e\n\u003cul\u003e\n\u003cli\u003eIf the GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is set\n(either true or false), the SDK will respect that setting. This is\nnecessary for test scenarios and users who need to explicitly control\nmTLS behavior.\u003c/li\u003e\n\u003cli\u003eIf the GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is not\nset, the SDK will automatically enable mTLS only if it detects Managed\nWorkload Identity (MWID) or X.509 Workforce Identity Federation (WIF)\ncertificate sources. In other cases where the variable is not set, mTLS\nwill remain disabled.\n** This change also adds the helper method \u003ccode\u003echeck_use_client_cert\u003c/code\u003e and\nit's unit test, which will be used for checking the criteria for setting\nthe mTLS to true\n** This change is only for Auth-Library, other changes will be created\nfor Client-Library use-cases.\n--------- (\u003ca href=\"https://github.com/googleapis/google-cloud-python/commit/395e405b64b56ddb82ee639958c2e8056ad2e82b\"\u003e395e405b64b56ddb82ee639958c2e8056ad2e82b\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/googleapis/google-auth-library-python/commit/262eb9e33d58ffeb536ecd083c22d9fb12c808e6\"\u003e\u003ccode\u003e262eb9e\u003c/code\u003e\u003c/a\u003e chore: librarian release pull request: 20251212T161150Z (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1888\"\u003e#1888\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0f7097e78f247665b6ef0287d482033f7be2ed6d\"\u003e\u003ccode\u003e0f7097e\u003c/code\u003e\u003c/a\u003e feat: support Python 3.14 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1822\"\u003e#1822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/e0c3296f471747258f6d98d2d9bfde636358ecde\"\u003e\u003ccode\u003ee0c3296\u003c/code\u003e\u003c/a\u003e fix(auth): Use public refresh method for source credentials in ImpersonatedCr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/78de7907b8bdb7b5510e3c6fa8a3f3721e2436d7\"\u003e\u003ccode\u003e78de790\u003c/code\u003e\u003c/a\u003e fix(auth): Add temporary patch to workload cert logic to accomodate Cloud Run...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/3e8a56687fd050ff44a35cc8db0e95e996648173\"\u003e\u003ccode\u003e3e8a566\u003c/code\u003e\u003c/a\u003e chore(tests): allow expired secret in system tests (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1883\"\u003e#1883\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b0993c7edaba505d0fb0628af28760c43034c959\"\u003e\u003ccode\u003eb0993c7\u003c/code\u003e\u003c/a\u003e fix(auth): Delegate workload cert and key default lookup to helper function (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2c374d36a61569b75d11c17fae124d591c52ddc6\"\u003e\u003ccode\u003e2c374d3\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1879\"\u003e#1879\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/39c381a5f6881b590025f36d333d12eff8dc60fc\"\u003e\u003ccode\u003e39c381a\u003c/code\u003e\u003c/a\u003e feat: add ecdsa p-384 support (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1872\"\u003e#1872\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/daabaa714820008565133efdf4d928143b8fe518\"\u003e\u003ccode\u003edaabaa7\u003c/code\u003e\u003c/a\u003e chore(tests): update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1876\"\u003e#1876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0387bb95713653d47e846cad3a010eb55ef2db4c\"\u003e\u003ccode\u003e0387bb9\u003c/code\u003e\u003c/a\u003e feat: MDS connections use mTLS (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1856\"\u003e#1856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.44.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.2.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.2.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport reading .env from FIFOs (Unix) by \u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CI to use trusted publishing on PyPI\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/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003estyle: upgrade to use ruff by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/567\"\u003etheskumar/python-dotenv#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse sys.exit() instead of exit() by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/568\"\u003etheskumar/python-dotenv#568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat:  add \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e flag to disable load_dotenv (fixes \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/510\"\u003e#510\u003c/a\u003e) by \u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded Python@3.14: Github CI \u0026amp; tox.ini by \u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eocs: clarify what load_dotenv() does in README by \u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group across 1 directory with 2 updates 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/theskumar/python-dotenv/pull/577\"\u003etheskumar/python-dotenv#577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove project metadata and config to pyproject.toml by \u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\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/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: ensure find_dotenv work reliably on python 3.13 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003etheskumar/python-dotenv#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cli): issue with execvpe on Windows by \u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\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/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a security policy by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/512\"\u003etheskumar/python-dotenv#512\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep GitHub Actions up to date with GitHub's Dependabot by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/506\"\u003etheskumar/python-dotenv#506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix multiline string in test.yml \u0026amp; use fail-fast strategy by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/514\"\u003etheskumar/python-dotenv#514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnhance dotenv run: Switch to execvpe for better resource management and signal handling by \u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add py3.13 to test.yml by \u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 trove classifier by \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for python 3.13 and drop 3.8 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/551\"\u003etheskumar/python-dotenv#551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update README.md by \u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSome more s/Python-dotenv/python-dotenv/ by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/552\"\u003etheskumar/python-dotenv#552\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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.2.1] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMove more config to \u003ccode\u003epyproject.toml\u003c/code\u003e, removed \u003ccode\u003esetup.cfg\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for reading \u003ccode\u003e.env\u003c/code\u003e from FIFOs (Unix) by [\u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.2.0] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade build system to use PEP 517 \u0026amp; PEP 518 to use \u003ccode\u003ebuild\u003c/code\u003e and \u003ccode\u003epyproject.toml\u003c/code\u003e by [\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/583\"\u003e#583\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14 by [\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for disabling of \u003ccode\u003eload_dotenv()\u003c/code\u003e using \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e env var. by [\u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/569\"\u003e#569\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCLI: revert the use of execvpe on Windows by [\u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003e#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.0] - 2025-03-25\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFeature\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for python 3.13\u003c/li\u003e\n\u003cli\u003eEnhance \u003ccode\u003edotenv run\u003c/code\u003e, switch to \u003ccode\u003eexecvpe\u003c/code\u003e for better resource management and signal handling (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/523\"\u003e#523\u003c/a\u003e) by [\u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efind_dotenv\u003c/code\u003e and \u003ccode\u003eload_dotenv\u003c/code\u003e now correctly looks up at the current directory when running in debugger or pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e by [\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e])\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eMisc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8\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/theskumar/python-dotenv/commit/eaf2a9129ccec6febda0f741eb3bb852c3f947bd\"\u003e\u003ccode\u003eeaf2a91\u003c/code\u003e\u003c/a\u003e Do not remove .coverage file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8716196891532eeb67d24a513e8d975437f5e8b7\"\u003e\u003ccode\u003e8716196\u003c/code\u003e\u003c/a\u003e Bump version: 1.2.0 → 1.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/b87807fcad6e74332c3c63a75c92ce5814fa7a55\"\u003e\u003ccode\u003eb87807f\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/3af77d3029eb717aeec0a3c25f751b6a614a6d3c\"\u003e\u003ccode\u003e3af77d3\u003c/code\u003e\u003c/a\u003e Support reading .env from FIFOs (Unix) (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/467ee22fccb2fb7ccda71a0d9e37c6ea3cb8d993\"\u003e\u003ccode\u003e467ee22\u003c/code\u003e\u003c/a\u003e Fix test failures after moving config to pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/76999e741d87e958ebd74e3ae9834c0514e77a59\"\u003e\u003ccode\u003e76999e7\u003c/code\u003e\u003c/a\u003e Move more config pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/222ce2cc58ebc82ba78da8781269267b9f585932\"\u003e\u003ccode\u003e222ce2c\u003c/code\u003e\u003c/a\u003e Update to use trusted publisher on pypi\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8ed4f79d202eba582b44bdf1f5deb726dd68783d\"\u003e\u003ccode\u003e8ed4f79\u003c/code\u003e\u003c/a\u003e Update docs requirements\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/5bf882241c607445bf02cf5b241535d62e2b99c1\"\u003e\u003ccode\u003e5bf8822\u003c/code\u003e\u003c/a\u003e Bump version: 1.1.1 → 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/1fe11cc737ee4399e9c51d1b69b0dd858f6b4669\"\u003e\u003ccode\u003e1fe11cc\u003c/code\u003e\u003c/a\u003e upadate changelog\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `orjson` from 3.10.16 to 3.11.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ijl/orjson/releases\"\u003eorjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.5\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eShow simple error message instead of traceback when attempting to\nbuild on unsupported Python versions.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.4\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eABI compatibility with CPython 3.15 alpha 1.\u003c/li\u003e\n\u003cli\u003ePublish PyPI wheels for 3.14 and manylinux i686, manylinux arm7,\nmanylinux ppc64le, manylinux s390x.\u003c/li\u003e\n\u003cli\u003eBuild now requires a C compiler.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared buffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17\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/ijl/orjson/blob/master/CHANGELOG.md\"\u003eorjson's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.5 - 2025-12-06\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eShow simple error message instead of traceback when attempting to\nbuild on unsupported Python versions.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.4 - 2025-10-24\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eABI compatibility with CPython 3.15 alpha 1.\u003c/li\u003e\n\u003cli\u003ePublish PyPI wheels for 3.14 and manylinux i686, manylinux arm7,\nmanylinux ppc64le, manylinux s390x.\u003c/li\u003e\n\u003cli\u003eBuild now requires a C compiler.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.3 - 2025-08-26\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1 - 2025-07-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures. This was introduced in 3.11.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 - 2025-07-15\u003c/h2\u003e\n\u003ch3\u003eChanged\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/ijl/orjson/commit/fb3eb1f729c7e7b019f780af5695722c99c7c695\"\u003e\u003ccode\u003efb3eb1f\u003c/code\u003e\u003c/a\u003e 3.11.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/52688e02c51c845cde24a46cd1011a6010d10eb8\"\u003e\u003ccode\u003e52688e0\u003c/code\u003e\u003c/a\u003e Record contributors in headers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/dc083e87d5262e7dde3ba4b1d2a377b5b065a27c\"\u003e\u003ccode\u003edc083e8\u003c/code\u003e\u003c/a\u003e Further compatibility and build misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/18f0186d47fbadd53c9db4e39a442d5b04225418\"\u003e\u003ccode\u003e18f0186\u003c/code\u003e\u003c/a\u003e Compatibility and build misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/a4fdeb3aff125d501ec0dd0577f9b38b2b977b4f\"\u003e\u003ccode\u003ea4fdeb3\u003c/code\u003e\u003c/a\u003e 3.11.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2e80d68afacafca8751e6a64ca05d0d4087dbd15\"\u003e\u003ccode\u003e2e80d68\u003c/code\u003e\u003c/a\u003e unlikely to cold_path, remove intrinsics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/27edea92f8da2fdfc3f1342474e2f1686f1edf55\"\u003e\u003ccode\u003e27edea9\u003c/code\u003e\u003c/a\u003e FFI through crate::ffi, partial non-CPython compatibility\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/416a8c9578da780d0d58b5e6b751793deafc610d\"\u003e\u003ccode\u003e416a8c9\u003c/code\u003e\u003c/a\u003e Unconditionally build yyjson\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/c8c1a17dca8436a2fee05ca060febd096e653d98\"\u003e\u003ccode\u003ec8c1a17\u003c/code\u003e\u003c/a\u003e edition 2024\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/af4179a1fa0aafffd0f867203b6c36e9a522f165\"\u003e\u003ccode\u003eaf4179a\u003c/code\u003e\u003c/a\u003e build maintenance, panic_immediate_abort break, test 3.15\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ijl/orjson/compare/3.10.16...3.11.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geoalchemy2` from 0.17.1 to 0.18.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/releases\"\u003egeoalchemy2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix (mysql): Fix failing test for MySQL dialect by \u003ca href=\"https://github.com/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/567\"\u003egeoalchemy/geoalchemy2#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/570\"\u003egeoalchemy/geoalchemy2#570\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Allow scientific notation within WKT string by \u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/573\"\u003egeoalchemy/geoalchemy2#573\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.1 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/574\"\u003egeoalchemy/geoalchemy2#574\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/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/567\"\u003egeoalchemy/geoalchemy2#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/573\"\u003egeoalchemy/geoalchemy2#573\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.18.0...0.18.1\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.18.0...0.18.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/538\"\u003egeoalchemy/geoalchemy2#538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/540\"\u003egeoalchemy/geoalchemy2#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCompile literal binds by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/543\"\u003egeoalchemy/geoalchemy2#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/544\"\u003egeoalchemy/geoalchemy2#544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore (mariadb): Stop converting WKB to WKT by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/545\"\u003egeoalchemy/geoalchemy2#545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker containers by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/546\"\u003egeoalchemy/geoalchemy2#546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/547\"\u003egeoalchemy/geoalchemy2#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/553\"\u003egeoalchemy/geoalchemy2#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/554\"\u003egeoalchemy/geoalchemy2#554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Improve readbility of benchmark results by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/556\"\u003egeoalchemy/geoalchemy2#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/555\"\u003egeoalchemy/geoalchemy2#555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/557\"\u003egeoalchemy/geoalchemy2#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Remove warning message from MySQL/MariaDB reflection by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/560\"\u003egeoalchemy/geoalchemy2#560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/561\"\u003egeoalchemy/geoalchemy2#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: correct doc strings by \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/564\"\u003egeoalchemy/geoalchemy2#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.0 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/565\"\u003egeoalchemy/geoalchemy2#565\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/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.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/geoalchemy/geoalchemy2/blob/master/CHANGES.txt\"\u003egeoalchemy2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Allow scientific notation within WKT string - \u003ca href=\"https://github.com/autermann\"\u003e\u003ccode\u003e@​autermann\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/573\"\u003e#573\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix (mysql): Fix failing test for MySQL dialect - \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/567\"\u003e#567\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Fix doc strings for cache enabled - \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e(papacodebear/master) Fix: Remove warning from MySQL/MariaDB reflection \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Improve readability of benchmark results \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/547\"\u003e#547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker container \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/546\"\u003e#546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf (mariadb): Stop converting WKB to WKT \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/545\"\u003e#545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/544\"\u003e#544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Compile literal binds properly \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/540\"\u003e#540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/538\"\u003e#538\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/geoalchemy/geoalchemy2/commit/0c311122e5228a885e262d8f79b037cb74c0949b\"\u003e\u003ccode\u003e0c31112\u003c/code\u003e\u003c/a\u003e Release: 0.18.1 (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/574\"\u003e#574\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/75f87fac699ed31579ef93dffc59cc25bda241a8\"\u003e\u003ccode\u003e75f87fa\u003c/code\u003e\u003c/a\u003e Fix: Allow scientific notation within WKT string (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/573\"\u003e#573\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/8653df3a1b0236556f1c39c916f0fb717475a6d1\"\u003e\u003ccode\u003e8653df3\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/570\"\u003e#570\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/3d6099504023afda68137f0ac2d041986159dac9\"\u003e\u003ccode\u003e3d60995\u003c/code\u003e\u003c/a\u003e Fix (mysql): Fix failing test for MySQL dialect (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/567\"\u003e#567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/60767082df9f4587fadd56ab94847ebc39df8295\"\u003e\u003ccode\u003e6076708\u003c/code\u003e\u003c/a\u003e Release: 0.18.0 (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/565\"\u003e#565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/e13112177bdf79cae0d72a6e89d815dc272e3dc5\"\u003e\u003ccode\u003ee131121\u003c/code\u003e\u003c/a\u003e Feat: Add support of spatial indexes for Raster type for PostgreSQL (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/0b432086a0c3b8ab160c5cc1864aa65e02f35362\"\u003e\u003ccode\u003e0b43208\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/8791b2eec013f21f599ca060d9fee4aba72ec2a1\"\u003e\u003ccode\u003e8791b2e\u003c/code\u003e\u003c/a\u003e Docs: Fix doc strings for cache enabled (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/d3c1d04c8b462c61132403e44a7a4f04a487c142\"\u003e\u003ccode\u003ed3c1d04\u003c/code\u003e\u003c/a\u003e Chore: Move reflection type registering (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/24dc5d05d97fb9a2a57103c1823a58f06940a5e8\"\u003e\u003ccode\u003e24dc5d0\u003c/code\u003e\u003c/a\u003e Fix: Remove warning from MySQL/MariaDB reflection (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gql` from 3.5.2 to 4.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/graphql-python/gql/releases\"\u003egql's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eChange transports prototype using GraphQLRequest (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/551\"\u003e#551\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUsing GraphQLRequest instead of DocumentNode for gql, execute, subscribe methods (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/556\"\u003e#556\u003c/a\u003e):\n\u003cstrong\u003eThis is a big change:\u003c/strong\u003e\n\u003cul\u003e\n\u003cli\u003ethe \u003ccode\u003egql\u003c/code\u003e and \u003ccode\u003edsl_gql\u003c/code\u003e methods will now return a \u003ccode\u003eGraphQLRequest\u003c/code\u003e instead of a \u003ccode\u003eDocument\u003c/code\u003e Node\na \u003ccode\u003eGraphQLRequest\u003c/code\u003e is an object containing the document and optional \u003ccode\u003evariable_values\u003c/code\u003e and \u003ccode\u003eoperation_name\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eALL the \u003ccode\u003eexecute\u003c/code\u003e and \u003ccode\u003esubscribe\u003c/code\u003e methods now receive a \u003ccode\u003eGraphQLRequest\u003c/code\u003e as main argument instead of\na \u003ccode\u003eDocumentNode\u003c/code\u003e, \u003ccode\u003evariable_values\u003c/code\u003e and \u003ccode\u003eoperation_name\u003c/code\u003e arguments\u003c/li\u003e\n\u003cli\u003eThe old method of sending \u003ccode\u003evariable_values\u003c/code\u003e as an argument of \u003ccode\u003eexecute\u003c/code\u003e or \u003ccode\u003esubscribe\u003c/code\u003e still works but is deprecated\nSee \u003ca href=\"https://gql.readthedocs.io/en/latest/usage/variables.html\"\u003ehttps://gql.readthedocs.io/en/latest/usage/variables.html\u003c/a\u003e for the new syntax.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix subscription task cancel exception swallow (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/548\"\u003e#548\u003c/a\u003e):\nPreviously if a task was cancelled while a subscription task was active,\nthe \u003ccode\u003easyncio.CancelledError\u003c/code\u003e Exception would be swallowed by our code.\nThis is not the case anymore so you should now trap that Exception yourself.\u003c/li\u003e\n\u003cli\u003eClean up the file upload interface with FileVar class (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/549\"\u003e#549\u003c/a\u003e):\nThe file upload functionality has been modified to require \u003ccode\u003eFileVar\u003c/code\u003e instances\nfor uploaded files (the old method still works but is deprecated).\nSee \u003ca href=\"https://gql.readthedocs.io/en/latest/usage/file_upload.html\"\u003ehttps://gql.readthedocs.io/en/latest/usage/file_upload.html\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSet logging level to DEBUG for all transports (\u003ca href=\"https://redirect.github.com/g...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1388","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1388","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1388/packages"}},{"old_version":"48.0.0","new_version":"50.1.0","update_type":"major","path":null,"pr_created_at":"2025-12-08T22:32:47.000Z","version_change":"48.0.0 → 50.1.0","issue":{"uuid":"3708266052","node_id":"PR_kwDOKF4tPs63x7Rz","number":2819,"state":"closed","title":"Build: Bump datafusion from 48.0.0 to 50.1.0","user":"dependabot[bot]","labels":["dependencies","python:uv"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-13T02:39:11.000Z","author_association":null,"state_reason":null,"created_at":"2025-12-08T22:32:47.000Z","updated_at":"2026-01-13T02:39:13.000Z","time_to_close":3038784,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Build: Bump","packages":[{"name":"datafusion","old_version":"48.0.0","new_version":"50.1.0","repository_url":"https://github.com/apache/datafusion-python"}],"path":null,"ecosystem":"pip"},"body":"Bumps [datafusion](https://github.com/apache/datafusion-python) from 48.0.0 to 50.1.0.\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/5646693c2b9f040e8801606f5916b24221738774\"\u003e\u003ccode\u003e5646693\u003c/code\u003e\u003c/a\u003e Update cargo lock\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/aac428c0c07251171ce1407216db0a073303565a\"\u003e\u003ccode\u003eaac428c\u003c/code\u003e\u003c/a\u003e Update version to 50.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/08901d537fa32897234f1adf1c98a0c650ca80d7\"\u003e\u003ccode\u003e08901d5\u003c/code\u003e\u003c/a\u003e feat: expose\u003ccode\u003e DataFrame.parse_sql_expr\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1274\"\u003e#1274\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/16d4c038e0d45ec89144a465992e5a929d48e667\"\u003e\u003ccode\u003e16d4c03\u003c/code\u003e\u003c/a\u003e chore: update dependencies (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1269\"\u003e#1269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/f5fdf59663b075cb1dbaed5b87cca3b0092e5f3c\"\u003e\u003ccode\u003ef5fdf59\u003c/code\u003e\u003c/a\u003e feat: expose DataFrame.write_table (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1264\"\u003e#1264\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/6f3b1cab75cfaa0cdf914f9b6fa023cb9afccd7d\"\u003e\u003ccode\u003e6f3b1ca\u003c/code\u003e\u003c/a\u003e Unify Table representations (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1256\"\u003e#1256\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/af1c07b712d2aa9387e2ec5a55c9bd5198d5c97b\"\u003e\u003ccode\u003eaf1c07b\u003c/code\u003e\u003c/a\u003e Freeze PyO3 wrappers \u0026amp; introduce interior mutability to avoid PyO3 borrow err...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/e75addfa64a91c0d91ef059917a451e04495b83a\"\u003e\u003ccode\u003ee75addf\u003c/code\u003e\u003c/a\u003e macos-13 is deprecated (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1259\"\u003e#1259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/709c918ef810d7207f12c09b82c2e1b1c4ad8290\"\u003e\u003ccode\u003e709c918\u003c/code\u003e\u003c/a\u003e REVERT CHANGES to commit\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/0154c03129ac901aea9d6cf6b5d1ff25131c486d\"\u003e\u003ccode\u003e0154c03\u003c/code\u003e\u003c/a\u003e CHANGES to review\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/datafusion-python/compare/48.0.0...50.1.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=datafusion\u0026package-manager=uv\u0026previous-version=48.0.0\u0026new-version=50.1.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nYou can trigger a rebase of this PR 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\n\n\u003e **Note**\n\u003e Automatic rebases have been disabled on this pull request as it has been open for over 30 days.\n","html_url":"https://github.com/apache/iceberg-python/pull/2819","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Ficeberg-python/issues/2819","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2819/packages"}},{"old_version":"47.0.0","new_version":"50.1.0","update_type":"major","path":null,"pr_created_at":"2025-11-17T18:59:44.000Z","version_change":"47.0.0 → 50.1.0","issue":{"uuid":"3634630258","node_id":"PR_kwDOHTdvBs6z7O3d","number":1379,"state":"open","title":"deps(ibis): bump the all group across 1 directory with 30 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-11-17T18:59:44.000Z","updated_at":"2025-11-17T19:00:20.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":30,"packages":[{"name":"fastapi","old_version":"0.120.1","new_version":"0.121.2","repository_url":"https://github.com/fastapi/fastapi"},{"name":"pydantic","old_version":"2.10.6","new_version":"2.12.4","repository_url":"https://github.com/pydantic/pydantic"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.43.0","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.2.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"orjson","old_version":"3.10.16","new_version":"3.11.4","repository_url":"https://github.com/ijl/orjson"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.18.0","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"anyio","old_version":"4.10.0","new_version":"4.11.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"duckdb","old_version":"1.3.2","new_version":"1.4.2","repository_url":"https://github.com/duckdb/duckdb-python"},{"name":"oracledb","old_version":"3.3.0","new_version":"3.4.1","repository_url":"https://github.com/oracle/python-oracledb"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.38.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"uvicorn-worker","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/Kludex/uvicorn-worker"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.9","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"50.1.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"starlette","old_version":"0.49.1","new_version":"0.49.3","repository_url":"https://github.com/Kludex/starlette"},{"name":"databricks-sql-connector","old_version":"4.1.4","new_version":"4.2.0","repository_url":"https://github.com/databricks/databricks-sql-python"},{"name":"jupyterlab","old_version":"4.4.9","new_version":"4.4.10","repository_url":"https://github.com/jupyterlab/jupyterlab"},{"name":"ipykernel","old_version":"6.30.1","new_version":"7.1.0","repository_url":"https://github.com/ipython/ipykernel"},{"name":"ipywidgets","old_version":"8.1.7","new_version":"8.1.8","repository_url":"https://github.com/jupyter-widgets/ipywidgets"},{"name":"matplotlib","old_version":"3.10.6","new_version":"3.10.7","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"plotly","old_version":"6.3.0","new_version":"6.5.0","repository_url":"https://github.com/plotly/plotly.py"},{"name":"pytest","old_version":"8.3.5","new_version":"9.0.1","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.13.3","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.44","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.4.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.14.5","repository_url":"https://github.com/astral-sh/ruff"},{"name":"trino","old_version":"0.335.0","new_version":"0.336.0","repository_url":"https://github.com/trinodb/trino-python-client"},{"name":"psycopg2","old_version":"2.9.10","new_version":"2.9.11","repository_url":"https://github.com/psycopg/psycopg2"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.10.0","repository_url":"https://github.com/ClickHouse/clickhouse-connect"},{"name":"polars","old_version":"1.33.1","new_version":"1.35.2","repository_url":"https://github.com/pola-rs/polars"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 30 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.120.1` | `0.121.2` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.12.4` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.43.0` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.2.1` |\n| [orjson](https://github.com/ijl/orjson) | `3.10.16` | `3.11.4` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.18.0` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.10.0` | `4.11.0` |\n| [duckdb](https://github.com/duckdb/duckdb-python) | `1.3.2` | `1.4.2` |\n| [oracledb](https://github.com/oracle/python-oracledb) | `3.3.0` | `3.4.1` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.38.0` |\n| [uvicorn-worker](https://github.com/Kludex/uvicorn-worker) | `0.3.0` | `0.4.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.9` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `50.1.0` |\n| [starlette](https://github.com/Kludex/starlette) | `0.49.1` | `0.49.3` |\n| [databricks-sql-connector](https://github.com/databricks/databricks-sql-python) | `4.1.4` | `4.2.0` |\n| [jupyterlab](https://github.com/jupyterlab/jupyterlab) | `4.4.9` | `4.4.10` |\n| [ipykernel](https://github.com/ipython/ipykernel) | `6.30.1` | `7.1.0` |\n| [ipywidgets](https://github.com/jupyter-widgets/ipywidgets) | `8.1.7` | `8.1.8` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.10.6` | `3.10.7` |\n| [plotly](https://github.com/plotly/plotly.py) | `6.3.0` | `6.5.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `9.0.1` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.13.3` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.44` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.4.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.14.5` |\n| [trino](https://github.com/trinodb/trino-python-client) | `0.335.0` | `0.336.0` |\n| [psycopg2](https://github.com/psycopg/psycopg2) | `2.9.10` | `2.9.11` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.10.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.33.1` | `1.35.2` |\n\n\nUpdates `fastapi` from 0.120.1 to 0.121.2\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's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.121.2\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix handling of JSON Schema attributes named \u0026quot;$ref\u0026quot;. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14349\"\u003e#14349\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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📝 Add EuroPython talk \u0026amp; podcast episode with Sebastián Ramírez. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14260\"\u003e#14260\u003c/a\u003e by \u003ca href=\"https://github.com/clytaemnestra\"\u003e\u003ccode\u003e@​clytaemnestra\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✏️ Fix links and add missing permalink in docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14217\"\u003e#14217\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\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🌐 Update Portuguese translations with LLM prompt. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14228\"\u003e#14228\u003c/a\u003e by \u003ca href=\"https://github.com/ceb10n\"\u003e\u003ccode\u003e@​ceb10n\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔨 Add Portuguese translations LLM prompt. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14208\"\u003e#14208\u003c/a\u003e by \u003ca href=\"https://github.com/ceb10n\"\u003e\u003ccode\u003e@​ceb10n\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Sync Russian docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14331\"\u003e#14331\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Sync German docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14317\"\u003e#14317\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.121.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eDepends(func, scope='function')\u003c/code\u003e for top level (parameterless) dependencies. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14301\"\u003e#14301\u003c/a\u003e by \u003ca href=\"https://github.com/luzzodev\"\u003e\u003ccode\u003e@​luzzodev\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📝 Upate docs for advanced dependencies with \u003ccode\u003eyield\u003c/code\u003e, noting the changes in 0.121.0, adding \u003ccode\u003escope\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14287\"\u003e#14287\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\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⬆ Bump ruff from 0.13.2 to 0.14.3. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14276\"\u003e#14276\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ [pre-commit.ci] pre-commit autoupdate. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14289\"\u003e#14289\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\u003ch2\u003e0.121.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Add support for dependencies with scopes, support \u003ccode\u003escope=\u0026quot;request\u0026quot;\u003c/code\u003e for dependencies with \u003ccode\u003eyield\u003c/code\u003e that exit before the response is sent. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14262\"\u003e#14262\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\n\u003cul\u003e\n\u003cli\u003eNew docs: \u003ca href=\"https://fastapi.tiangolo.com/tutorial/dependencies/dependencies-with-yield/#early-exit-and-scope\"\u003eDependencies with \u003ccode\u003eyield\u003c/code\u003e - Early exit and \u003ccode\u003escope\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e👥 Update FastAPI People - Contributors and Translators. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14273\"\u003e#14273\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👥 Update FastAPI People - Sponsors. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14274\"\u003e#14274\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👥 Update FastAPI GitHub topic repositories. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14280\"\u003e#14280\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump mkdocs-macros-plugin from 1.4.0 to 1.4.1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14277\"\u003e#14277\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump mkdocstrings[python] from 0.26.1 to 0.30.1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14279\"\u003e#14279\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.120.4\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix security schemes in OpenAPI when added at the top level app. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14266\"\u003e#14266\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/02e108d1663149faac4156dd23595cbdf74287c2\"\u003e\u003ccode\u003e02e108d\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.121.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d3b75974f48cd180f6f87de39adc475c7bf8900a\"\u003e\u003ccode\u003ed3b7597\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/5d40dfbc9bc1df1c7801acc53857ec7a072b7697\"\u003e\u003ccode\u003e5d40dfb\u003c/code\u003e\u003c/a\u003e 🐛 Fix handling of JSON Schema attributes named \u0026quot;$ref\u0026quot; (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14349\"\u003e#14349\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/eaf611f9ee56de4f16c837d4f487a4b9fca507c4\"\u003e\u003ccode\u003eeaf611f\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/004ab1a9d1c746bf885d4d6428a721074b2c2d78\"\u003e\u003ccode\u003e004ab1a\u003c/code\u003e\u003c/a\u003e 📝 Add EuroPython talk \u0026amp; podcast episode with Sebastián Ramírez (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14260\"\u003e#14260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d1be85c728c64aa3d99f8bc7e9865b342f209117\"\u003e\u003ccode\u003ed1be85c\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/42930fe60065420034b7d6ff4932b25993a68481\"\u003e\u003ccode\u003e42930fe\u003c/code\u003e\u003c/a\u003e ✏️ Fix links and add missing permalink in docs (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14217\"\u003e#14217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/9e362d9f6e66078c67295e5ed5e5918739dfe5f0\"\u003e\u003ccode\u003e9e362d9\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/540a83da65b2e3b219ee3d41c4be7837ab05dc84\"\u003e\u003ccode\u003e540a83d\u003c/code\u003e\u003c/a\u003e 🌐 Update Portuguese translations with LLM prompt (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14228\"\u003e#14228\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/1a2e4152ed1173dc129bf4feb45c84b704c55eb8\"\u003e\u003ccode\u003e1a2e415\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.120.1...0.121.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.10.6 to 2.12.4\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.4 2025-11-05\u003c/h2\u003e\n\u003ch2\u003ev2.12.4 (2025-11-05)\u003c/h2\u003e\n\u003cp\u003eThis is the fourth 2.12 patch release, fixing more regressions, and reverting a change in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis patch release also fixes an issue with the serialization of IP address types, when \u003ccode\u003eserialize_as_any\u003c/code\u003e is used. The next patch release\nwill try to address the remaining issues with \u003cem\u003eserialize as any\u003c/em\u003e behavior by introducing a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature, that\nshould be used in most cases in place of \u003cem\u003eserialize as any\u003c/em\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with forward references in parent \u003ccode\u003eTypedDict\u003c/code\u003e classes 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/12427\"\u003e#12427\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis issue is only relevant on Python 3.14 and greater.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExclude fields with \u003ccode\u003eexclude_if\u003c/code\u003e from JSON Schema required fields 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/12430\"\u003e#12430\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRevert URL percent-encoding of credentials in the \u003ccode\u003ebuild()\u003c/code\u003e method of the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1833\"\u003epydantic-core#1833\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis was initially considered as a bugfix, but caused regressions and as such was fully reverted. The next release will include\nan opt-in option to percent-encode components of the URL.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd type inference for IP address types by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1868\"\u003epydantic-core#1868\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe 2.12 changes to the \u003ccode\u003eserialize_as_any\u003c/code\u003e behavior made it so that IP address types could not properly serialize to JSON.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid getting default values from defaultdict by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1853\"\u003epydantic-core#1853\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis fixes a subtle regression in the validation behavior of the \u003ca href=\"https://docs.python.org/3/library/collections.html#collections.defaultdict\"\u003e\u003ccode\u003ecollections.defaultdict\u003c/code\u003e\u003c/a\u003e\ntype.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with field serializers on nested typed dictionaries by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1879\"\u003epydantic-core#1879\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd more \u003ccode\u003epydantic-core\u003c/code\u003e builds for the three-threaded version of Python 3.14 by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1864\"\u003epydantic-core#1864\u003c/a\u003e.\u003c/p\u003e\n\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.12.3...v2.12.4\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.3...v2.12.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.3 2025-10-17\u003c/h2\u003e\n\u003ch2\u003ev2.12.3 (2025-10-17)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eThis is the third 2.13 patch release, fixing issues related to the \u003ccode\u003eFieldInfo\u003c/code\u003e class, and reverting a change to the supported \u003ca href=\"https://docs.pydantic.dev/latest/concepts/validators/#model-validators\"\u003e\u003cem\u003eafter\u003c/em\u003e model validator\u003c/a\u003e function signatures.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRaise a warning when an invalid after model validator function signature is raised 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/12414\"\u003e#12414\u003c/a\u003e.\nStarting in 2.12.0, using class methods for \u003cem\u003eafter\u003c/em\u003e model validators raised an error, but the error wasn't raised concistently. We decided to emit a deprecation warning instead.\u003c/li\u003e\n\u003cli\u003eAdd \u003ca href=\"https://docs.pydantic.dev/latest/api/fields/#pydantic.fields.FieldInfo.asdict\"\u003e\u003ccode\u003eFieldInfo.asdict()\u003c/code\u003e\u003c/a\u003e method, improve documentation around \u003ccode\u003eFieldInfo\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/12411\"\u003e#12411\u003c/a\u003e.\nThis also adds back support for mutations on \u003ccode\u003eFieldInfo\u003c/code\u003e classes, that are reused as \u003ccode\u003eAnnotated\u003c/code\u003e metadata. \u003cstrong\u003eHowever\u003c/strong\u003e, note that this is still \u003cem\u003enot\u003c/em\u003e a supported pattern. Instead, please refer to the \u003ca href=\"https://docs.pydantic.dev/latest/examples/dynamic_models/\"\u003eadded example\u003c/a\u003e in the documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThe \u003ca href=\"https://pydantic.dev/articles/pydantic-v2-12-release#changes\"\u003eblog post\u003c/a\u003e section on changes was also updated to document the changes related to \u003ccode\u003eserialize_as_any\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.12.2...v2.12.3\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.2...v2.12.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.2 2025-10-14\u003c/h2\u003e\n\u003ch2\u003ev2.12.2 (2025-10-14)\u003c/h2\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pydantic/pydantic/blob/v2.12.4/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.12.4 (2025-11-05)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.4\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis is the fourth 2.12 patch release, fixing more regressions, and reverting a change in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis patch release also fixes an issue with the serialization of IP address types, when \u003ccode\u003eserialize_as_any\u003c/code\u003e is used. The next patch release\nwill try to address the remaining issues with \u003cem\u003eserialize as any\u003c/em\u003e behavior by introducing a new \u003cem\u003epolymorphic serialization\u003c/em\u003e feature, that\nshould be used in most cases in place of \u003cem\u003eserialize as any\u003c/em\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with forward references in parent \u003ccode\u003eTypedDict\u003c/code\u003e classes 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/12427\"\u003e#12427\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis issue is only relevant on Python 3.14 and greater.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eExclude fields with \u003ccode\u003eexclude_if\u003c/code\u003e from JSON Schema required fields 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/12430\"\u003e#12430\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRevert URL percent-encoding of credentials in the \u003ccode\u003ebuild()\u003c/code\u003e method\nof the \u003ca href=\"https://docs.pydantic.dev/latest/api/networks/\"\u003e\u003ccode\u003eAnyUrl\u003c/code\u003e and Dsn types\u003c/a\u003e by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in\n\u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1833\"\u003epydantic-core#1833\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis was initially considered as a bugfix, but caused regressions and as such was fully reverted. The next release will include\nan opt-in option to percent-encode components of the URL.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd type inference for IP address types by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1868\"\u003epydantic-core#1868\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThe 2.12 changes to the \u003ccode\u003eserialize_as_any\u003c/code\u003e behavior made it so that IP address types could not properly serialize to JSON.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAvoid getting default values from defaultdict by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1853\"\u003epydantic-core#1853\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis fixes a subtle regression in the validation behavior of the \u003ca href=\"https://docs.python.org/3/library/collections.html#collections.defaultdict\"\u003e\u003ccode\u003ecollections.defaultdict\u003c/code\u003e\u003c/a\u003e\ntype.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix issue with field serializers on nested typed dictionaries by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1879\"\u003epydantic-core#1879\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd more \u003ccode\u003epydantic-core\u003c/code\u003e builds for the three-threaded version of Python 3.14 by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1864\"\u003epydantic-core#1864\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.12.3 (2025-10-17)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.3\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eThis is the third 2.12 patch release, fixing issues related to the \u003ccode\u003eFieldInfo\u003c/code\u003e class, and reverting a change to the supported\n\u003ca href=\"https://docs.pydantic.dev/latest/concepts/validators/#model-validators\"\u003e\u003cem\u003eafter\u003c/em\u003e model validator\u003c/a\u003e function signatures.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRaise a warning when an invalid after model validator function signature is raised 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/12414\"\u003e#12414\u003c/a\u003e.\nStarting in 2.12.0, using class methods for \u003cem\u003eafter\u003c/em\u003e model validators raised an error, but the error wasn't raised concistently. We decided\nto emit a deprecation warning instead.\u003c/li\u003e\n\u003cli\u003eAdd \u003ca href=\"https://docs.pydantic.dev/latest/api/fields/#pydantic.fields.FieldInfo.asdict\"\u003e\u003ccode\u003eFieldInfo.asdict()\u003c/code\u003e\u003c/a\u003e method, improve documentation around \u003ccode\u003eFieldInfo\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/12411\"\u003e#12411\u003c/a\u003e.\nThis also add back support for mutations on \u003ccode\u003eFieldInfo\u003c/code\u003e classes, that are reused as \u003ccode\u003eAnnotated\u003c/code\u003e metadata. \u003cstrong\u003eHowever\u003c/strong\u003e, note that this is still\n\u003cem\u003enot\u003c/em\u003e a supported pattern. Instead, please refer to the \u003ca href=\"https://docs.pydantic.dev/latest/examples/dynamic_models/\"\u003eadded example\u003c/a\u003e in the documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThe \u003ca href=\"https://pydantic.dev/articles/pydantic-v2-12-release#changes\"\u003eblog post\u003c/a\u003e section on changes was also updated to document the changes related to \u003ccode\u003eserialize_as_any\u003c/code\u003e.\u003c/p\u003e\n\u003ch2\u003ev2.12.2 (2025-10-14)\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/pydantic/pydantic/commit/5c842dfc9c245fb37aa1f5ec5b55c1aed10bd7e6\"\u003e\u003ccode\u003e5c842df\u003c/code\u003e\u003c/a\u003e Prepare release v2.12.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c678a710e8b8bb2ff4dce6233c6d5c88dc579136\"\u003e\u003ccode\u003ec678a71\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003epydantic-core\u003c/code\u003e to v2.41.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a7cd29254b2611c5768beb86e7ffd2c1c130a19a\"\u003e\u003ccode\u003ea7cd292\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003ecloudpickle\u003c/code\u003e to v3.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/21f627801b5eedfa87bed55925f73cf329cc9c2c\"\u003e\u003ccode\u003e21f6278\u003c/code\u003e\u003c/a\u003e Bump actions/setup-node from 5 to 6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/8d6be8fea9662203977b95758d97ec298edcd54a\"\u003e\u003ccode\u003e8d6be8f\u003c/code\u003e\u003c/a\u003e Bump astral-sh/setup-uv from 6 to 7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/17865ea3a1fd389ba697990b762f82a419a48221\"\u003e\u003ccode\u003e17865ea\u003c/code\u003e\u003c/a\u003e Bump actions/upload-artifact from 4 to 5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/90ad0af6b9340f72dde77997ed18fc180771e69f\"\u003e\u003ccode\u003e90ad0af\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 5 to 6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/18e6672b6fdeaeb75ccbbcb3c7883509b1f56cb3\"\u003e\u003ccode\u003e18e6672\u003c/code\u003e\u003c/a\u003e Drop testing under PyPy 3.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/650215be2d2336a72af481b724b368fed356d7e8\"\u003e\u003ccode\u003e650215b\u003c/code\u003e\u003c/a\u003e Document workaround for \u003ccode\u003eMongoDsn\u003c/code\u003e default port\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/e3267902272d8290ed6d1ae06f43052b2968ef14\"\u003e\u003ccode\u003ee326790\u003c/code\u003e\u003c/a\u003e Fix example of for \u003ccode\u003ebytes_invalid_encoding\u003c/code\u003e validation error\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.12.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.43.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003egoogle-auth 2.43.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.42.1...v2.43.0\"\u003e2.43.0\u003c/a\u003e (2025-11-05)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd public wrapper for _mtls_helper.check_use_client_cert which enables mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE is not set, when the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1859\"\u003e#1859\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/1535eccb\"\u003e1535eccb\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eEnable mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE  is not set, if the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1848\"\u003e#1848\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/395e405b\"\u003e395e405b\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eonboard \u003ccode\u003egoogle-auth\u003c/code\u003e to librarian (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1838\"\u003e#1838\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/c503eaa5\"\u003ec503eaa5\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.42.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.42.0...v2.42.1\"\u003e2.42.1\u003c/a\u003e (2025-10-30)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCatch ValueError for json.loads() (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1842\"\u003e#1842\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b074cad460589633adfc6744c01726ae86f2aa2b\"\u003eb074cad\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.42.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.41.1...v2.42.0\"\u003e2.42.0\u003c/a\u003e (2025-10-24)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd trust boundary support for external accounts. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1809\"\u003e#1809\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/36ecb1d65883477d27faf9c2281fc289659b9903\"\u003e36ecb1d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRead scopes from ADC json for impersoanted cred (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1820\"\u003e#1820\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/62c0fc82a3625542381f85c698595446fc99ddae\"\u003e62c0fc8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.41.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.41.0...v2.41.1\"\u003e2.41.1\u003c/a\u003e (2025-09-30)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSuppress deprecation warning for ADC (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1815\"\u003e#1815\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/751ce3f625eb24029e9f0c59c081bdd3e18eb583\"\u003e751ce3f\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.41.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.3...v2.41.0\"\u003e2.41.0\u003c/a\u003e (2025-09-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for cachetools 6.0 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1773\"\u003e#1773\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/af18060d521baf86c219d66a26631decb3b28e79\"\u003eaf18060\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd trust boundary support for service accounts and impersonation. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1778\"\u003e#1778\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/99be2ce19401296718f880c7a80cd2e841df78bf\"\u003e99be2ce\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-python/compare/google-auth-v2.42.1...google-auth-v2.43.0\"\u003e2.43.0\u003c/a\u003e (2025-11-05)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd public wrapper for _mtls_helper.check_use_client_cert which enables mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE is not set, when the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1859\"\u003e#1859\u003c/a\u003e) Add public wrapper for check_use_client_cert which enables mTLS if\nGOOGLE_API_USE_CLIENT_CERTIFICATE is not set, when the MWID/X.509 cert\nsources detected. Also, fix check_use_client_cert to return boolean\nvalue.\nChange \u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1848\"\u003e#1848\u003c/a\u003e added the check_use_client_cert method that helps know if\nclient cert should be used for mTLS connection. However, that was in a\nprivate class, thus, created a public wrapper of the same function so\nthat it can be used by python Client Libraries. Also, updated\ncheck_use_client_cert to return a boolean value instead of existing\nstring value for better readability and future scope.\n--------- (\u003ca href=\"https://github.com/googleapis/google-cloud-python/commit/1535eccbff0ad8f3fd6a9775316ac8b77dca66ba\"\u003e1535eccbff0ad8f3fd6a9775316ac8b77dca66ba\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnable mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE  is not set, if the MWID/X.509 cert sources detected (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1848\"\u003e#1848\u003c/a\u003e) The Python SDK will use a hybrid approach for mTLS enablement:\u003c/li\u003e\n\u003c/ul\u003e\n\u003cul\u003e\n\u003cli\u003eIf the GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is set\n(either true or false), the SDK will respect that setting. This is\nnecessary for test scenarios and users who need to explicitly control\nmTLS behavior.\u003c/li\u003e\n\u003cli\u003eIf the GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is not\nset, the SDK will automatically enable mTLS only if it detects Managed\nWorkload Identity (MWID) or X.509 Workforce Identity Federation (WIF)\ncertificate sources. In other cases where the variable is not set, mTLS\nwill remain disabled.\n** This change also adds the helper method \u003ccode\u003echeck_use_client_cert\u003c/code\u003e and\nit's unit test, which will be used for checking the criteria for setting\nthe mTLS to true\n** This change is only for Auth-Library, other changes will be created\nfor Client-Library use-cases.\n--------- (\u003ca href=\"https://github.com/googleapis/google-cloud-python/commit/395e405b64b56ddb82ee639958c2e8056ad2e82b\"\u003e395e405b64b56ddb82ee639958c2e8056ad2e82b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cul\u003e\n\u003cli\u003eonboard \u003ccode\u003egoogle-auth\u003c/code\u003e to librarian (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1838\"\u003e#1838\u003c/a\u003e) This PR onboards \u003ccode\u003egoogle-auth\u003c/code\u003e library to the Librarian system.\nWait for\n\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/pull/1819\"\u003egoogleapis/google-auth-library-python#1819\u003c/a\u003e. (\u003ca href=\"https://github.com/googleapis/google-cloud-python/commit/c503eaa511357d7a76cc1e1f1d3a3be2dabd5bca\"\u003ec503eaa511357d7a76cc1e1f1d3a3be2dabd5bca\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.42.0...v2.42.1\"\u003e2.42.1\u003c/a\u003e (2025-10-30)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCatch ValueError for json.loads() (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1842\"\u003e#1842\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b074cad460589633adfc6744c01726ae86f2aa2b\"\u003eb074cad\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.41.1...v2.42.0\"\u003e2.42.0\u003c/a\u003e (2025-10-24)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd trust boundary support for external accounts. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1809\"\u003e#1809\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/36ecb1d65883477d27faf9c2281fc289659b9903\"\u003e36ecb1d\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/googleapis/google-auth-library-python/commit/89a883824b437e9be0c97309ed36f35e5c071f11\"\u003e\u003ccode\u003e89a8838\u003c/code\u003e\u003c/a\u003e chore: librarian release pull request: 20251105T230735Z (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1863\"\u003e#1863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/79564e20cf5644a29a2269dcc91902b023f4afac\"\u003e\u003ccode\u003e79564e2\u003c/code\u003e\u003c/a\u003e chore: update prev version in state (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1862\"\u003e#1862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/1535eccbff0ad8f3fd6a9775316ac8b77dca66ba\"\u003e\u003ccode\u003e1535ecc\u003c/code\u003e\u003c/a\u003e feat: Add public wrapper for _mtls_helper.check_use_client_cert which enables...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/54502a73170dbe14f04769463c45c9d940f4999b\"\u003e\u003ccode\u003e54502a7\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1860\"\u003e#1860\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/395e405b64b56ddb82ee639958c2e8056ad2e82b\"\u003e\u003ccode\u003e395e405\u003c/code\u003e\u003c/a\u003e feat: Enable mTLS if GOOGLE_API_USE_CLIENT_CERTIFICATE  is not set, if the MW...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/f2708b282b108713a8a9a04a5c0d58b253ce2217\"\u003e\u003ccode\u003ef2708b2\u003c/code\u003e\u003c/a\u003e chore: secret upadte (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1857\"\u003e#1857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/c503eaa511357d7a76cc1e1f1d3a3be2dabd5bca\"\u003e\u003ccode\u003ec503eaa\u003c/code\u003e\u003c/a\u003e feat: onboard \u003ccode\u003egoogle-auth\u003c/code\u003e to librarian (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1838\"\u003e#1838\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/5d1b862db2b23b4b7ae7d243f6dbb23165636bd5\"\u003e\u003ccode\u003e5d1b862\u003c/code\u003e\u003c/a\u003e chore(main): release 2.42.1 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1853\"\u003e#1853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/b074cad460589633adfc6744c01726ae86f2aa2b\"\u003e\u003ccode\u003eb074cad\u003c/code\u003e\u003c/a\u003e fix: catch ValueError for json.loads() (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1842\"\u003e#1842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/cb62f5727854965e108c4e1790c4f9f9306fe3ce\"\u003e\u003ccode\u003ecb62f57\u003c/code\u003e\u003c/a\u003e chore: secret update (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1851\"\u003e#1851\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.43.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.2.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.2.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport reading .env from FIFOs (Unix) by \u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CI to use trusted publishing on PyPI\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/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003estyle: upgrade to use ruff by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/567\"\u003etheskumar/python-dotenv#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse sys.exit() instead of exit() by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/568\"\u003etheskumar/python-dotenv#568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat:  add \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e flag to disable load_dotenv (fixes \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/510\"\u003e#510\u003c/a\u003e) by \u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded Python@3.14: Github CI \u0026amp; tox.ini by \u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eocs: clarify what load_dotenv() does in README by \u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group across 1 directory with 2 updates 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/theskumar/python-dotenv/pull/577\"\u003etheskumar/python-dotenv#577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove project metadata and config to pyproject.toml by \u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\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/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: ensure find_dotenv work reliably on python 3.13 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003etheskumar/python-dotenv#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cli): issue with execvpe on Windows by \u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\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/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a security policy by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/512\"\u003etheskumar/python-dotenv#512\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep GitHub Actions up to date with GitHub's Dependabot by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/506\"\u003etheskumar/python-dotenv#506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix multiline string in test.yml \u0026amp; use fail-fast strategy by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/514\"\u003etheskumar/python-dotenv#514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnhance dotenv run: Switch to execvpe for better resource management and signal handling by \u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add py3.13 to test.yml by \u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 trove classifier by \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for python 3.13 and drop 3.8 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/551\"\u003etheskumar/python-dotenv#551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update README.md by \u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSome more s/Python-dotenv/python-dotenv/ by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/552\"\u003etheskumar/python-dotenv#552\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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.2.1] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMove more config to \u003ccode\u003epyproject.toml\u003c/code\u003e, removed \u003ccode\u003esetup.cfg\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for reading \u003ccode\u003e.env\u003c/code\u003e from FIFOs (Unix) by [\u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.2.0] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade build system to use PEP 517 \u0026amp; PEP 518 to use \u003ccode\u003ebuild\u003c/code\u003e and \u003ccode\u003epyproject.toml\u003c/code\u003e by [\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/583\"\u003e#583\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14 by [\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for disabling of \u003ccode\u003eload_dotenv()\u003c/code\u003e using \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e env var. by [\u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/569\"\u003e#569\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCLI: revert the use of execvpe on Windows by [\u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003e#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.0] - 2025-03-25\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFeature\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for python 3.13\u003c/li\u003e\n\u003cli\u003eEnhance \u003ccode\u003edotenv run\u003c/code\u003e, switch to \u003ccode\u003eexecvpe\u003c/code\u003e for better resource management and signal handling (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/523\"\u003e#523\u003c/a\u003e) by [\u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efind_dotenv\u003c/code\u003e and \u003ccode\u003eload_dotenv\u003c/code\u003e now correctly looks up at the current directory when running in debugger or pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e by [\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e])\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eMisc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8\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/theskumar/python-dotenv/commit/eaf2a9129ccec6febda0f741eb3bb852c3f947bd\"\u003e\u003ccode\u003eeaf2a91\u003c/code\u003e\u003c/a\u003e Do not remove .coverage file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8716196891532eeb67d24a513e8d975437f5e8b7\"\u003e\u003ccode\u003e8716196\u003c/code\u003e\u003c/a\u003e Bump version: 1.2.0 → 1.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/b87807fcad6e74332c3c63a75c92ce5814fa7a55\"\u003e\u003ccode\u003eb87807f\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/3af77d3029eb717aeec0a3c25f751b6a614a6d3c\"\u003e\u003ccode\u003e3af77d3\u003c/code\u003e\u003c/a\u003e Support reading .env from FIFOs (Unix) (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/467ee22fccb2fb7ccda71a0d9e37c6ea3cb8d993\"\u003e\u003ccode\u003e467ee22\u003c/code\u003e\u003c/a\u003e Fix test failures after moving config to pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/76999e741d87e958ebd74e3ae9834c0514e77a59\"\u003e\u003ccode\u003e76999e7\u003c/code\u003e\u003c/a\u003e Move more config pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/222ce2cc58ebc82ba78da8781269267b9f585932\"\u003e\u003ccode\u003e222ce2c\u003c/code\u003e\u003c/a\u003e Update to use trusted publisher on pypi\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8ed4f79d202eba582b44bdf1f5deb726dd68783d\"\u003e\u003ccode\u003e8ed4f79\u003c/code\u003e\u003c/a\u003e Update docs requirements\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/5bf882241c607445bf02cf5b241535d62e2b99c1\"\u003e\u003ccode\u003e5bf8822\u003c/code\u003e\u003c/a\u003e Bump version: 1.1.1 → 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/1fe11cc737ee4399e9c51d1b69b0dd858f6b4669\"\u003e\u003ccode\u003e1fe11cc\u003c/code\u003e\u003c/a\u003e upadate changelog\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `orjson` from 3.10.16 to 3.11.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ijl/orjson/releases\"\u003eorjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.4\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eABI compatibility with CPython 3.15 alpha 1.\u003c/li\u003e\n\u003cli\u003ePublish PyPI wheels for 3.14 and manylinux i686, manylinux arm7,\nmanylinux ppc64le, manylinux s390x.\u003c/li\u003e\n\u003cli\u003eBuild now requires a C compiler.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared buffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI Windows aarch64/arm64 wheels.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 alpha 7.\u003c/li\u003e\n\u003cli\u003eFix incompatibility running on Python 3.13 using WASM.\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/ijl/orjson/blob/master/CHANGELOG.md\"\u003eorjson's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.4 - 2025-10-24\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eABI compatibility with CPython 3.15 alpha 1.\u003c/li\u003e\n\u003cli\u003ePublish PyPI wheels for 3.14 and manylinux i686, manylinux arm7,\nmanylinux ppc64le, manylinux s390x.\u003c/li\u003e\n\u003cli\u003eBuild now requires a C compiler.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.3 - 2025-08-26\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1 - 2025-07-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures. This was introduced in 3.11.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 - 2025-07-15\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared\nbuffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18 - 2025-04-29\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/ijl/orjson/commit/a4fdeb3aff125d501ec0dd0577f9b38b2b977b4f\"\u003e\u003ccode\u003ea4fdeb3\u003c/code\u003e\u003c/a\u003e 3.11.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2e80d68afacafca8751e6a64ca05d0d4087dbd15\"\u003e\u003ccode\u003e2e80d68\u003c/code\u003e\u003c/a\u003e unlikely to cold_path, remove intrinsics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/27edea92f8da2fdfc3f1342474e2f1686f1edf55\"\u003e\u003ccode\u003e27edea9\u003c/code\u003e\u003c/a\u003e FFI through crate::ffi, partial non-CPython compatibility\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/416a8c9578da780d0d58b5e6b751793deafc610d\"\u003e\u003ccode\u003e416a8c9\u003c/code\u003e\u003c/a\u003e Unconditionally build yyjson\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/c8c1a17dca8436a2fee05ca060febd096e653d98\"\u003e\u003ccode\u003ec8c1a17\u003c/code\u003e\u003c/a\u003e edition 2024\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/af4179a1fa0aafffd0f867203b6c36e9a522f165\"\u003e\u003ccode\u003eaf4179a\u003c/code\u003e\u003c/a\u003e build maintenance, panic_immediate_abort break, test 3.15\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/aa8c946cfbe2aba29016bc9c9ddc8713cb00173b\"\u003e\u003ccode\u003eaa8c946\u003c/code\u003e\u003c/a\u003e 3.11.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2442efc125068e43bec97c26e3a6b5da8932936c\"\u003e\u003ccode\u003e2442efc\u003c/code\u003e\u003c/a\u003e Fix PyPI project metadata when using maturin 1.9.2 or later\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/ba760146e7bc407d729436d8dbcb9e1495c83773\"\u003e\u003ccode\u003eba76014\u003c/code\u003e\u003c/a\u003e 3.11.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/49315905a4f071f2279b6df87125ca94780b5173\"\u003e\u003ccode\u003e4931590\u003c/code\u003e\u003c/a\u003e CPython compatibility misc\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ijl/orjson/compare/3.10.16...3.11.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geoalchemy2` from 0.17.1 to 0.18.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/releases\"\u003egeoalchemy2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/538\"\u003egeoalchemy/geoalchemy2#538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/540\"\u003egeoalchemy/geoalchemy2#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCompile literal binds by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/543\"\u003egeoalchemy/geoalchemy2#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/544\"\u003egeoalchemy/geoalchemy2#544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore (mariadb): Stop converting WKB to WKT by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/545\"\u003egeoalchemy/geoalchemy2#545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker containers by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/546\"\u003egeoalchemy/geoalchemy2#546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/547\"\u003egeoalchemy/geoalchemy2#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/553\"\u003egeoalchemy/geoalchemy2#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/554\"\u003egeoalchemy/geoalchemy2#554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Improve readbility of benchmark results by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/556\"\u003egeoalchemy/geoalchemy2#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/555\"\u003egeoalchemy/geoalchemy2#555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/557\"\u003egeoalchemy/geoalchemy2#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Remove warning message from MySQL/MariaDB reflection by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/560\"\u003egeoalchemy/geoalchemy2#560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/561\"\u003egeoalchemy/geoalchemy2#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: correct doc strings by \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/564\"\u003egeoalchemy/geoalchemy2#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.0 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/565\"\u003egeoalchemy/geoalchemy2#565\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/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.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/geoalchemy/geoalchemy2/blob/master/CHANGES.txt\"\u003egeoalchemy2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Fix doc strings for cache enabled - \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e(papacodebear/master) Fix: Remove warning from MySQL/MariaDB reflection \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Improve readability of benchmark results \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/547\"\u003e#547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker container \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/546\"\u003e#546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf (mariadb): Stop converting WKB to WKT \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/545\"\u003e#545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/544\"\u003e#544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Compile literal binds properly \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/540\"\u003e#540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/538\"\u003e#538\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/geoalchemy/geoalchemy2/commit/60767082df9f4587fadd56ab94847ebc39df8295\"\u003e\u003ccode\u003e6076708\u003c/code\u003e\u003c/a\u003e Release: 0.18.0 (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/565\"\u003e#565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/e13112177bdf79cae0d72a6e89d815dc272e3dc5\"\u003e\u003ccode\u003ee131121\u003c/code\u003e\u003c/a\u003e Feat: Add support of spatial indexes for Raster type for PostgreSQL (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/0b432086a0c3b8ab160c5cc1864aa65e02f35362\"\u003e\u003ccode\u003e0b43208\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/8791b2eec013f21f599ca060d9fee4aba72ec2a1\"\u003e\u003ccode\u003e8791b2e\u003c/code\u003e\u003c/a\u003e Docs: Fix doc strings for cache enabled (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/d3c1d04c8b462c61132403e44a7a4f04a487c142\"\u003e\u003ccode\u003ed3c1d04\u003c/code\u003e\u003c/a\u003e Chore: Move reflection type registering (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/24dc5d05d97fb9a2a57103c1823a58f06940a5e8\"\u003e\u003ccode\u003e24dc5d0\u003c/code\u003e\u003c/a\u003e Fix: Remove warning from MySQL/MariaDB reflection (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/71f7914d4ddf7d9c46c772e36a8463e20901966a\"\u003e\u003ccode\u003e71f7914\u003c/code\u003e\u003c/a\u003e Feat: Handle computed columns (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/c139cdbca62019d92d18f12429706732777c38e2\"\u003e\u003ccode\u003ec139cdb\u003c/code\u003e\u003c/a\u003e Perf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/2e94baa4f3ac23e0160ed841d4efe7ceb3fa2378\"\u003e\u003ccode\u003e2e94baa\u003c/code\u003e\u003c/a\u003e Test: Improve readbility of benchmark results (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/84292bc352ab7ff1102a0529772d32afb0309616\"\u003e\u003ccode\u003e84292bc\u003c/code\u003e\u003c/a\u003e Chore: Create FUNDING.yml (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gql` from 3.5.2 to 4.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/graphql-python/gql/releases\"\u003egql's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eChange transports prototype using GraphQLRequest (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/551\"\u003e#551\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUsing GraphQLRequest instead of DocumentNode for gql, execute, subscribe methods (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/556\"\u003e#556\u003c/a\u003e):\n\u003cstrong\u003eThis is a big change:\u003c/strong\u003e\n\u003cul\u003e\n\u003cli\u003ethe \u003ccode\u003egql\u003c/code\u003e and \u003ccode\u003edsl_gql\u003c/code\u003e methods will now return a \u003ccode\u003eGraphQLRequest\u003c/code\u003e instead of a \u003ccode\u003eDocument\u003c/code\u003e Node\na \u003ccode\u003eGraphQLRequest\u003c/code\u003e is an object containing the document and optional \u003ccode\u003evariable_values\u003c/code\u003e and \u003ccode\u003eoperation_name\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eALL the \u003ccode\u003eexecute\u003c/code\u003e and \u003ccode\u003esubscribe\u003c/code\u003e methods now receive a \u003ccode\u003eGraphQLRequest\u003c/code\u003e as main argument instead of\na \u003ccode\u003eDocumentNode\u003c/code\u003e, \u003ccode\u003evariable_values\u003c/code\u003e and \u003ccode\u003eoperation_name\u003c/code\u003e arguments\u003c/li\u003e\n\u003cli\u003eThe old method of sending \u003ccode\u003evariable_values\u003c/code\u003e as an argument of \u003ccode\u003eexecute\u003c/code\u003e or \u003ccode\u003esubscribe\u003c/code\u003e still works but is deprecated\nSee \u003ca href=\"https://gql.readthedocs.io/en/latest/usage/variables.html\"\u003ehttps://gql.readthedocs.io/en/latest/usage/variables.html\u003c/a\u003e for the new syntax.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix subscription task cancel exception swallow (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/548\"\u003e#548\u003c/a\u003e):\nPreviously if a task was cancelled while a subscription task was active,\nthe \u003ccode\u003easyncio.CancelledError\u003c/code\u003e Exception would be swallowed by our code.\nThis is not the case anymore so you should now trap that Exception yourself.\u003c/li\u003e\n\u003cli\u003eClean up the file upload interface with FileVar class (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/549\"\u003e#549\u003c/a\u003e):\nThe file upload functionality has been modified to require \u003ccode\u003eFileVar\u003c/code\u003e instances\nfor uploaded files (the old method still works but is deprecated).\nSee \u003ca href=\"https://gql.readthedocs.io/en/latest/usage/file_upload.html\"\u003ehttps://gql.readthedocs.io/en/latest/usage/file_upload.html\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSet logging level to DEBUG for all transports (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/552\"\u003e#552\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eintrospection now requests deprecated input fields by default (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/553\"\u003e#553\u003c/a\u003e)\nNote that some backends might not support this and return \u003ccode\u003eUnknown argument includeDeprecated\u003c/code\u003e. See \u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/564\"\u003e#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTrapping dependencies Exceptions into TransportConnectionFailed (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/558\"\u003e#558\u003c/a\u003e):\nNow gql will trap Exceptions raised by dependencies when executing a request and will\nencapsulate that Exception into the \u003ccode\u003eTransportConnectionFailed\u003c/code\u003e Exception\u003c/li\u003e\n\u003cli\u003eSet \u003cstrong\u003essl=True\u003c/strong\u003e by default for AIOHTTPTransport (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/538\"\u003e#538\u003c/a\u003e) (issue \u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/529\"\u003e#529\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eTransportConnectionClosed\u003c/code\u003e Exception replacing \u003ccode\u003eConnectionClosed\u003c/code\u003e Exception (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/536\"\u003e#536\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ewebsocket\u003c/code\u003e attribute removed from transport, now using \u003ccode\u003e_connected\u003c/code\u003e instead (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/536\"\u003e#536\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade lastest websockets and Exceptions overhaul (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cp\u003eBatching requests is now fully supported, on sync or async transports, with automatic batching:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImplementation of execute_batch for async transports (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/550\"\u003e#550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImplementation of automatic batching for async (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://gql.readthedocs.io/en/latest/advanced/batching_requests.html\"\u003ehttps://gql.readthedocs.io/en/latest/advanced/batching_requests.html\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix httpx test deprecated warning (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/542\"\u003e#542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRefactor websoc...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1379","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1379","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1379/packages"}},{"old_version":"47.0.0","new_version":"50.1.0","update_type":"major","path":null,"pr_created_at":"2025-10-27T18:52:08.000Z","version_change":"47.0.0 → 50.1.0","issue":{"uuid":"3558163248","node_id":"PR_kwDOHTdvBs6v93uY","number":1355,"state":"closed","title":"deps(ibis): bump the all group across 1 directory with 29 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2025-11-03T18:56:38.000Z","author_association":null,"state_reason":null,"created_at":"2025-10-27T18:52:08.000Z","updated_at":"2025-11-03T18:56:40.000Z","time_to_close":605070,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":29,"packages":[{"name":"fastapi","old_version":"0.116.1","new_version":"0.120.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"pydantic","old_version":"2.10.6","new_version":"2.12.3","repository_url":"https://github.com/pydantic/pydantic"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.41.1","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.2.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"orjson","old_version":"3.10.16","new_version":"3.11.4","repository_url":"https://github.com/ijl/orjson"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.18.0","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"sqlglot","old_version":"27.14.0","new_version":"27.28.1","repository_url":"https://github.com/tobymao/sqlglot"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"anyio","old_version":"4.10.0","new_version":"4.11.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"duckdb","old_version":"1.3.2","new_version":"1.4.1","repository_url":"https://github.com/duckdb/duckdb-python"},{"name":"oracledb","old_version":"3.3.0","new_version":"3.4.0","repository_url":"https://github.com/oracle/python-oracledb"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.38.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"uvicorn-worker","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/Kludex/uvicorn-worker"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.9","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"50.1.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"jupyterlab","old_version":"4.4.9","new_version":"4.4.10","repository_url":"https://github.com/jupyterlab/jupyterlab"},{"name":"ipykernel","old_version":"6.30.1","new_version":"7.1.0","repository_url":"https://github.com/ipython/ipykernel"},{"name":"matplotlib","old_version":"3.10.6","new_version":"3.10.7","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"plotly","old_version":"6.3.0","new_version":"6.3.1","repository_url":"https://github.com/plotly/plotly.py"},{"name":"pytest","old_version":"8.3.5","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.13.2","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.44","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.14.2","repository_url":"https://github.com/astral-sh/ruff"},{"name":"trino","old_version":"0.335.0","new_version":"0.336.0","repository_url":"https://github.com/trinodb/trino-python-client"},{"name":"psycopg2","old_version":"2.9.10","new_version":"2.9.11","repository_url":"https://github.com/psycopg/psycopg2"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.9.2","repository_url":"https://github.com/ClickHouse/clickhouse-connect"},{"name":"polars","old_version":"1.33.1","new_version":"1.34.0","repository_url":"https://github.com/pola-rs/polars"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 29 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.116.1` | `0.120.1` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.12.3` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.41.1` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.2.1` |\n| [orjson](https://github.com/ijl/orjson) | `3.10.16` | `3.11.4` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.3` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.18.0` |\n| [sqlglot](https://github.com/tobymao/sqlglot) | `27.14.0` | `27.28.1` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.10.0` | `4.11.0` |\n| [duckdb](https://github.com/duckdb/duckdb-python) | `1.3.2` | `1.4.1` |\n| [oracledb](https://github.com/oracle/python-oracledb) | `3.3.0` | `3.4.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.38.0` |\n| [uvicorn-worker](https://github.com/Kludex/uvicorn-worker) | `0.3.0` | `0.4.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.9` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `50.1.0` |\n| [jupyterlab](https://github.com/jupyterlab/jupyterlab) | `4.4.9` | `4.4.10` |\n| [ipykernel](https://github.com/ipython/ipykernel) | `6.30.1` | `7.1.0` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.10.6` | `3.10.7` |\n| [plotly](https://github.com/plotly/plotly.py) | `6.3.0` | `6.3.1` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `8.4.2` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.13.2` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.44` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.3.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.14.2` |\n| [trino](https://github.com/trinodb/trino-python-client) | `0.335.0` | `0.336.0` |\n| [psycopg2](https://github.com/psycopg/psycopg2) | `2.9.10` | `2.9.11` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.9.2` |\n| [polars](https://github.com/pola-rs/polars) | `1.33.1` | `1.34.0` |\n\n\nUpdates `fastapi` from 0.116.1 to 0.120.1\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's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.120.1\u003c/h2\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Bump Starlette to \u0026lt;\u003ccode\u003e0.50.0\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14234\"\u003e#14234\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\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🔧 Add \u003ccode\u003elicense\u003c/code\u003e and \u003ccode\u003elicense-files\u003c/code\u003e to \u003ccode\u003epyproject.toml\u003c/code\u003e, remove \u003ccode\u003eLicense\u003c/code\u003e from \u003ccode\u003eclassifiers\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14230\"\u003e#14230\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.120.0\u003c/h2\u003e\n\u003cp\u003eThere are no major nor breaking changes in this release. ☕️\u003c/p\u003e\n\u003cp\u003eThe internal reference documentation now uses \u003ccode\u003eannotated_doc.Doc\u003c/code\u003e instead of \u003ccode\u003etyping_extensions.Doc\u003c/code\u003e, this adds a new (very small) dependency on \u003ca href=\"https://github.com/fastapi/annotated-doc\"\u003e\u003ccode\u003eannotated-doc\u003c/code\u003e\u003c/a\u003e, a package made just to provide that \u003ccode\u003eDoc\u003c/code\u003e documentation utility class.\u003c/p\u003e\n\u003cp\u003eI would expect \u003ccode\u003etyping_extensions.Doc\u003c/code\u003e to be deprecated and then removed at some point from \u003ccode\u003etyping_extensions\u003c/code\u003e, for that reason there's the new \u003ccode\u003eannotated-doc\u003c/code\u003e micro-package. If you are curious about this, you can read more in the repo for \u003ca href=\"https://github.com/fastapi/annotated-doc\"\u003e\u003ccode\u003eannotated-doc\u003c/code\u003e\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis new version \u003ccode\u003e0.120.0\u003c/code\u003e only contains that transition to the new home package for that utility class \u003ccode\u003eDoc\u003c/code\u003e.\u003c/p\u003e\n\u003ch3\u003eTranslations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🌐 Sync German docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14188\"\u003e#14188\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\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➕ Migrate internal reference documentation from \u003ccode\u003etyping_extensions.Doc\u003c/code\u003e to \u003ccode\u003eannotated_doc.Doc\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14222\"\u003e#14222\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🛠️ Update German LLM prompt and test file. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14189\"\u003e#14189\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ [pre-commit.ci] pre-commit autoupdate. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14181\"\u003e#14181\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\u003ch2\u003e0.119.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix internal Pydantic v1 compatibility (warnings) for Python 3.14 and Pydantic 2.12.1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14186\"\u003e#14186\u003c/a\u003e by \u003ca href=\"https://github.com/svlandeg\"\u003e\u003ccode\u003e@​svlandeg\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📝 Replace \u003ccode\u003estarlette.io\u003c/code\u003e by \u003ccode\u003estarlette.dev\u003c/code\u003e and \u003ccode\u003euvicorn.org\u003c/code\u003e by \u003ccode\u003euvicorn.dev\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14176\"\u003e#14176\u003c/a\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\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🔧 Add sponsor Requestly. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14205\"\u003e#14205\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔧 Configure reminder for \u003ccode\u003ewaiting\u003c/code\u003e label in \u003ccode\u003eissue-manager\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14156\"\u003e#14156\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.119.0\u003c/h2\u003e\n\u003cp\u003eFastAPI now (temporarily) supports both Pydantic v2 models and \u003ccode\u003epydantic.v1\u003c/code\u003e models at the same time in the same app, to make it easier for any FastAPI apps still using Pydantic v1 to gradually but quickly \u003cstrong\u003emigrate to Pydantic v2\u003c/strong\u003e.\u003c/p\u003e\n\u003cpre lang=\"Python\"\u003e\u003ccode\u003efrom fastapi import FastAPI\nfrom pydantic import BaseModel as BaseModelV2\nfrom pydantic.v1 import BaseModel\n\u003cp\u003e\u0026lt;/tr\u0026gt;\u0026lt;/table\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\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/fastapi/fastapi/commit/78c94c3f565b9b992d1eecafaeb0991e2b177d7c\"\u003e\u003ccode\u003e78c94c3\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.120.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/4b0301b2803ff98efa638de90ebac05a76a85e20\"\u003e\u003ccode\u003e4b0301b\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/436932aef587e8120439f545ad25220114ea15ab\"\u003e\u003ccode\u003e436932a\u003c/code\u003e\u003c/a\u003e ⬆️ Bump Starlette to \u0026lt;\u003ccode\u003e0.50.0\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14234\"\u003e#14234\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/3ea6a4a0b14583c690b31cbd6951d561f1b6da5c\"\u003e\u003ccode\u003e3ea6a4a\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/96dd32718b36155e221e96a3025f71d654d5031a\"\u003e\u003ccode\u003e96dd327\u003c/code\u003e\u003c/a\u003e 🔧 Add \u003ccode\u003elicense\u003c/code\u003e and \u003ccode\u003elicense-files\u003c/code\u003e to \u003ccode\u003epyproject.toml\u003c/code\u003e, remove \u003ccode\u003eLicense\u003c/code\u003e fro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/cd40c5b40ffd8ba0c6a6a6c96bbf34ec1cf9c525\"\u003e\u003ccode\u003ecd40c5b\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.120.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/1c6ee57bbfeebfa21a393b7939c85d9d4d29f0b0\"\u003e\u003ccode\u003e1c6ee57\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/09f40968cb03e878aa25bc83340f891b09d1e418\"\u003e\u003ccode\u003e09f4096\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d390f2e41fb508de416071d481937bc7be486589\"\u003e\u003ccode\u003ed390f2e\u003c/code\u003e\u003c/a\u003e ➕ Migrate internal reference documentation from \u003ccode\u003etyping_extensions.Doc\u003c/code\u003e to `a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/cb7018d782c88b189f11d6141c8231ffb9b403b0\"\u003e\u003ccode\u003ecb7018d\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.116.1...0.120.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.10.6 to 2.12.3\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.3 2025-10-17\u003c/h2\u003e\n\u003ch2\u003ev2.12.3 (2025-10-17)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eThis is the third 2.13 patch release, fixing issues related to the \u003ccode\u003eFieldInfo\u003c/code\u003e class, and reverting a change to the supported \u003ca href=\"https://docs.pydantic.dev/latest/concepts/validators/#model-validators\"\u003e\u003cem\u003eafter\u003c/em\u003e model validator\u003c/a\u003e function signatures.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRaise a warning when an invalid after model validator function signature is raised 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/12414\"\u003e#12414\u003c/a\u003e.\nStarting in 2.12.0, using class methods for \u003cem\u003eafter\u003c/em\u003e model validators raised an error, but the error wasn't raised concistently. We decided to emit a deprecation warning instead.\u003c/li\u003e\n\u003cli\u003eAdd \u003ca href=\"https://docs.pydantic.dev/latest/api/fields/#pydantic.fields.FieldInfo.asdict\"\u003e\u003ccode\u003eFieldInfo.asdict()\u003c/code\u003e\u003c/a\u003e method, improve documentation around \u003ccode\u003eFieldInfo\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/12411\"\u003e#12411\u003c/a\u003e.\nThis also adds back support for mutations on \u003ccode\u003eFieldInfo\u003c/code\u003e classes, that are reused as \u003ccode\u003eAnnotated\u003c/code\u003e metadata. \u003cstrong\u003eHowever\u003c/strong\u003e, note that this is still \u003cem\u003enot\u003c/em\u003e a supported pattern. Instead, please refer to the \u003ca href=\"https://docs.pydantic.dev/latest/examples/dynamic_models/\"\u003eadded example\u003c/a\u003e in the documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThe \u003ca href=\"https://pydantic.dev/articles/pydantic-v2-12-release#changes\"\u003eblog post\u003c/a\u003e section on changes was also updated to document the changes related to \u003ccode\u003eserialize_as_any\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.12.2...v2.12.3\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.2...v2.12.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.2 2025-10-14\u003c/h2\u003e\n\u003ch2\u003ev2.12.2 (2025-10-14)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRelease a new \u003ccode\u003epydantic-core\u003c/code\u003e version, as a corrupted CPython 3.10 \u003ccode\u003emanylinux2014_aarch64\u003c/code\u003e wheel got uploaded (\u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1843\"\u003epydantic-core#1843\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix issue with recursive generic models with a parent model class 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/12398\"\u003e#12398\u003c/a\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.12.1...v2.12.2\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.12.1...v2.12.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.12.1 2025-10-13\u003c/h2\u003e\n\u003ch2\u003ev2.12.1 (2025-10-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.1\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eThis is the first 2.12 patch release, addressing most (but not all yet) regressions from the initial 2.12.0 release.\u003c/p\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eDo not evaluate annotations when inspecting validators and serializers 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/12355\"\u003e#12355\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake sure \u003ccode\u003eNone\u003c/code\u003e is converted as \u003ccode\u003eNoneType\u003c/code\u003e in Python 3.14 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/12370\"\u003e#12370\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBackport V1 runtime warning when using Python 3.14 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/12367\"\u003e#12367\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix error message for invalid validator signatures 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/12366\"\u003e#12366\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePopulate field name in \u003ccode\u003eValidationInfo\u003c/code\u003e for validation of default value 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-core/pull/1826\"\u003epydantic-core#1826\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEncode credentials in \u003ccode\u003eMultiHostUrl\u003c/code\u003e builder by \u003ca href=\"https://github.com/willswire\"\u003e\u003ccode\u003e@​willswire\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1829\"\u003epydantic-core#1829\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRespect field serializers when using \u003ccode\u003eserialize_as_any\u003c/code\u003e serialization flag by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1829\"\u003epydantic-core#1829\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix various \u003ccode\u003eRootModel\u003c/code\u003e serialization issues by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1836\"\u003epydantic-core#1836\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNew Contributors\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/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.3 (2025-10-17)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.3\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eThis is the third 2.12 patch release, fixing issues related to the \u003ccode\u003eFieldInfo\u003c/code\u003e class, and reverting a change to the supported\n\u003ca href=\"https://docs.pydantic.dev/latest/concepts/validators/#model-validators\"\u003e\u003cem\u003eafter\u003c/em\u003e model validator\u003c/a\u003e function signatures.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRaise a warning when an invalid after model validator function signature is raised 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/12414\"\u003e#12414\u003c/a\u003e.\nStarting in 2.12.0, using class methods for \u003cem\u003eafter\u003c/em\u003e model validators raised an error, but the error wasn't raised concistently. We decided\nto emit a deprecation warning instead.\u003c/li\u003e\n\u003cli\u003eAdd \u003ca href=\"https://docs.pydantic.dev/latest/api/fields/#pydantic.fields.FieldInfo.asdict\"\u003e\u003ccode\u003eFieldInfo.asdict()\u003c/code\u003e\u003c/a\u003e method, improve documentation around \u003ccode\u003eFieldInfo\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/12411\"\u003e#12411\u003c/a\u003e.\nThis also add back support for mutations on \u003ccode\u003eFieldInfo\u003c/code\u003e classes, that are reused as \u003ccode\u003eAnnotated\u003c/code\u003e metadata. \u003cstrong\u003eHowever\u003c/strong\u003e, note that this is still\n\u003cem\u003enot\u003c/em\u003e a supported pattern. Instead, please refer to the \u003ca href=\"https://docs.pydantic.dev/latest/examples/dynamic_models/\"\u003eadded example\u003c/a\u003e in the documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThe \u003ca href=\"https://pydantic.dev/articles/pydantic-v2-12-release#changes\"\u003eblog post\u003c/a\u003e section on changes was also updated to document the changes related to \u003ccode\u003eserialize_as_any\u003c/code\u003e.\u003c/p\u003e\n\u003ch2\u003ev2.12.2 (2025-10-14)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.2\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRelease a new \u003ccode\u003epydantic-core\u003c/code\u003e version, as a corrupted CPython 3.10 \u003ccode\u003emanylinux2014_aarch64\u003c/code\u003e wheel got uploaded (\u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1843\"\u003epydantic-core#1843\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix issue with recursive generic models with a parent model class 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/12398\"\u003e#12398\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.12.1 (2025-10-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.12.1\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cp\u003eThis is the first 2.12 patch release, addressing most (but not all yet) regressions from the initial 2.12.0 release.\u003c/p\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eDo not evaluate annotations when inspecting validators and serializers 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/12355\"\u003e#12355\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake sure \u003ccode\u003eNone\u003c/code\u003e is converted as \u003ccode\u003eNoneType\u003c/code\u003e in Python 3.14 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/12370\"\u003e#12370\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBackport V1 runtime warning when using Python 3.14 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/12367\"\u003e#12367\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix error message for invalid validator signatures 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/12366\"\u003e#12366\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePopulate field name in \u003ccode\u003eValidationInfo\u003c/code\u003e for validation of default value 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-core/pull/1826\"\u003epydantic-core#1826\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEncode credentials in \u003ccode\u003eMultiHostUrl\u003c/code\u003e builder by \u003ca href=\"https://github.com/willswire\"\u003e\u003ccode\u003e@​willswire\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1829\"\u003epydantic-core#1829\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRespect field serializers when using \u003ccode\u003eserialize_as_any\u003c/code\u003e serialization flag by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1829\"\u003epydantic-core#1829\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix various \u003ccode\u003eRootModel\u003c/code\u003e serialization issues by \u003ca href=\"https://github.com/davidhewitt\"\u003e\u003ccode\u003e@​davidhewitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic-core/pull/1836\"\u003epydantic-core#1836\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNew Contributors\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/1a8850d101e67d2744ba8c6286e1172d7cd89d0b\"\u003e\u003ccode\u003e1a8850d\u003c/code\u003e\u003c/a\u003e Prepare release 2.12.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/09dbcf29c73c3fd7fd3ef1edfebe357e807cc9ca\"\u003e\u003ccode\u003e09dbcf2\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eFieldInfo.asdict()\u003c/code\u003e method, improve documentation around \u003ccode\u003eFieldInfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/5da43310ec61a7b9b3017b2b9f388e778398a1bc\"\u003e\u003ccode\u003e5da4331\u003c/code\u003e\u003c/a\u003e Improve documentation about serialize as any behavior\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/9c863245ad3799ab331f33b52e2d7441e9c1191e\"\u003e\u003ccode\u003e9c86324\u003c/code\u003e\u003c/a\u003e Raise a warning when an invalid after model validator function signature is r...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/36a73c6ed53df7f1cad3343bc811e1dd3f52d26f\"\u003e\u003ccode\u003e36a73c6\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003epydantic-extra-types\u003c/code\u003e dependency to version \u003ccode\u003e\u0026gt;=2.10.6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/1e616a3a6fa0201f840c08143cac883e56a2d9df\"\u003e\u003ccode\u003e1e616a3\u003c/code\u003e\u003c/a\u003e Prepare release v2.12.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/dc302e2d09f0eed14729f69bc61a258f1f35d35c\"\u003e\u003ccode\u003edc302e2\u003c/code\u003e\u003c/a\u003e Fix issue with recursive generic models with a parent model class\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/6876485d0cffeb66c915695574344ae4b03645a7\"\u003e\u003ccode\u003e6876485\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003epydantic-core\u003c/code\u003e to v2.41.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/b4076c66773b514d4891f036a4cc562b8ff0ff21\"\u003e\u003ccode\u003eb4076c6\u003c/code\u003e\u003c/a\u003e Prepare release 2.12.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/b67f07291167b4005a6eeee05fcad67b43a53f41\"\u003e\u003ccode\u003eb67f072\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003epydantic-core\u003c/code\u003e to v2.41.3\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.12.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.41.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.41.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.41.0...v2.41.1\"\u003e2.41.1\u003c/a\u003e (2025-09-30)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSuppress deprecation warning for ADC (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1815\"\u003e#1815\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/751ce3f625eb24029e9f0c59c081bdd3e18eb583\"\u003e751ce3f\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.41.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.3...v2.41.0\"\u003e2.41.0\u003c/a\u003e (2025-09-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for cachetools 6.0 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1773\"\u003e#1773\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/af18060d521baf86c219d66a26631decb3b28e79\"\u003eaf18060\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd trust boundary support for service accounts and impersonation. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1778\"\u003e#1778\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/99be2ce19401296718f880c7a80cd2e841df78bf\"\u003e99be2ce\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecating \u003ca href=\"https://googleapis.dev/python/google-auth/latest/reference/google.auth.html#google.auth.load_credentials_from_dict\"\u003eload_credentials_from_dict\u003c/a\u003e (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/58b66ec8069bfe5304c7da512fe89a8e838ce1ca\"\u003e58b66ec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDeprecating \u003ca href=\"https://googleapis.dev/python/google-auth/latest/reference/google.auth.html#google.auth.load_credentials_from_file\"\u003eload_credentials_from_file\u003c/a\u003e (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/58b66ec8069bfe5304c7da512fe89a8e838ce1ca\"\u003e58b66ec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix type error in credentials.py for python 3.7 and 3.8 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1805\"\u003e#1805\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/c30a6a781d3e385598a0ac28a370a7f4800010cc\"\u003ec30a6a7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate user guide to include x509 feature. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1802\"\u003e#1802\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2d89ab4d85568564e1f462f5b463991ffd9b82b1\"\u003e2d89ab4\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.41.0...v2.41.1\"\u003e2.41.1\u003c/a\u003e (2025-09-30)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSuppress deprecation warning for ADC (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1815\"\u003e#1815\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/751ce3f625eb24029e9f0c59c081bdd3e18eb583\"\u003e751ce3f\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.3...v2.41.0\"\u003e2.41.0\u003c/a\u003e (2025-09-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for cachetools 6.0 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1773\"\u003e#1773\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/af18060d521baf86c219d66a26631decb3b28e79\"\u003eaf18060\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd trust boundary support for service accounts and impersonation. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1778\"\u003e#1778\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/99be2ce19401296718f880c7a80cd2e841df78bf\"\u003e99be2ce\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecating \u003ca href=\"https://googleapis.dev/python/google-auth/latest/reference/google.auth.html#google.auth.load_credentials_from_dict\"\u003eload_credentials_from_dict\u003c/a\u003e (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/58b66ec8069bfe5304c7da512fe89a8e838ce1ca\"\u003e58b66ec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDeprecating \u003ca href=\"https://googleapis.dev/python/google-auth/latest/reference/google.auth.html#google.auth.load_credentials_from_file\"\u003eload_credentials_from_file\u003c/a\u003e (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/58b66ec8069bfe5304c7da512fe89a8e838ce1ca\"\u003e58b66ec\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix type error in credentials.py for python 3.7 and 3.8 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1805\"\u003e#1805\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/c30a6a781d3e385598a0ac28a370a7f4800010cc\"\u003ec30a6a7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate user guide to include x509 feature. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1802\"\u003e#1802\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2d89ab4d85568564e1f462f5b463991ffd9b82b1\"\u003e2d89ab4\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable logging response body for async logs (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1756\"\u003e#1756\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2f0ddfeb9f6c726c68beebd7eefd32c86f7f0963\"\u003e2f0ddfe\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/googleapis/google-auth-library-python/commit/ebf33636bc3e525de37f331b75fade6b61c950cb\"\u003e\u003ccode\u003eebf3363\u003c/code\u003e\u003c/a\u003e chore(main): release 2.41.1 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1816\"\u003e#1816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/751ce3f625eb24029e9f0c59c081bdd3e18eb583\"\u003e\u003ccode\u003e751ce3f\u003c/code\u003e\u003c/a\u003e fix: suppress deprecation warning for ADC (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1815\"\u003e#1815\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/819199ac180e368823e1364695273aa41851cc6e\"\u003e\u003ccode\u003e819199a\u003c/code\u003e\u003c/a\u003e chore(main): release 2.41.0 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1797\"\u003e#1797\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/58b66ec8069bfe5304c7da512fe89a8e838ce1ca\"\u003e\u003ccode\u003e58b66ec\u003c/code\u003e\u003c/a\u003e fix: Deprecating generic load methods and adding warnings on few cred types (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/1e8a867a84c26c249ad9bf659d9bdf61183883c7\"\u003e\u003ccode\u003e1e8a867\u003c/code\u003e\u003c/a\u003e chore: update owners (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1813\"\u003e#1813\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/c30a6a781d3e385598a0ac28a370a7f4800010cc\"\u003e\u003ccode\u003ec30a6a7\u003c/code\u003e\u003c/a\u003e fix: fix type error in credentials.py for python 3.7 and 3.8 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1805\"\u003e#1805\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/03dfee20e3c2d6e232e12eb78ef4201244ce7c13\"\u003e\u003ccode\u003e03dfee2\u003c/code\u003e\u003c/a\u003e chore: secret update (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1806\"\u003e#1806\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2d89ab4d85568564e1f462f5b463991ffd9b82b1\"\u003e\u003ccode\u003e2d89ab4\u003c/code\u003e\u003c/a\u003e docs: update user guide to include x509 feature. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1802\"\u003e#1802\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/03e640ed4ba4a6afbbe4462beb43a95b60744ed7\"\u003e\u003ccode\u003e03e640e\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1803\"\u003e#1803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/99be2ce19401296718f880c7a80cd2e841df78bf\"\u003e\u003ccode\u003e99be2ce\u003c/code\u003e\u003c/a\u003e feat: Add trust boundary support for service accounts and impersonation. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1778\"\u003e#1778\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.41.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.2.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.2.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport reading .env from FIFOs (Unix) by \u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CI to use trusted publishing on PyPI\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/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/586\"\u003etheskumar/python-dotenv#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.2.0...v1.2.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003estyle: upgrade to use ruff by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/567\"\u003etheskumar/python-dotenv#567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse sys.exit() instead of exit() by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/568\"\u003etheskumar/python-dotenv#568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat:  add \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e flag to disable load_dotenv (fixes \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/510\"\u003e#510\u003c/a\u003e) by \u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded Python@3.14: Github CI \u0026amp; tox.ini by \u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eocs: clarify what load_dotenv() does in README by \u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group across 1 directory with 2 updates 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/theskumar/python-dotenv/pull/577\"\u003etheskumar/python-dotenv#577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove project metadata and config to pyproject.toml by \u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\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/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/569\"\u003etheskumar/python-dotenv#569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/579\"\u003etheskumar/python-dotenv#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cybercoded\"\u003e\u003ccode\u003e@​cybercoded\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/575\"\u003etheskumar/python-dotenv#575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/583\"\u003etheskumar/python-dotenv#583\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: ensure find_dotenv work reliably on python 3.13 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003etheskumar/python-dotenv#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cli): issue with execvpe on Windows by \u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\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/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a security policy by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/512\"\u003etheskumar/python-dotenv#512\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep GitHub Actions up to date with GitHub's Dependabot by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/506\"\u003etheskumar/python-dotenv#506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix multiline string in test.yml \u0026amp; use fail-fast strategy by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/514\"\u003etheskumar/python-dotenv#514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnhance dotenv run: Switch to execvpe for better resource management and signal handling by \u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add py3.13 to test.yml by \u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 trove classifier by \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for python 3.13 and drop 3.8 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/551\"\u003etheskumar/python-dotenv#551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update README.md by \u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSome more s/Python-dotenv/python-dotenv/ by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/552\"\u003etheskumar/python-dotenv#552\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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.2.1] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMove more config to \u003ccode\u003epyproject.toml\u003c/code\u003e, removed \u003ccode\u003esetup.cfg\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for reading \u003ccode\u003e.env\u003c/code\u003e from FIFOs (Unix) by [\u003ca href=\"https://github.com/sidharth-sudhir\"\u003e\u003ccode\u003e@​sidharth-sudhir\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.2.0] - 2025-10-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade build system to use PEP 517 \u0026amp; PEP 518 to use \u003ccode\u003ebuild\u003c/code\u003e and \u003ccode\u003epyproject.toml\u003c/code\u003e by [\u003ca href=\"https://github.com/EpicWink\"\u003e\u003ccode\u003e@​EpicWink\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/583\"\u003e#583\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14 by [\u003ca href=\"https://github.com/23f3001135\"\u003e\u003ccode\u003e@​23f3001135\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for disabling of \u003ccode\u003eload_dotenv()\u003c/code\u003e using \u003ccode\u003ePYTHON_DOTENV_DISABLED\u003c/code\u003e env var. by [\u003ca href=\"https://github.com/matthewfranglen\"\u003e\u003ccode\u003e@​matthewfranglen\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/569\"\u003e#569\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCLI: revert the use of execvpe on Windows by [\u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003e#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.0] - 2025-03-25\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFeature\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for python 3.13\u003c/li\u003e\n\u003cli\u003eEnhance \u003ccode\u003edotenv run\u003c/code\u003e, switch to \u003ccode\u003eexecvpe\u003c/code\u003e for better resource management and signal handling (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/523\"\u003e#523\u003c/a\u003e) by [\u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efind_dotenv\u003c/code\u003e and \u003ccode\u003eload_dotenv\u003c/code\u003e now correctly looks up at the current directory when running in debugger or pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e by [\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e])\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eMisc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8\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/theskumar/python-dotenv/commit/eaf2a9129ccec6febda0f741eb3bb852c3f947bd\"\u003e\u003ccode\u003eeaf2a91\u003c/code\u003e\u003c/a\u003e Do not remove .coverage file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8716196891532eeb67d24a513e8d975437f5e8b7\"\u003e\u003ccode\u003e8716196\u003c/code\u003e\u003c/a\u003e Bump version: 1.2.0 → 1.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/b87807fcad6e74332c3c63a75c92ce5814fa7a55\"\u003e\u003ccode\u003eb87807f\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/3af77d3029eb717aeec0a3c25f751b6a614a6d3c\"\u003e\u003ccode\u003e3af77d3\u003c/code\u003e\u003c/a\u003e Support reading .env from FIFOs (Unix) (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/586\"\u003e#586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/467ee22fccb2fb7ccda71a0d9e37c6ea3cb8d993\"\u003e\u003ccode\u003e467ee22\u003c/code\u003e\u003c/a\u003e Fix test failures after moving config to pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/76999e741d87e958ebd74e3ae9834c0514e77a59\"\u003e\u003ccode\u003e76999e7\u003c/code\u003e\u003c/a\u003e Move more config pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/222ce2cc58ebc82ba78da8781269267b9f585932\"\u003e\u003ccode\u003e222ce2c\u003c/code\u003e\u003c/a\u003e Update to use trusted publisher on pypi\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8ed4f79d202eba582b44bdf1f5deb726dd68783d\"\u003e\u003ccode\u003e8ed4f79\u003c/code\u003e\u003c/a\u003e Update docs requirements\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/5bf882241c607445bf02cf5b241535d62e2b99c1\"\u003e\u003ccode\u003e5bf8822\u003c/code\u003e\u003c/a\u003e Bump version: 1.1.1 → 1.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/1fe11cc737ee4399e9c51d1b69b0dd858f6b4669\"\u003e\u003ccode\u003e1fe11cc\u003c/code\u003e\u003c/a\u003e upadate changelog\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `orjson` from 3.10.16 to 3.11.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ijl/orjson/releases\"\u003eorjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.4\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eABI compatibility with CPython 3.15 alpha 1.\u003c/li\u003e\n\u003cli\u003ePublish PyPI wheels for 3.14 and manylinux i686, manylinux arm7,\nmanylinux ppc64le, manylinux s390x.\u003c/li\u003e\n\u003cli\u003eBuild now requires a C compiler.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared buffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI Windows aarch64/arm64 wheels.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 alpha 7.\u003c/li\u003e\n\u003cli\u003eFix incompatibility running on Python 3.13 using WASM.\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/ijl/orjson/blob/master/CHANGELOG.md\"\u003eorjson's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.4 - 2025-10-24\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eABI compatibility with CPython 3.15 alpha 1.\u003c/li\u003e\n\u003cli\u003ePublish PyPI wheels for 3.14 and manylinux i686, manylinux arm7,\nmanylinux ppc64le, manylinux s390x.\u003c/li\u003e\n\u003cli\u003eBuild now requires a C compiler.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.3 - 2025-08-26\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1 - 2025-07-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures. This was introduced in 3.11.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 - 2025-07-15\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared\nbuffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18 - 2025-04-29\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/ijl/orjson/commit/a4fdeb3aff125d501ec0dd0577f9b38b2b977b4f\"\u003e\u003ccode\u003ea4fdeb3\u003c/code\u003e\u003c/a\u003e 3.11.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2e80d68afacafca8751e6a64ca05d0d4087dbd15\"\u003e\u003ccode\u003e2e80d68\u003c/code\u003e\u003c/a\u003e unlikely to cold_path, remove intrinsics\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/27edea92f8da2fdfc3f1342474e2f1686f1edf55\"\u003e\u003ccode\u003e27edea9\u003c/code\u003e\u003c/a\u003e FFI through crate::ffi, partial non-CPython compatibility\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/416a8c9578da780d0d58b5e6b751793deafc610d\"\u003e\u003ccode\u003e416a8c9\u003c/code\u003e\u003c/a\u003e Unconditionally build yyjson\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/c8c1a17dca8436a2fee05ca060febd096e653d98\"\u003e\u003ccode\u003ec8c1a17\u003c/code\u003e\u003c/a\u003e edition 2024\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/af4179a1fa0aafffd0f867203b6c36e9a522f165\"\u003e\u003ccode\u003eaf4179a\u003c/code\u003e\u003c/a\u003e build maintenance, panic_immediate_abort break, test 3.15\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/aa8c946cfbe2aba29016bc9c9ddc8713cb00173b\"\u003e\u003ccode\u003eaa8c946\u003c/code\u003e\u003c/a\u003e 3.11.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2442efc125068e43bec97c26e3a6b5da8932936c\"\u003e\u003ccode\u003e2442efc\u003c/code\u003e\u003c/a\u003e Fix PyPI project metadata when using maturin 1.9.2 or later\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/ba760146e7bc407d729436d8dbcb9e1495c83773\"\u003e\u003ccode\u003eba76014\u003c/code\u003e\u003c/a\u003e 3.11.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/49315905a4f071f2279b6df87125ca94780b5173\"\u003e\u003ccode\u003e4931590\u003c/code\u003e\u003c/a\u003e CPython compatibility misc\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ijl/orjson/compare/3.10.16...3.11.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` from 2.2.3 to 2.3.3\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.3\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.3.\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.3.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.3 supports Python 3.9 and higher, and is the first release to support Python 3.14.\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.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\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/pandas-dev/pandas/commit/9c8bc3e55188c8aff37207a74f1dd144980b8874\"\u003e\u003ccode\u003e9c8bc3e\u003c/code\u003e\u003c/a\u003e RLS: 2.3.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/6aa788a00bda9b0f004302076dad94df3edeafc7\"\u003e\u003ccode\u003e6aa788a\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] DOC: prepare 2.3.3 whatsnew notes for release (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62499\"\u003e#62499\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62508\"\u003e#62508\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/b64f0df403d11ac733d9f460f89a5e99c8044ed0\"\u003e\u003ccode\u003eb64f0df\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: avoid validation error for ufunc with string[python] ar...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/058eb2b0edfc408dae9966ef1f03372f2a3ff04c\"\u003e\u003ccode\u003e058eb2b\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: String[pyarrow] comparison with mixed object (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62424\"\u003e#62424\u003c/a\u003e) (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/2ca088daef6a9d9333fea8aedffc7e50d28dfdee\"\u003e\u003ccode\u003e2ca088d\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] DEPR: remove the Period resampling deprecation (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62480\"\u003e#62480\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62\"\u003e#62\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/92bf98f623572ed053d48be5818c8503f1b61888\"\u003e\u003ccode\u003e92bf98f\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: fix .str.isdigit to honor unicode superscript for older...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/e57c7d6a2247316188fba0ba2a0db3c11028d75c\"\u003e\u003ccode\u003ee57c7d6\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62452\"\u003e#62452\u003c/a\u003e on branch 2.3.x (TST: Adjust tests for numexpr 2.13) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62454\"\u003e#62454\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/e0fe9a03c90e560c34a3bbbdd1735a8b64f7b281\"\u003e\u003ccode\u003ee0fe9a0\u003c/code\u003e\u003c/a\u003e Backport to 2.3.x: REGR: from_records not initializing subclasses properly (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/23a1085e641c8e3a5b500e319c5973e4160b9236\"\u003e\u003ccode\u003e23a1085\u003c/code\u003e\u003c/a\u003e BUG: improve future warning for boolean operations with missaligned indexes (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/61136969fb18b438b6660bd5d485d0236dbf4a71\"\u003e\u003ccode\u003e6113696\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62396\"\u003e#62396\u003c/a\u003e on branch 2.3.x (PKG/DOC: indicate Python 3.14 support in ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pandas-dev/pandas/compare/v2.2.3...v2.3.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geoalchemy2` from 0.17.1 to 0.18.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/releases\"\u003egeoalchemy2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/538\"\u003egeoalchemy/geoalchemy2#538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/540\"\u003egeoalchemy/geoalchemy2#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCompile literal binds by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/543\"\u003egeoalchemy/geoalchemy2#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/544\"\u003egeoalchemy/geoalchemy2#544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore (mariadb): Stop converting WKB to WKT by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/545\"\u003egeoalchemy/geoalchemy2#545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker containers by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/546\"\u003egeoalchemy/geoalchemy2#546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/547\"\u003egeoalchemy/geoalchemy2#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/553\"\u003egeoalchemy/geoalchemy2#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/554\"\u003egeoalchemy/geoalchemy2#554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Improve readbility of benchmark results by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/556\"\u003egeoalchemy/geoalchemy2#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/555\"\u003egeoalchemy/geoalchemy2#555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/557\"\u003egeoalchemy/geoalchemy2#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Remove warning message from MySQL/MariaDB reflection by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/560\"\u003egeoalchemy/geoalchemy2#560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/561\"\u003egeoalchemy/geoalchemy2#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: correct doc strings by \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/564\"\u003egeoalchemy/geoalchemy2#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.0 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/565\"\u003egeoalchemy/geoalchemy2#565\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/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.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/geoalchemy/geoalchemy2/blob/master/CHANGES.txt\"\u003egeoalchemy2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Fix doc strings for cache enabled - \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e(papacodebear/master) Fix: Remove warning from MySQL/MariaDB reflection \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Improve readability of benchmark results \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/547\"\u003e#547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker container \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/546\"\u003e#546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf (mariadb): Stop converting WKB to WKT \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/545\"\u003e#545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/544\"\u003e#544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Compile literal binds properly \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/540\"\u003e#540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/538\"\u003e#538\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/geoalchemy/geoalchemy2/commit/60767082df9f4587fadd56ab94847ebc39df8295\"\u003e\u003ccode\u003e6076708\u003c/code\u003e\u003c/a\u003e Release: 0.18.0 (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/565\"\u003e#565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/e13112177bdf79cae0d72a6e89d815dc272e3dc5\"\u003e\u003ccode\u003ee131121\u003c/code\u003e\u003c/a\u003e Feat: Add support of spatial indexes for Raster type for PostgreSQL (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/0b432086a0c3b8ab160c5cc1864aa65e02f35362\"\u003e\u003ccode\u003e0b43208\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/8791b2eec013f21f599ca060d9fee4aba72ec2a1\"\u003e\u003ccode\u003e8791b2e\u003c/code\u003e\u003c/a\u003e Docs: Fix doc strings for cache enabled (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/d3c1d04c8b462c61132403e44a7a4f04a487c142\"\u003e\u003ccode\u003ed3c1d04\u003c/code\u003e\u003c/a\u003e Chore: Move reflection type registering (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/24dc5d05d97fb9a2a57103c1823a58f06940a5e8\"\u003e\u003ccode\u003e24dc5d0\u003c/code\u003e\u003c/a\u003e Fix: Remove warning from MySQL/MariaDB reflection (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/71f7914d4ddf7d9c46c772e36a8463e20901966a\"\u003e\u003ccode\u003e71f7914\u003c/code\u003e\u003c/a\u003e Feat: Handle computed columns (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/c139cdbca62019d92d18f12429706732777c38e2\"\u003e\u003ccode\u003ec139cdb\u003c/code\u003e\u003c/a\u003e Perf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/2e94baa4f3ac23e0160e...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1355","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1355","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1355/packages"}},{"old_version":"47.0.0","new_version":"50.0.0","update_type":"major","path":null,"pr_created_at":"2025-09-30T00:35:17.000Z","version_change":"47.0.0 → 50.0.0","issue":{"uuid":"2872492417","node_id":"PR_kwDOKF4tPs6rNsGB","number":2550,"state":"closed","title":"Build: Bump datafusion from 47.0.0 to 50.0.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-10-05T21:17:16.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-30T00:35:17.000Z","updated_at":"2025-10-05T21:17:16.000Z","time_to_close":506519,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Build: Bump","packages":[{"name":"datafusion","old_version":"47.0.0","new_version":"50.0.0","repository_url":"https://github.com/apache/datafusion-python"}],"path":null,"ecosystem":"pip"},"body":"Bumps [datafusion](https://github.com/apache/datafusion-python) from 47.0.0 to 50.0.0.\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/c3a76553b755ea64b9a161e2e9d1759ba3068a96\"\u003e\u003ccode\u003ec3a7655\u003c/code\u003e\u003c/a\u003e Update version number, add changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/bf22c1d4c130df19ed84d99f768fb96be9463a78\"\u003e\u003ccode\u003ebf22c1d\u003c/code\u003e\u003c/a\u003e Prepare for DF50 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/b7d3519d395025183a06aad268ee30e61f8226df\"\u003e\u003ccode\u003eb7d3519\u003c/code\u003e\u003c/a\u003e docs: add apache iceberg as datafusion data source (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1240\"\u003e#1240\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/d54dc4aeeeab41b5a845d383a672630ceb880253\"\u003e\u003ccode\u003ed54dc4a\u003c/code\u003e\u003c/a\u003e Support string column identifiers for sort/aggregate/window and stricter Expr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/9e976362cd6e68a66ef53a1758b0da6932d41ffe\"\u003e\u003ccode\u003e9e97636\u003c/code\u003e\u003c/a\u003e chore: remove redundant error transformation (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/c609dfa31abacc8c891e70ab1c0ae474c12789ee\"\u003e\u003ccode\u003ec609dfa\u003c/code\u003e\u003c/a\u003e feat: allow passing a slice to and expression with the [] indexing (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1215\"\u003e#1215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/b325a385d3ff737cd30f53c5a2439adb6e90ee8a\"\u003e\u003ccode\u003eb325a38\u003c/code\u003e\u003c/a\u003e fix: update link to user example for custom table provider (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/332c69b61ebcad0a6aec631855795ef0615c5a13\"\u003e\u003ccode\u003e332c69b\u003c/code\u003e\u003c/a\u003e docs: fix CaseBuilder documentation example (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1225\"\u003e#1225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/f0bbad7543717c5f08ba2acb92d42c9d30fd2355\"\u003e\u003ccode\u003ef0bbad7\u003c/code\u003e\u003c/a\u003e Set fail on warning for documentation generation (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1218\"\u003e#1218\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/200a249ac310e0f91bfd9f85f2d5278badca0131\"\u003e\u003ccode\u003e200a249\u003c/code\u003e\u003c/a\u003e Fixing a few Typos (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1220\"\u003e#1220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/datafusion-python/compare/47.0.0...50.0.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=datafusion\u0026package-manager=pip\u0026previous-version=47.0.0\u0026new-version=50.0.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/apache/iceberg-python/pull/2550","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Ficeberg-python/issues/2550","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2550/packages"}},{"old_version":"47.0.0","new_version":"50.0.0","update_type":"major","path":null,"pr_created_at":"2025-09-29T21:53:31.000Z","version_change":"47.0.0 → 50.0.0","issue":{"uuid":"2872183605","node_id":"PR_kwDOHTdvBs6rMgs1","number":1335,"state":"closed","title":"deps(ibis): bump the all group across 1 directory with 23 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2025-10-06T18:30:47.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-29T21:53:31.000Z","updated_at":"2025-10-06T18:30:47.000Z","time_to_close":592636,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":23,"packages":[{"name":"fastapi","old_version":"0.116.1","new_version":"0.118.0","repository_url":"https://github.com/fastapi/fastapi"},{"name":"pydantic","old_version":"2.10.6","new_version":"2.11.9","repository_url":"https://github.com/pydantic/pydantic"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.40.3","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"orjson","old_version":"3.10.16","new_version":"3.11.3","repository_url":"https://github.com/ijl/orjson"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.2","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.18.0","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"sqlglot","old_version":"27.14.0","new_version":"27.19.0","repository_url":"https://github.com/tobymao/sqlglot"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"anyio","old_version":"4.10.0","new_version":"4.11.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"duckdb","old_version":"1.3.2","new_version":"1.4.0","repository_url":"https://github.com/duckdb/duckdb-python"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.37.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"uvicorn-worker","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/Kludex/uvicorn-worker"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.8","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"50.0.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"jupyterlab","old_version":"4.4.7","new_version":"4.4.9","repository_url":"https://github.com/jupyterlab/jupyterlab"},{"name":"pytest","old_version":"8.3.5","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.13.1","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.43","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.13.2","repository_url":"https://github.com/astral-sh/ruff"},{"name":"trino","old_version":"0.335.0","new_version":"0.336.0","repository_url":"https://github.com/trinodb/trino-python-client"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.9.2","repository_url":"https://github.com/ClickHouse/clickhouse-connect"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 23 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.116.1` | `0.118.0` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.11.9` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.40.3` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.1.1` |\n| [orjson](https://github.com/ijl/orjson) | `3.10.16` | `3.11.3` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.2` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.18.0` |\n| [sqlglot](https://github.com/tobymao/sqlglot) | `27.14.0` | `27.19.0` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.10.0` | `4.11.0` |\n| [duckdb](https://github.com/duckdb/duckdb-python) | `1.3.2` | `1.4.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.37.0` |\n| [uvicorn-worker](https://github.com/Kludex/uvicorn-worker) | `0.3.0` | `0.4.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.8` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `50.0.0` |\n| [jupyterlab](https://github.com/jupyterlab/jupyterlab) | `4.4.7` | `4.4.9` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `8.4.2` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.13.1` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.43` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.3.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.13.2` |\n| [trino](https://github.com/trinodb/trino-python-client) | `0.335.0` | `0.336.0` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.9.2` |\n\n\nUpdates `fastapi` from 0.116.1 to 0.118.0\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's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.118.0\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for \u003ccode\u003eStreamingResponse\u003c/code\u003es with dependencies with \u003ccode\u003eyield\u003c/code\u003e or \u003ccode\u003eUploadFile\u003c/code\u003es, close after the response is done. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14099\"\u003e#14099\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eBefore FastAPI 0.118.0, if you used a dependency with \u003ccode\u003eyield\u003c/code\u003e, it would run the exit code after the \u003cem\u003epath operation function\u003c/em\u003e returned but right before sending the response.\u003c/p\u003e\n\u003cp\u003eThis change also meant that if you returned a \u003ccode\u003eStreamingResponse\u003c/code\u003e, the exit code of the dependency with \u003ccode\u003eyield\u003c/code\u003e would have been already run.\u003c/p\u003e\n\u003cp\u003eFor example, if you had a database session in a dependency with \u003ccode\u003eyield\u003c/code\u003e, the \u003ccode\u003eStreamingResponse\u003c/code\u003e would not be able to use that session while streaming data because the session would have already been closed in the exit code after \u003ccode\u003eyield\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThis behavior was reverted in 0.118.0, to make the exit code after \u003ccode\u003eyield\u003c/code\u003e be executed after the response is sent.\u003c/p\u003e\n\u003cp\u003eYou can read more about it in the docs for \u003ca href=\"https://fastapi.tiangolo.com/advanced/advanced-dependencies#dependencies-with-yield-httpexception-except-and-background-tasks\"\u003eAdvanced Dependencies - Dependencies with \u003ccode\u003eyield\u003c/code\u003e, \u003ccode\u003eHTTPException\u003c/code\u003e, \u003ccode\u003eexcept\u003c/code\u003e and Background Tasks\u003c/a\u003e. Including what you could do if you wanted to close a database session earlier, before returning the response to the client.\u003c/p\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Update \u003ccode\u003etutorial/security/oauth2-jwt/\u003c/code\u003e to use \u003ccode\u003epwdlib\u003c/code\u003e with Argon2 instead of \u003ccode\u003epasslib\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13917\"\u003e#13917\u003c/a\u003e by \u003ca href=\"https://github.com/Neizvestnyj\"\u003e\u003ccode\u003e@​Neizvestnyj\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✏️ Fix typos in OAuth2 password request forms. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14112\"\u003e#14112\u003c/a\u003e by \u003ca href=\"https://github.com/alv2017\"\u003e\u003ccode\u003e@​alv2017\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Update contributing guidelines for installing requirements. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14095\"\u003e#14095\u003c/a\u003e by \u003ca href=\"https://github.com/alejsdev\"\u003e\u003ccode\u003e@​alejsdev\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🌐 Sync German docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14098\"\u003e#14098\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\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/14103\"\u003e#14103\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\u003cli\u003e♻️ Refactor sponsor image handling. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14102\"\u003e#14102\u003c/a\u003e by \u003ca href=\"https://github.com/alejsdev\"\u003e\u003ccode\u003e@​alejsdev\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Fix sponsor display issue by hiding element on image error. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14097\"\u003e#14097\u003c/a\u003e by \u003ca href=\"https://github.com/alejsdev\"\u003e\u003ccode\u003e@​alejsdev\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Hide sponsor badge when sponsor image is not displayed. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14096\"\u003e#14096\u003c/a\u003e by \u003ca href=\"https://github.com/alejsdev\"\u003e\u003ccode\u003e@​alejsdev\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.117.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix validation error when \u003ccode\u003eFile\u003c/code\u003e is declared after \u003ccode\u003eForm\u003c/code\u003e parameter. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/11194\"\u003e#11194\u003c/a\u003e by \u003ca href=\"https://github.com/thomasleveil\"\u003e\u003ccode\u003e@​thomasleveil\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.117.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨  Allow \u003ccode\u003eNone\u003c/code\u003e as return type for bodiless responses. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/9425\"\u003e#9425\u003c/a\u003e by \u003ca href=\"https://github.com/hofrob\"\u003e\u003ccode\u003e@​hofrob\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✨ Allow array values for OpenAPI schema \u003ccode\u003etype\u003c/code\u003e field. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13639\"\u003e#13639\u003c/a\u003e by \u003ca href=\"https://github.com/sammasak\"\u003e\u003ccode\u003e@​sammasak\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✨ Add OpenAPI \u003ccode\u003eexternal_docs\u003c/code\u003e parameter to \u003ccode\u003eFastAPI\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13713\"\u003e#13713\u003c/a\u003e by \u003ca href=\"https://github.com/cmtoro\"\u003e\u003ccode\u003e@​cmtoro\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⚡️ Fix \u003ccode\u003edefault_factory\u003c/code\u003e for response model field with Pydantic V1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/9704\"\u003e#9704\u003c/a\u003e by \u003ca href=\"https://github.com/vvanglro\"\u003e\u003ccode\u003e@​vvanglro\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Fix inconsistent processing of model docstring formfeed char with Pydantic V1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/6039\"\u003e#6039\u003c/a\u003e by \u003ca href=\"https://github.com/MaxwellPayne\"\u003e\u003ccode\u003e@​MaxwellPayne\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003ejsonable_encoder\u003c/code\u003e alters \u003ccode\u003ejson_encoders\u003c/code\u003e of Pydantic v1 objects. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/4972\"\u003e#4972\u003c/a\u003e by \u003ca href=\"https://github.com/aboubacs\"\u003e\u003ccode\u003e@​aboubacs\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/333f1ba737be6507fc707278f6b69cf1f81efdc1\"\u003e\u003ccode\u003e333f1ba\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.118.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/1d5168a4a1293fbc44799fbab615a120c6fdb85e\"\u003e\u003ccode\u003e1d5168a\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/bfa54b406d298155edbdfe8fdd173479857d5ad6\"\u003e\u003ccode\u003ebfa54b4\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/e329d78f866a12893699f786f1209a666e1688e3\"\u003e\u003ccode\u003ee329d78\u003c/code\u003e\u003c/a\u003e 🐛 Fix support for \u003ccode\u003eStreamingResponse\u003c/code\u003es with dependencies with \u003ccode\u003eyield\u003c/code\u003e or `Upl...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/861b22c40897a03d2d7e5926923d962121ed5e2e\"\u003e\u003ccode\u003e861b22c\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/efdafa43613f084d198e51f6858e8610beddb5ed\"\u003e\u003ccode\u003eefdafa4\u003c/code\u003e\u003c/a\u003e 📝 Update \u003ccode\u003etutorial/security/oauth2-jwt/\u003c/code\u003e to use \u003ccode\u003epwdlib\u003c/code\u003e with Argon2 instead ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/450a334253b1426aab08b4dea17b16ba8b4c098c\"\u003e\u003ccode\u003e450a334\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/3eb2ee7510905447a36abe628708f102e09cfa59\"\u003e\u003ccode\u003e3eb2ee7\u003c/code\u003e\u003c/a\u003e ✏️ Fix typos in OAuth2 password request forms (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14112\"\u003e#14112\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/287eb316df5b7c35dd1e5da27ca2a8d345bee8d1\"\u003e\u003ccode\u003e287eb31\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/cca3341cb93cb4d0267dd8e862db9235aeaac11c\"\u003e\u003ccode\u003ecca3341\u003c/code\u003e\u003c/a\u003e 🌐 Sync German docs (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14098\"\u003e#14098\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.116.1...0.118.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.10.6 to 2.11.9\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.11.9 2025-09-13\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBackport v1.10.23 changes by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\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.8...v2.11.9\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.8...v2.11.9\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.8 2025-09-13\u003c/h2\u003e\n\u003ch2\u003ev2.11.8 (2025-09-13)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix mypy plugin for mypy 1.18 by \u003ca href=\"https://github.com/cdce8p\"\u003e\u003ccode\u003e@​cdce8p\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12209\"\u003e#12209\u003c/a\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.7...v2.11.8\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.7...v2.11.8\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.7 2025-06-14\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCopy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build 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/11980\"\u003epydantic/pydantic#11980\u003c/a\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.6...v2.11.7\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.6...v2.11.7\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.6 2025-06-13\u003c/h2\u003e\n\u003ch2\u003ev2.11.6 (2025-06-13)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRebuild dataclass fields before 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/11949\"\u003e#11949\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlways store the original field assignment on \u003ccode\u003eFieldInfo\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/11946\"\u003e#11946\u003c/a\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.5...v2.11.6\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.5...v2.11.6\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.5 2025-05-22\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCheck if \u003ccode\u003eFieldInfo\u003c/code\u003e is complete after applying type variable map 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/11855\"\u003e#11855\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not delete mock validator/serializer in \u003ccode\u003emodel_rebuild()\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/11890\"\u003e#11890\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not duplicate metadata on model rebuild 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/11902\"\u003e#11902\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/pydantic/pydantic/blob/v2.11.9/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.11.9 (2025-09-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.9\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBackport v1.10.23 changes by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.8 (2025-09-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.8\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix mypy plugin for mypy 1.18 by \u003ca href=\"https://github.com/cdce8p\"\u003e\u003ccode\u003e@​cdce8p\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12209\"\u003e#12209\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.7 (2025-06-14)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.7\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCopy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build 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/11898\"\u003e#11898\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.6 (2025-06-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.6\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRebuild dataclass fields before 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/11949\"\u003e#11949\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlways store the original field assignment on \u003ccode\u003eFieldInfo\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/11946\"\u003e#11946\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.5 (2025-05-22)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCheck if \u003ccode\u003eFieldInfo\u003c/code\u003e is complete after applying type variable map 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/11855\"\u003e#11855\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/pydantic/pydantic/commit/92310953c146a2ac668a0141be820c083e325f5d\"\u003e\u003ccode\u003e9231095\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/f003a89eeaff35ee18f220a2c790d20536e3d0ab\"\u003e\u003ccode\u003ef003a89\u003c/code\u003e\u003c/a\u003e Backport v1.10.23 changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/96b81ddaf93a1f2e19ff1609080c33de10b8d931\"\u003e\u003ccode\u003e96b81dd\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/966f377692194b3f1d6d5155ac78052bec0a751d\"\u003e\u003ccode\u003e966f377\u003c/code\u003e\u003c/a\u003e Fix mypy v2 plugin for upcoming \u003ccode\u003e1.18\u003c/code\u003e mypy release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/5f033e46c54fea1b59b6894d6527daf49475e690\"\u003e\u003ccode\u003e5f033e4\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c3368b83c411f421a7322959bc29f3bea4bd252a\"\u003e\u003ccode\u003ec3368b8\u003c/code\u003e\u003c/a\u003e Copy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/11980\"\u003e#11980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/3987b23db4b31ff35e9fa15c21c0c1d1c9808838\"\u003e\u003ccode\u003e3987b23\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/dc7a9d20bee55a3a6e7397ee46abfcd9057b627b\"\u003e\u003ccode\u003edc7a9d2\u003c/code\u003e\u003c/a\u003e Always store the original field assignment on \u003ccode\u003eFieldInfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c284c279a5b8c95d32ab5ec31d2511b3b27bfa87\"\u003e\u003ccode\u003ec284c27\u003c/code\u003e\u003c/a\u003e Rebuild dataclass fields before schema generation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/5e6d1dc71fe9bd832635cb2e9b4af92286fd00b8\"\u003e\u003ccode\u003e5e6d1dc\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.5\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.11.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.40.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.40.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable logging response body for async logs (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1756\"\u003e#1756\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2f0ddfeb9f6c726c68beebd7eefd32c86f7f0963\"\u003e2f0ddfe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.39.0...v2.40.0\"\u003e2.40.0\u003c/a\u003e (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd request response logging to auth (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1678\"\u003e#1678\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/77ad53eb00c74b3badc486c8207a16dbc49f37e5\"\u003e77ad53e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrect webauthn JSON parsing to be compliant with standard. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1658\"\u003e#1658\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0c5ef364fb13ca9d7d17100166de87732d752de8\"\u003e0c5ef36\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.39.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.39.0\"\u003e2.39.0\u003c/a\u003e (2025-04-14)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds GA support for X.509 workload identity federation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1695\"\u003e#1695\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/74959605400f9a1976bbdc52c029943b634eb553\"\u003e7495960\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable logging response body for async logs (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1756\"\u003e#1756\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2f0ddfeb9f6c726c68beebd7eefd32c86f7f0963\"\u003e2f0ddfe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.39.0...v2.40.0\"\u003e2.40.0\u003c/a\u003e (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd request response logging to auth (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1678\"\u003e#1678\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/77ad53eb00c74b3badc486c8207a16dbc49f37e5\"\u003e77ad53e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrect webauthn JSON parsing to be compliant with standard. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1658\"\u003e#1658\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0c5ef364fb13ca9d7d17100166de87732d752de8\"\u003e0c5ef36\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.39.0\"\u003e2.39.0\u003c/a\u003e (2025-04-14)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds GA support for X.509 workload identity federation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1695\"\u003e#1695\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/74959605400f9a1976bbdc52c029943b634eb553\"\u003e7495960\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd impersonated SA via local ADC support for fetch_id_token (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1740\"\u003e#1740\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/f24976452d741de6a49d9b7a85cdab47812f5312\"\u003ef249764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd missing packaging dependency for feature requiring urllib3 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1732\"\u003e#1732\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/221f4a82fa25c1ad453b85bc8b7f2fc304724879\"\u003e221f4a8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd request timeout for MDS requests (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1699\"\u003e#1699\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/9f7d3fa92c0e656a1c970182833abe2d0d3ad3ee\"\u003e9f7d3fa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExplicitly declare support for Python 3.13 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1741\"\u003e#1741\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/6fd04d57df90866f24b554c489f8f2653467d70e\"\u003e6fd04d5\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/googleapis/google-auth-library-python/commit/ca94ead4035beea4741dc5384449032f8e6f75d8\"\u003e\u003ccode\u003eca94ead\u003c/code\u003e\u003c/a\u003e chore(main): release 2.40.3 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1768\"\u003e#1768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e\u003ccode\u003e88891cc\u003c/code\u003e\u003c/a\u003e fix: auth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0be91e2f795c989a592cb9c7828a1c53d8107165\"\u003e\u003ccode\u003e0be91e2\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;fix: remove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25660bc57569b3f3e9a1f664516d10f4bc8744b8\"\u003e\u003ccode\u003e25660bc\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1774\"\u003e#1774\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e\u003ccode\u003e7c61c7d\u003c/code\u003e\u003c/a\u003e fix: remove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e\u003ccode\u003e554f967\u003c/code\u003e\u003c/a\u003e fix: retry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/6845065aca69d5130eec40fbe052f56c36860bf7\"\u003e\u003ccode\u003e6845065\u003c/code\u003e\u003c/a\u003e chore(main): release 2.40.2 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1766\"\u003e#1766\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e\u003ccode\u003e44e38b6\u003c/code\u003e\u003c/a\u003e fix: Update test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e\u003ccode\u003e97ed1c8\u003c/code\u003e\u003c/a\u003e chore: remove sync response logs in AuthorizedSession (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1761\"\u003e#1761\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/13a897ea05feff6a2267f700a53b50e9741919a0\"\u003e\u003ccode\u003e13a897e\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1764\"\u003e#1764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.40.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: ensure find_dotenv work reliably on python 3.13 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003etheskumar/python-dotenv#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cli): issue with execvpe on Windows by \u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\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/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a security policy by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/512\"\u003etheskumar/python-dotenv#512\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep GitHub Actions up to date with GitHub's Dependabot by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/506\"\u003etheskumar/python-dotenv#506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix multiline string in test.yml \u0026amp; use fail-fast strategy by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/514\"\u003etheskumar/python-dotenv#514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnhance dotenv run: Switch to execvpe for better resource management and signal handling by \u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add py3.13 to test.yml by \u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 trove classifier by \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for python 3.13 and drop 3.8 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/551\"\u003etheskumar/python-dotenv#551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update README.md by \u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSome more s/Python-dotenv/python-dotenv/ by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/552\"\u003etheskumar/python-dotenv#552\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd _is_debugger so load_dotenv will work in pdb by \u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/553\"\u003etheskumar/python-dotenv#553\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/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/553\"\u003etheskumar/python-dotenv#553\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.0\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCLI: revert the use of execvpe on Windows by [\u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003e#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.0] - 2025-03-25\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFeature\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for python 3.13\u003c/li\u003e\n\u003cli\u003eEnhance \u003ccode\u003edotenv run\u003c/code\u003e, switch to \u003ccode\u003eexecvpe\u003c/code\u003e for better resource management and signal handling (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/523\"\u003e#523\u003c/a\u003e) by [\u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efind_dotenv\u003c/code\u003e and \u003ccode\u003eload_dotenv\u003c/code\u003e now correctly looks up at the current directory when running in debugger or pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e by [\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e])\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eMisc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8\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/theskumar/python-dotenv/commit/16e660d384b942b11879b44500afbbe021650448\"\u003e\u003ccode\u003e16e660d\u003c/code\u003e\u003c/a\u003e Bump version: 1.1.0 → 1.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/667e82f18d6e5306894c8746c46b1da2d031bd23\"\u003e\u003ccode\u003e667e82f\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/9d85edb3b8652de4601f9ad8a7a49ad9909f898a\"\u003e\u003ccode\u003e9d85edb\u003c/code\u003e\u003c/a\u003e fix(cli): issue with execvpe on Windows (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/566\"\u003e#566\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8411987b9301f716245074872afa30646e9b9eb7\"\u003e\u003ccode\u003e8411987\u003c/code\u003e\u003c/a\u003e fix: ensure find_dotenv work reliably on python 3.13 (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/01f899733de664cda0550207067eb36a1795062f\"\u003e\u003ccode\u003e01f8997\u003c/code\u003e\u003c/a\u003e docs update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/6a02ef5a1034d66338811757df07a113a1169af6\"\u003e\u003ccode\u003e6a02ef5\u003c/code\u003e\u003c/a\u003e update mkdocs -\u0026gt; mkdocstrings config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/36c6270db41e1e88be4ec21d0fb876ba0c79d363\"\u003e\u003ccode\u003e36c6270\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/2198b698c021851201261fac27884ee8db6553d5\"\u003e\u003ccode\u003e2198b69\u003c/code\u003e\u003c/a\u003e Bump version: 1.0.1 → 1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/c89fb6d41c0a25f670b34ba05f392260eaa6ccd1\"\u003e\u003ccode\u003ec89fb6d\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8dd413e84b1fb1b3368c02106aab07a533fae015\"\u003e\u003ccode\u003e8dd413e\u003c/code\u003e\u003c/a\u003e Add _is_debugger so load_dotenv will work in pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `orjson` from 3.10.16 to 3.11.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ijl/orjson/releases\"\u003eorjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared buffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI Windows aarch64/arm64 wheels.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 alpha 7.\u003c/li\u003e\n\u003cli\u003eFix incompatibility running on Python 3.13 using WASM.\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/ijl/orjson/blob/master/CHANGELOG.md\"\u003eorjson's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.3 - 2025-08-26\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1 - 2025-07-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures. This was introduced in 3.11.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 - 2025-07-15\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared\nbuffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18 - 2025-04-29\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17 - 2025-04-29\u003c/h2\u003e\n\u003ch3\u003eChanged\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/ijl/orjson/commit/aa8c946cfbe2aba29016bc9c9ddc8713cb00173b\"\u003e\u003ccode\u003eaa8c946\u003c/code\u003e\u003c/a\u003e 3.11.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2442efc125068e43bec97c26e3a6b5da8932936c\"\u003e\u003ccode\u003e2442efc\u003c/code\u003e\u003c/a\u003e Fix PyPI project metadata when using maturin 1.9.2 or later\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/ba760146e7bc407d729436d8dbcb9e1495c83773\"\u003e\u003ccode\u003eba76014\u003c/code\u003e\u003c/a\u003e 3.11.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/49315905a4f071f2279b6df87125ca94780b5173\"\u003e\u003ccode\u003e4931590\u003c/code\u003e\u003c/a\u003e CPython compatibility misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/3de9324511a704ffbe13a94221c8f05062bf71e8\"\u003e\u003ccode\u003e3de9324\u003c/code\u003e\u003c/a\u003e MSRV 1.85, edition 2024, stdarch_x86_avx512 fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/d7359c9899c63570b21a200bc0f8d559eea7cd19\"\u003e\u003ccode\u003ed7359c9\u003c/code\u003e\u003c/a\u003e Remove macOS 13 CI runner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/1d3aa7af6271981907b1e0d1eeee2e07a7c49302\"\u003e\u003ccode\u003e1d3aa7a\u003c/code\u003e\u003c/a\u003e 3.11.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/11d29cb9bcd73777c554d65ba670cde2d6c8c802\"\u003e\u003ccode\u003e11d29cb\u003c/code\u003e\u003c/a\u003e 3.14 packaging misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/168391825ba415df853735a4359095a0327dcd1a\"\u003e\u003ccode\u003e1683918\u003c/code\u003e\u003c/a\u003e bytes::BufMut\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/9c33ff9df61b3b9d71527acf4fb60a735d841025\"\u003e\u003ccode\u003e9c33ff9\u003c/code\u003e\u003c/a\u003e Fix big-endian PyStr\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ijl/orjson/compare/3.10.16...3.11.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` from 2.2.3 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\u003ch2\u003ePandas 2.3.0\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.0.\nThis release includes some new features, bug fixes, and performance improvements. 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.0/whatsnew/v2.3.0.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.0 supports Python 3.10 and higher.\u003c/p\u003e\n\u003cp\u003eThe release will be available on the defaults and conda-forge channels:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install -c conda-forge pandas\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr via PyPI:\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/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.2.3...v2.3.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geoalchemy2` from 0.17.1 to 0.18.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/releases\"\u003egeoalchemy2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/538\"\u003egeoalchemy/geoalchemy2#538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/540\"\u003egeoalchemy/geoalchemy2#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCompile literal binds by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/543\"\u003egeoalchemy/geoalchemy2#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/544\"\u003egeoalchemy/geoalchemy2#544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore (mariadb): Stop converting WKB to WKT by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/545\"\u003egeoalchemy/geoalchemy2#545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker containers by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/546\"\u003egeoalchemy/geoalchemy2#546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/547\"\u003egeoalchemy/geoalchemy2#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/553\"\u003egeoalchemy/geoalchemy2#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/554\"\u003egeoalchemy/geoalchemy2#554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Improve readbility of benchmark results by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/556\"\u003egeoalchemy/geoalchemy2#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/555\"\u003egeoalchemy/geoalchemy2#555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/557\"\u003egeoalchemy/geoalchemy2#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Remove warning message from MySQL/MariaDB reflection by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/560\"\u003egeoalchemy/geoalchemy2#560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/561\"\u003egeoalchemy/geoalchemy2#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: correct doc strings by \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/564\"\u003egeoalchemy/geoalchemy2#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.0 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/565\"\u003egeoalchemy/geoalchemy2#565\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/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.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/geoalchemy/geoalchemy2/blob/master/CHANGES.txt\"\u003egeoalchemy2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Fix doc strings for cache enabled - \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e(papacodebear/master) Fix: Remove warning from MySQL/MariaDB reflection \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Improve readability of benchmark results \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/547\"\u003e#547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker container \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/546\"\u003e#546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf (mariadb): Stop converting WKB to WKT \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/545\"\u003e#545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/544\"\u003e#544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Compile literal binds properly \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/540\"\u003e#540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/538\"\u003e#538\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/geoalchemy/geoalchemy2/commit/60767082df9f4587fadd56ab94847ebc39df8295\"\u003e\u003ccode\u003e6076708\u003c/code\u003e\u003c/a\u003e Release: 0.18.0 (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/565\"\u003e#565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/e13112177bdf79cae0d72a6e89d815dc272e3dc5\"\u003e\u003ccode\u003ee131121\u003c/code\u003e\u003c/a\u003e Feat: Add support of spatial indexes for Raster type for PostgreSQL (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/0b432086a0c3b8ab160c5cc1864aa65e02f35362\"\u003e\u003ccode\u003e0b43208\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/8791b2eec013f21f599ca060d9fee4aba72ec2a1\"\u003e\u003ccode\u003e8791b2e\u003c/code\u003e\u003c/a\u003e Docs: Fix doc strings for cache enabled (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/d3c1d04c8b462c61132403e44a7a4f04a487c142\"\u003e\u003ccode\u003ed3c1d04\u003c/code\u003e\u003c/a\u003e Chore: Move reflection type registering (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/24dc5d05d97fb9a2a57103c1823a58f06940a5e8\"\u003e\u003ccode\u003e24dc5d0\u003c/code\u003e\u003c/a\u003e Fix: Remove warning from MySQL/MariaDB reflection (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/71f7914d4ddf7d9c46c772e36a8463e20901966a\"\u003e\u003ccode\u003e71f7914\u003c/code\u003e\u003c/a\u003e Feat: Handle computed columns (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/c139cdbca62019d92d18f12429706732777c38e2\"\u003e\u003ccode\u003ec139cdb\u003c/code\u003e\u003c/a\u003e Perf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/2e94baa4f3ac23e0160ed841d4efe7ceb3fa2378\"\u003e\u003ccode\u003e2e94baa\u003c/code\u003e\u003c/a\u003e Test: Improve readbility of benchmark results (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/84292bc352ab7ff1102a0529772d32afb0309616\"\u003e\u003ccode\u003e84292bc\u003c/code\u003e\u003c/a\u003e Chore: Create FUNDING.yml (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sqlglot` from 27.14.0 to 27.19.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tobymao/sqlglot/blob/main/CHANGELOG.md\"\u003esqlglot's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v27.19.0] - 2025-09-26\u003c/h2\u003e\n\u003ch3\u003e:boom: BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/68473ac3ec8dc76512dc76819892a1b0324c7ddc\"\u003e\u003ccode\u003e68473ac\u003c/code\u003e\u003c/a\u003e - Annotate type for snowflake PARSE_URL function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5962\"\u003e#5962\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eAnnotate type for snowflake PARSE_URL function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5962\"\u003e#5962\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/b015a9d944d0a87069a7750ad74953c399d7da34\"\u003e\u003ccode\u003eb015a9d\u003c/code\u003e\u003c/a\u003e - annotate type for Snowflake REGEXP_INSTR function \u003cem\u003e(commit by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eannotate type for Snowflake REGEXP_INSTR function\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/1f29ba710f4213beb1a2f993244d7d824f3536ce\"\u003e\u003ccode\u003e1f29ba7\u003c/code\u003e\u003c/a\u003e - annotate type for Snowflake PARSE_IP function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5961\"\u003e#5961\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eannotate type for Snowflake PARSE_IP function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5961\"\u003e#5961\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/bf45d5d3cb0c0f380824019eb32ec29049268a61\"\u003e\u003ccode\u003ebf45d5d\u003c/code\u003e\u003c/a\u003e - annotate types for Snowflake RTRIMMED_LENGTH function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5968\"\u003e#5968\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eannotate types for Snowflake RTRIMMED_LENGTH function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5968\"\u003e#5968\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/13caa6991f003ad7abb590073451e591b6fd888c\"\u003e\u003ccode\u003e13caa69\u003c/code\u003e\u003c/a\u003e - Annotate type for snowflake POSITION function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5964\"\u003e#5964\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eAnnotate type for snowflake POSITION function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5964\"\u003e#5964\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e:sparkles: New Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/88e4e4c55f3a113127eb3c82c0be46c29bcf15ab\"\u003e\u003ccode\u003e88e4e4c\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003eoptimizer\u003c/strong\u003e: Annotate type for OCTET_LENGTH function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5960\"\u003e#5960\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/68473ac3ec8dc76512dc76819892a1b0324c7ddc\"\u003e\u003ccode\u003e68473ac\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003eoptimizer\u003c/strong\u003e: Annotate type for snowflake PARSE_URL function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5962\"\u003e#5962\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/b015a9d944d0a87069a7750ad74953c399d7da34\"\u003e\u003ccode\u003eb015a9d\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003eoptimizer\u003c/strong\u003e: annotate type for Snowflake REGEXP_INSTR function \u003cem\u003e(commit by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/1f29ba710f4213beb1a2f993244d7d824f3536ce\"\u003e\u003ccode\u003e1f29ba7\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003eoptimizer\u003c/strong\u003e: annotate type for Snowflake PARSE_IP function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5961\"\u003e#5961\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/bf45d5d3cb0c0f380824019eb32ec29049268a61\"\u003e\u003ccode\u003ebf45d5d\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003eoptimizer\u003c/strong\u003e: annotate types for Snowflake RTRIMMED_LENGTH function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5968\"\u003e#5968\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/13caa6991f003ad7abb590073451e591b6fd888c\"\u003e\u003ccode\u003e13caa69\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003eoptimizer\u003c/strong\u003e: Annotate type for snowflake POSITION function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5964\"\u003e#5964\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/1471306ed317830c294e3654075f55424d14bf5a\"\u003e\u003ccode\u003e1471306\u003c/code\u003e\u003c/a\u003e - support parse into grant principal and privilege \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5971\"\u003e#5971\u003c/a\u003e by \u003ca href=\"https://github.com/eakmanrq\"\u003e\u003ccode\u003e@​eakmanrq\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e:bug: Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/543297680755344185e0f306843bc4909f4f75ed\"\u003e\u003ccode\u003e5432976\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003ebigquery\u003c/strong\u003e: allow GRANT as an id var \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5965\"\u003e#5965\u003c/a\u003e by \u003ca href=\"https://github.com/treysp\"\u003e\u003ccode\u003e@​treysp\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e:wrench: Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/1514bc640ec129a96aedd9e89bfd5d61e832d6b1\"\u003e\u003ccode\u003e1514bc6\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003eoptimizer\u003c/strong\u003e: add type inference tests for Snowflake RPAD function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5967\"\u003e#5967\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/050b89deb9be842f2ddd07c78ea201ec4eae4779\"\u003e\u003ccode\u003e050b89d\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003eoptimizer\u003c/strong\u003e: Annotate type for snowflake regexp function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5970\"\u003e#5970\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[v27.18.0] - 2025-09-25\u003c/h2\u003e\n\u003ch3\u003e:boom: BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/7f13eaf7769a3381a56c9209af590835be2f95cd\"\u003e\u003ccode\u003e7f13eaf\u003c/code\u003e\u003c/a\u003e - Annotate type for snowflake DECOMPRESS_BINARY function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5945\"\u003e#5945\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eAnnotate type for snowflake DECOMPRESS_BINARY function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5945\"\u003e#5945\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/be12b29b5a7bd6d6e09dbd8c17086bd77c19abc0\"\u003e\u003ccode\u003ebe12b29\u003c/code\u003e\u003c/a\u003e - Annotate type for snowflake DECOMPRESS_STRING function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5947\"\u003e#5947\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachi...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1335","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1335","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1335/packages"}},{"old_version":"46.0.0","new_version":"50.0.0","update_type":"major","path":"/python","pr_created_at":"2025-09-29T21:28:56.000Z","version_change":"46.0.0 → 50.0.0","issue":{"uuid":"2872120022","node_id":"PR_kwDOL2ZwPc6rMRLW","number":459,"state":"open","title":"build(deps): bump datafusion from 46.0.0 to 50.0.0 in /python","user":"dependabot[bot]","labels":["python","dependencies"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-29T21:28:56.000Z","updated_at":"2025-09-29T21:28:57.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"datafusion","old_version":"46.0.0","new_version":"50.0.0","repository_url":"https://github.com/apache/datafusion-python"}],"path":"/python","ecosystem":"pip"},"body":"Bumps [datafusion](https://github.com/apache/datafusion-python) from 46.0.0 to 50.0.0.\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/c3a76553b755ea64b9a161e2e9d1759ba3068a96\"\u003e\u003ccode\u003ec3a7655\u003c/code\u003e\u003c/a\u003e Update version number, add changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/bf22c1d4c130df19ed84d99f768fb96be9463a78\"\u003e\u003ccode\u003ebf22c1d\u003c/code\u003e\u003c/a\u003e Prepare for DF50 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/b7d3519d395025183a06aad268ee30e61f8226df\"\u003e\u003ccode\u003eb7d3519\u003c/code\u003e\u003c/a\u003e docs: add apache iceberg as datafusion data source (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1240\"\u003e#1240\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/d54dc4aeeeab41b5a845d383a672630ceb880253\"\u003e\u003ccode\u003ed54dc4a\u003c/code\u003e\u003c/a\u003e Support string column identifiers for sort/aggregate/window and stricter Expr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/9e976362cd6e68a66ef53a1758b0da6932d41ffe\"\u003e\u003ccode\u003e9e97636\u003c/code\u003e\u003c/a\u003e chore: remove redundant error transformation (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/c609dfa31abacc8c891e70ab1c0ae474c12789ee\"\u003e\u003ccode\u003ec609dfa\u003c/code\u003e\u003c/a\u003e feat: allow passing a slice to and expression with the [] indexing (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1215\"\u003e#1215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/b325a385d3ff737cd30f53c5a2439adb6e90ee8a\"\u003e\u003ccode\u003eb325a38\u003c/code\u003e\u003c/a\u003e fix: update link to user example for custom table provider (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/332c69b61ebcad0a6aec631855795ef0615c5a13\"\u003e\u003ccode\u003e332c69b\u003c/code\u003e\u003c/a\u003e docs: fix CaseBuilder documentation example (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1225\"\u003e#1225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/f0bbad7543717c5f08ba2acb92d42c9d30fd2355\"\u003e\u003ccode\u003ef0bbad7\u003c/code\u003e\u003c/a\u003e Set fail on warning for documentation generation (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1218\"\u003e#1218\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/200a249ac310e0f91bfd9f85f2d5278badca0131\"\u003e\u003ccode\u003e200a249\u003c/code\u003e\u003c/a\u003e Fixing a few Typos (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1220\"\u003e#1220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/datafusion-python/compare/46.0.0...50.0.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=datafusion\u0026package-manager=pip\u0026previous-version=46.0.0\u0026new-version=50.0.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/apache/hudi-rs/pull/459","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fhudi-rs/issues/459","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/459/packages"}},{"old_version":"47.0.0","new_version":"50.0.0","update_type":"major","path":null,"pr_created_at":"2025-09-29T01:19:11.000Z","version_change":"47.0.0 → 50.0.0","issue":{"uuid":"2868707359","node_id":"PR_kwDOKa92Zs6q_QAf","number":220,"state":"open","title":"Build: Bump datafusion from 47.0.0 to 50.0.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-09-29T01:19:11.000Z","updated_at":"2025-09-29T01:19:12.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Build: Bump","packages":[{"name":"datafusion","old_version":"47.0.0","new_version":"50.0.0","repository_url":"https://github.com/apache/datafusion-python"}],"path":null,"ecosystem":"pip"},"body":"Bumps [datafusion](https://github.com/apache/datafusion-python) from 47.0.0 to 50.0.0.\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/c3a76553b755ea64b9a161e2e9d1759ba3068a96\"\u003e\u003ccode\u003ec3a7655\u003c/code\u003e\u003c/a\u003e Update version number, add changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/bf22c1d4c130df19ed84d99f768fb96be9463a78\"\u003e\u003ccode\u003ebf22c1d\u003c/code\u003e\u003c/a\u003e Prepare for DF50 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/b7d3519d395025183a06aad268ee30e61f8226df\"\u003e\u003ccode\u003eb7d3519\u003c/code\u003e\u003c/a\u003e docs: add apache iceberg as datafusion data source (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1240\"\u003e#1240\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/d54dc4aeeeab41b5a845d383a672630ceb880253\"\u003e\u003ccode\u003ed54dc4a\u003c/code\u003e\u003c/a\u003e Support string column identifiers for sort/aggregate/window and stricter Expr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/9e976362cd6e68a66ef53a1758b0da6932d41ffe\"\u003e\u003ccode\u003e9e97636\u003c/code\u003e\u003c/a\u003e chore: remove redundant error transformation (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/c609dfa31abacc8c891e70ab1c0ae474c12789ee\"\u003e\u003ccode\u003ec609dfa\u003c/code\u003e\u003c/a\u003e feat: allow passing a slice to and expression with the [] indexing (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1215\"\u003e#1215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/b325a385d3ff737cd30f53c5a2439adb6e90ee8a\"\u003e\u003ccode\u003eb325a38\u003c/code\u003e\u003c/a\u003e fix: update link to user example for custom table provider (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/332c69b61ebcad0a6aec631855795ef0615c5a13\"\u003e\u003ccode\u003e332c69b\u003c/code\u003e\u003c/a\u003e docs: fix CaseBuilder documentation example (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1225\"\u003e#1225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/f0bbad7543717c5f08ba2acb92d42c9d30fd2355\"\u003e\u003ccode\u003ef0bbad7\u003c/code\u003e\u003c/a\u003e Set fail on warning for documentation generation (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1218\"\u003e#1218\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/200a249ac310e0f91bfd9f85f2d5278badca0131\"\u003e\u003ccode\u003e200a249\u003c/code\u003e\u003c/a\u003e Fixing a few Typos (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1220\"\u003e#1220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/datafusion-python/compare/47.0.0...50.0.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=datafusion\u0026package-manager=pip\u0026previous-version=47.0.0\u0026new-version=50.0.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/Fokko/iceberg-python/pull/220","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fokko%2Ficeberg-python/issues/220","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/220/packages"}},{"old_version":"47.0.0","new_version":"50.0.0","update_type":"major","path":null,"pr_created_at":"2025-09-24T02:36:15.000Z","version_change":"47.0.0 → 50.0.0","issue":{"uuid":"3447340679","node_id":"PR_kwDOHTdvBs6qLdzU","number":1329,"state":"open","title":"deps(ibis): bump the all group across 1 directory with 22 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-24T02:36:15.000Z","updated_at":"2025-09-24T02:36:33.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":22,"packages":[{"name":"fastapi","old_version":"0.116.1","new_version":"0.117.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"pydantic","old_version":"2.10.6","new_version":"2.11.9","repository_url":"https://github.com/pydantic/pydantic"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.40.3","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"orjson","old_version":"3.10.16","new_version":"3.11.3","repository_url":"https://github.com/ijl/orjson"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.2","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.18.0","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"sqlglot","old_version":"27.14.0","new_version":"27.17.0","repository_url":"https://github.com/tobymao/sqlglot"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"anyio","old_version":"4.10.0","new_version":"4.11.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"duckdb","old_version":"1.3.2","new_version":"1.4.0","repository_url":"https://github.com/duckdb/duckdb-python"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.37.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"uvicorn-worker","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/Kludex/uvicorn-worker"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.8","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"50.0.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"pytest","old_version":"8.3.5","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.13.0","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.43","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.13.1","repository_url":"https://github.com/astral-sh/ruff"},{"name":"trino","old_version":"0.335.0","new_version":"0.336.0","repository_url":"https://github.com/trinodb/trino-python-client"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.9.1","repository_url":"https://github.com/ClickHouse/clickhouse-connect"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 22 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.116.1` | `0.117.1` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.11.9` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.40.3` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.1.1` |\n| [orjson](https://github.com/ijl/orjson) | `3.10.16` | `3.11.3` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.2` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.18.0` |\n| [sqlglot](https://github.com/tobymao/sqlglot) | `27.14.0` | `27.17.0` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.10.0` | `4.11.0` |\n| [duckdb](https://github.com/duckdb/duckdb-python) | `1.3.2` | `1.4.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.37.0` |\n| [uvicorn-worker](https://github.com/Kludex/uvicorn-worker) | `0.3.0` | `0.4.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.8` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `50.0.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `8.4.2` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.13.0` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.43` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.3.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.13.1` |\n| [trino](https://github.com/trinodb/trino-python-client) | `0.335.0` | `0.336.0` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.9.1` |\n\n\nUpdates `fastapi` from 0.116.1 to 0.117.1\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's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.117.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix validation error when \u003ccode\u003eFile\u003c/code\u003e is declared after \u003ccode\u003eForm\u003c/code\u003e parameter. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/11194\"\u003e#11194\u003c/a\u003e by \u003ca href=\"https://github.com/thomasleveil\"\u003e\u003ccode\u003e@​thomasleveil\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.117.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨  Allow \u003ccode\u003eNone\u003c/code\u003e as return type for bodiless responses. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/9425\"\u003e#9425\u003c/a\u003e by \u003ca href=\"https://github.com/hofrob\"\u003e\u003ccode\u003e@​hofrob\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✨ Allow array values for OpenAPI schema \u003ccode\u003etype\u003c/code\u003e field. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13639\"\u003e#13639\u003c/a\u003e by \u003ca href=\"https://github.com/sammasak\"\u003e\u003ccode\u003e@​sammasak\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✨ Add OpenAPI \u003ccode\u003eexternal_docs\u003c/code\u003e parameter to \u003ccode\u003eFastAPI\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13713\"\u003e#13713\u003c/a\u003e by \u003ca href=\"https://github.com/cmtoro\"\u003e\u003ccode\u003e@​cmtoro\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⚡️ Fix \u003ccode\u003edefault_factory\u003c/code\u003e for response model field with Pydantic V1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/9704\"\u003e#9704\u003c/a\u003e by \u003ca href=\"https://github.com/vvanglro\"\u003e\u003ccode\u003e@​vvanglro\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Fix inconsistent processing of model docstring formfeed char with Pydantic V1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/6039\"\u003e#6039\u003c/a\u003e by \u003ca href=\"https://github.com/MaxwellPayne\"\u003e\u003ccode\u003e@​MaxwellPayne\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003ejsonable_encoder\u003c/code\u003e alters \u003ccode\u003ejson_encoders\u003c/code\u003e of Pydantic v1 objects. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/4972\"\u003e#4972\u003c/a\u003e by \u003ca href=\"https://github.com/aboubacs\"\u003e\u003ccode\u003e@​aboubacs\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Reenable \u003ccode\u003eallow_arbitrary_types\u003c/code\u003e when only 1 argument is used on the API endpoint. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13694\"\u003e#13694\u003c/a\u003e by \u003ca href=\"https://github.com/rmawatson\"\u003e\u003ccode\u003e@​rmawatson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003einspect.getcoroutinefunction()\u003c/code\u003e can break testing with \u003ccode\u003eunittest.mock.patch()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14022\"\u003e#14022\u003c/a\u003e by \u003ca href=\"https://github.com/secrett2633\"\u003e\u003ccode\u003e@​secrett2633\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRefactors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e♻️ Create \u003ccode\u003edependency-cache\u003c/code\u003e dict in \u003ccode\u003esolve_dependencies\u003c/code\u003e only if \u003ccode\u003eNone\u003c/code\u003e (don't re-create if empty). PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13689\"\u003e#13689\u003c/a\u003e by \u003ca href=\"https://github.com/bokshitsky\"\u003e\u003ccode\u003e@​bokshitsky\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Enable test case for duplicated headers in \u003ccode\u003etest_tutorial/test_header_params/test_tutorial003.py\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13864\"\u003e#13864\u003c/a\u003e by \u003ca href=\"https://github.com/Amogha-ark\"\u003e\u003ccode\u003e@​Amogha-ark\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📌 Pin \u003ccode\u003ehttpx\u003c/code\u003e to \u003ccode\u003e\u0026gt;=0.23.0,\u0026lt;1.0.0\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14086\"\u003e#14086\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\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📝 Add note about Cookies and JavaScript on \u003ccode\u003etutorial/cookie-params.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13510\"\u003e#13510\u003c/a\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Remove outdated formatting from \u003ccode\u003epath-params-numeric-validations.md\u003c/code\u003e for languages \u003ccode\u003een\u003c/code\u003e, \u003ccode\u003ees\u003c/code\u003e and \u003ccode\u003euk\u003c/code\u003e.. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14059\"\u003e#14059\u003c/a\u003e by \u003ca href=\"https://github.com/svlandeg\"\u003e\u003ccode\u003e@​svlandeg\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Fix and Improve English Documentation. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14048\"\u003e#14048\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\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📝 Update prompts and German translation. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14015\"\u003e#14015\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\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✅ Simplify tests for response_model. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14062\"\u003e#14062\u003c/a\u003e by \u003ca href=\"https://github.com/dynamicy\"\u003e\u003ccode\u003e@​dynamicy\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🚨 Install pydantic.mypy plugin. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14081\"\u003e#14081\u003c/a\u003e by \u003ca href=\"https://github.com/svlandeg\"\u003e\u003ccode\u003e@​svlandeg\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Add LLM test file. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14049\"\u003e#14049\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔨 Update translations script. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13968\"\u003e#13968\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🛠️ Update \u003ccode\u003edocs.py generate-readme\u003c/code\u003e command to remove permalinks from headers. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14055\"\u003e#14055\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆️ Update mypy to 1.14.1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/12970\"\u003e#12970\u003c/a\u003e by \u003ca href=\"https://github.com/tamird\"\u003e\u003ccode\u003e@​tamird\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.116.2\u003c/h2\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Upgrade Starlette supported version range to \u0026gt;=0.40.0,\u0026lt;0.49.0. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14077\"\u003e#14077\u003c/a\u003e by \u003ca href=\"https://github.com/musicinmybrain\"\u003e\u003ccode\u003e@​musicinmybrain\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/784f06cb9b7cc63f6a0cb2bc9cf238473eef93e2\"\u003e\u003ccode\u003e784f06c\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.117.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/b5c05893b4c43c93ff94761270ea750c0bd9e30e\"\u003e\u003ccode\u003eb5c0589\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/44fc67632bcdae4d078cb11b1a319ac122cbb06f\"\u003e\u003ccode\u003e44fc676\u003c/code\u003e\u003c/a\u003e 🐛 Fix validation error when \u003ccode\u003eFile\u003c/code\u003e is declared after \u003ccode\u003eForm\u003c/code\u003e parameter (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/11194\"\u003e#11194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/a84001000e59ff362e74f93b8d9a58a4309dac2d\"\u003e\u003ccode\u003ea840010\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/382d083e26a28e95c731e85345c85c6dc99b08b4\"\u003e\u003ccode\u003e382d083\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.117.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/a7f2dbe976bf72703376f0cd04487bfc4a849f83\"\u003e\u003ccode\u003ea7f2dbe\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/f1e6f978ce10a6f9b4c668350a79462e9ac330a8\"\u003e\u003ccode\u003ef1e6f97\u003c/code\u003e\u003c/a\u003e ⚡️ Fix \u003ccode\u003edefault_factory\u003c/code\u003e for response model field with Pydantic V1 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/9704\"\u003e#9704\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/b01d5c97a09b8f4f95b9e9b0d6bc083a23cdea20\"\u003e\u003ccode\u003eb01d5c9\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/b51ec36f2e442495de5e4c22ae51a8f5c44917eb\"\u003e\u003ccode\u003eb51ec36\u003c/code\u003e\u003c/a\u003e ✨  Allow \u003ccode\u003eNone\u003c/code\u003e as return type for bodiless responses (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/9425\"\u003e#9425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/0bdc3ca3732e3742e094bea2b320e9774659ac38\"\u003e\u003ccode\u003e0bdc3ca\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.116.1...0.117.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.10.6 to 2.11.9\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.11.9 2025-09-13\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBackport v1.10.23 changes by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\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.8...v2.11.9\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.8...v2.11.9\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.8 2025-09-13\u003c/h2\u003e\n\u003ch2\u003ev2.11.8 (2025-09-13)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix mypy plugin for mypy 1.18 by \u003ca href=\"https://github.com/cdce8p\"\u003e\u003ccode\u003e@​cdce8p\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12209\"\u003e#12209\u003c/a\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.7...v2.11.8\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.7...v2.11.8\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.7 2025-06-14\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCopy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build 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/11980\"\u003epydantic/pydantic#11980\u003c/a\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.6...v2.11.7\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.6...v2.11.7\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.6 2025-06-13\u003c/h2\u003e\n\u003ch2\u003ev2.11.6 (2025-06-13)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRebuild dataclass fields before 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/11949\"\u003e#11949\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlways store the original field assignment on \u003ccode\u003eFieldInfo\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/11946\"\u003e#11946\u003c/a\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.5...v2.11.6\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.5...v2.11.6\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.5 2025-05-22\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCheck if \u003ccode\u003eFieldInfo\u003c/code\u003e is complete after applying type variable map 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/11855\"\u003e#11855\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not delete mock validator/serializer in \u003ccode\u003emodel_rebuild()\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/11890\"\u003e#11890\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not duplicate metadata on model rebuild 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/11902\"\u003e#11902\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/pydantic/pydantic/blob/v2.11.9/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.11.9 (2025-09-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.9\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBackport v1.10.23 changes by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.8 (2025-09-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.8\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix mypy plugin for mypy 1.18 by \u003ca href=\"https://github.com/cdce8p\"\u003e\u003ccode\u003e@​cdce8p\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12209\"\u003e#12209\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.7 (2025-06-14)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.7\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCopy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build 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/11898\"\u003e#11898\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.6 (2025-06-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.6\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRebuild dataclass fields before 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/11949\"\u003e#11949\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlways store the original field assignment on \u003ccode\u003eFieldInfo\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/11946\"\u003e#11946\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.5 (2025-05-22)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCheck if \u003ccode\u003eFieldInfo\u003c/code\u003e is complete after applying type variable map 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/11855\"\u003e#11855\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/pydantic/pydantic/commit/92310953c146a2ac668a0141be820c083e325f5d\"\u003e\u003ccode\u003e9231095\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/f003a89eeaff35ee18f220a2c790d20536e3d0ab\"\u003e\u003ccode\u003ef003a89\u003c/code\u003e\u003c/a\u003e Backport v1.10.23 changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/96b81ddaf93a1f2e19ff1609080c33de10b8d931\"\u003e\u003ccode\u003e96b81dd\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/966f377692194b3f1d6d5155ac78052bec0a751d\"\u003e\u003ccode\u003e966f377\u003c/code\u003e\u003c/a\u003e Fix mypy v2 plugin for upcoming \u003ccode\u003e1.18\u003c/code\u003e mypy release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/5f033e46c54fea1b59b6894d6527daf49475e690\"\u003e\u003ccode\u003e5f033e4\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c3368b83c411f421a7322959bc29f3bea4bd252a\"\u003e\u003ccode\u003ec3368b8\u003c/code\u003e\u003c/a\u003e Copy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/11980\"\u003e#11980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/3987b23db4b31ff35e9fa15c21c0c1d1c9808838\"\u003e\u003ccode\u003e3987b23\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/dc7a9d20bee55a3a6e7397ee46abfcd9057b627b\"\u003e\u003ccode\u003edc7a9d2\u003c/code\u003e\u003c/a\u003e Always store the original field assignment on \u003ccode\u003eFieldInfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c284c279a5b8c95d32ab5ec31d2511b3b27bfa87\"\u003e\u003ccode\u003ec284c27\u003c/code\u003e\u003c/a\u003e Rebuild dataclass fields before schema generation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/5e6d1dc71fe9bd832635cb2e9b4af92286fd00b8\"\u003e\u003ccode\u003e5e6d1dc\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.5\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.11.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.40.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.40.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable logging response body for async logs (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1756\"\u003e#1756\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2f0ddfeb9f6c726c68beebd7eefd32c86f7f0963\"\u003e2f0ddfe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.39.0...v2.40.0\"\u003e2.40.0\u003c/a\u003e (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd request response logging to auth (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1678\"\u003e#1678\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/77ad53eb00c74b3badc486c8207a16dbc49f37e5\"\u003e77ad53e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrect webauthn JSON parsing to be compliant with standard. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1658\"\u003e#1658\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0c5ef364fb13ca9d7d17100166de87732d752de8\"\u003e0c5ef36\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.39.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.39.0\"\u003e2.39.0\u003c/a\u003e (2025-04-14)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds GA support for X.509 workload identity federation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1695\"\u003e#1695\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/74959605400f9a1976bbdc52c029943b634eb553\"\u003e7495960\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable logging response body for async logs (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1756\"\u003e#1756\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2f0ddfeb9f6c726c68beebd7eefd32c86f7f0963\"\u003e2f0ddfe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.39.0...v2.40.0\"\u003e2.40.0\u003c/a\u003e (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd request response logging to auth (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1678\"\u003e#1678\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/77ad53eb00c74b3badc486c8207a16dbc49f37e5\"\u003e77ad53e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrect webauthn JSON parsing to be compliant with standard. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1658\"\u003e#1658\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0c5ef364fb13ca9d7d17100166de87732d752de8\"\u003e0c5ef36\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.39.0\"\u003e2.39.0\u003c/a\u003e (2025-04-14)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds GA support for X.509 workload identity federation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1695\"\u003e#1695\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/74959605400f9a1976bbdc52c029943b634eb553\"\u003e7495960\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd impersonated SA via local ADC support for fetch_id_token (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1740\"\u003e#1740\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/f24976452d741de6a49d9b7a85cdab47812f5312\"\u003ef249764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd missing packaging dependency for feature requiring urllib3 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1732\"\u003e#1732\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/221f4a82fa25c1ad453b85bc8b7f2fc304724879\"\u003e221f4a8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd request timeout for MDS requests (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1699\"\u003e#1699\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/9f7d3fa92c0e656a1c970182833abe2d0d3ad3ee\"\u003e9f7d3fa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExplicitly declare support for Python 3.13 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1741\"\u003e#1741\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/6fd04d57df90866f24b554c489f8f2653467d70e\"\u003e6fd04d5\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/googleapis/google-auth-library-python/commit/ca94ead4035beea4741dc5384449032f8e6f75d8\"\u003e\u003ccode\u003eca94ead\u003c/code\u003e\u003c/a\u003e chore(main): release 2.40.3 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1768\"\u003e#1768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e\u003ccode\u003e88891cc\u003c/code\u003e\u003c/a\u003e fix: auth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0be91e2f795c989a592cb9c7828a1c53d8107165\"\u003e\u003ccode\u003e0be91e2\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;fix: remove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25660bc57569b3f3e9a1f664516d10f4bc8744b8\"\u003e\u003ccode\u003e25660bc\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1774\"\u003e#1774\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e\u003ccode\u003e7c61c7d\u003c/code\u003e\u003c/a\u003e fix: remove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e\u003ccode\u003e554f967\u003c/code\u003e\u003c/a\u003e fix: retry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/6845065aca69d5130eec40fbe052f56c36860bf7\"\u003e\u003ccode\u003e6845065\u003c/code\u003e\u003c/a\u003e chore(main): release 2.40.2 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1766\"\u003e#1766\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e\u003ccode\u003e44e38b6\u003c/code\u003e\u003c/a\u003e fix: Update test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e\u003ccode\u003e97ed1c8\u003c/code\u003e\u003c/a\u003e chore: remove sync response logs in AuthorizedSession (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1761\"\u003e#1761\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/13a897ea05feff6a2267f700a53b50e9741919a0\"\u003e\u003ccode\u003e13a897e\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1764\"\u003e#1764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.40.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: ensure find_dotenv work reliably on python 3.13 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003etheskumar/python-dotenv#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cli): issue with execvpe on Windows by \u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\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/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a security policy by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/512\"\u003etheskumar/python-dotenv#512\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep GitHub Actions up to date with GitHub's Dependabot by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/506\"\u003etheskumar/python-dotenv#506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix multiline string in test.yml \u0026amp; use fail-fast strategy by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/514\"\u003etheskumar/python-dotenv#514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnhance dotenv run: Switch to execvpe for better resource management and signal handling by \u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add py3.13 to test.yml by \u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 trove classifier by \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for python 3.13 and drop 3.8 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/551\"\u003etheskumar/python-dotenv#551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update README.md by \u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSome more s/Python-dotenv/python-dotenv/ by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/552\"\u003etheskumar/python-dotenv#552\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd _is_debugger so load_dotenv will work in pdb by \u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/553\"\u003etheskumar/python-dotenv#553\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/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/553\"\u003etheskumar/python-dotenv#553\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.0\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCLI: revert the use of execvpe on Windows by [\u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003e#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.0] - 2025-03-25\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFeature\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for python 3.13\u003c/li\u003e\n\u003cli\u003eEnhance \u003ccode\u003edotenv run\u003c/code\u003e, switch to \u003ccode\u003eexecvpe\u003c/code\u003e for better resource management and signal handling (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/523\"\u003e#523\u003c/a\u003e) by [\u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efind_dotenv\u003c/code\u003e and \u003ccode\u003eload_dotenv\u003c/code\u003e now correctly looks up at the current directory when running in debugger or pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e by [\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e])\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eMisc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8\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/theskumar/python-dotenv/commit/16e660d384b942b11879b44500afbbe021650448\"\u003e\u003ccode\u003e16e660d\u003c/code\u003e\u003c/a\u003e Bump version: 1.1.0 → 1.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/667e82f18d6e5306894c8746c46b1da2d031bd23\"\u003e\u003ccode\u003e667e82f\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/9d85edb3b8652de4601f9ad8a7a49ad9909f898a\"\u003e\u003ccode\u003e9d85edb\u003c/code\u003e\u003c/a\u003e fix(cli): issue with execvpe on Windows (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/566\"\u003e#566\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8411987b9301f716245074872afa30646e9b9eb7\"\u003e\u003ccode\u003e8411987\u003c/code\u003e\u003c/a\u003e fix: ensure find_dotenv work reliably on python 3.13 (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/01f899733de664cda0550207067eb36a1795062f\"\u003e\u003ccode\u003e01f8997\u003c/code\u003e\u003c/a\u003e docs update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/6a02ef5a1034d66338811757df07a113a1169af6\"\u003e\u003ccode\u003e6a02ef5\u003c/code\u003e\u003c/a\u003e update mkdocs -\u0026gt; mkdocstrings config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/36c6270db41e1e88be4ec21d0fb876ba0c79d363\"\u003e\u003ccode\u003e36c6270\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/2198b698c021851201261fac27884ee8db6553d5\"\u003e\u003ccode\u003e2198b69\u003c/code\u003e\u003c/a\u003e Bump version: 1.0.1 → 1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/c89fb6d41c0a25f670b34ba05f392260eaa6ccd1\"\u003e\u003ccode\u003ec89fb6d\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8dd413e84b1fb1b3368c02106aab07a533fae015\"\u003e\u003ccode\u003e8dd413e\u003c/code\u003e\u003c/a\u003e Add _is_debugger so load_dotenv will work in pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `orjson` from 3.10.16 to 3.11.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ijl/orjson/releases\"\u003eorjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared buffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI Windows aarch64/arm64 wheels.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 alpha 7.\u003c/li\u003e\n\u003cli\u003eFix incompatibility running on Python 3.13 using WASM.\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/ijl/orjson/blob/master/CHANGELOG.md\"\u003eorjson's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.3 - 2025-08-26\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1 - 2025-07-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures. This was introduced in 3.11.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 - 2025-07-15\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared\nbuffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18 - 2025-04-29\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17 - 2025-04-29\u003c/h2\u003e\n\u003ch3\u003eChanged\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/ijl/orjson/commit/aa8c946cfbe2aba29016bc9c9ddc8713cb00173b\"\u003e\u003ccode\u003eaa8c946\u003c/code\u003e\u003c/a\u003e 3.11.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2442efc125068e43bec97c26e3a6b5da8932936c\"\u003e\u003ccode\u003e2442efc\u003c/code\u003e\u003c/a\u003e Fix PyPI project metadata when using maturin 1.9.2 or later\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/ba760146e7bc407d729436d8dbcb9e1495c83773\"\u003e\u003ccode\u003eba76014\u003c/code\u003e\u003c/a\u003e 3.11.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/49315905a4f071f2279b6df87125ca94780b5173\"\u003e\u003ccode\u003e4931590\u003c/code\u003e\u003c/a\u003e CPython compatibility misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/3de9324511a704ffbe13a94221c8f05062bf71e8\"\u003e\u003ccode\u003e3de9324\u003c/code\u003e\u003c/a\u003e MSRV 1.85, edition 2024, stdarch_x86_avx512 fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/d7359c9899c63570b21a200bc0f8d559eea7cd19\"\u003e\u003ccode\u003ed7359c9\u003c/code\u003e\u003c/a\u003e Remove macOS 13 CI runner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/1d3aa7af6271981907b1e0d1eeee2e07a7c49302\"\u003e\u003ccode\u003e1d3aa7a\u003c/code\u003e\u003c/a\u003e 3.11.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/11d29cb9bcd73777c554d65ba670cde2d6c8c802\"\u003e\u003ccode\u003e11d29cb\u003c/code\u003e\u003c/a\u003e 3.14 packaging misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/168391825ba415df853735a4359095a0327dcd1a\"\u003e\u003ccode\u003e1683918\u003c/code\u003e\u003c/a\u003e bytes::BufMut\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/9c33ff9df61b3b9d71527acf4fb60a735d841025\"\u003e\u003ccode\u003e9c33ff9\u003c/code\u003e\u003c/a\u003e Fix big-endian PyStr\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ijl/orjson/compare/3.10.16...3.11.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` from 2.2.3 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\u003ch2\u003ePandas 2.3.0\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.0.\nThis release includes some new features, bug fixes, and performance improvements. 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.0/whatsnew/v2.3.0.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.0 supports Python 3.10 and higher.\u003c/p\u003e\n\u003cp\u003eThe release will be available on the defaults and conda-forge channels:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install -c conda-forge pandas\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr via PyPI:\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/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.2.3...v2.3.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geoalchemy2` from 0.17.1 to 0.18.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/releases\"\u003egeoalchemy2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/538\"\u003egeoalchemy/geoalchemy2#538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/540\"\u003egeoalchemy/geoalchemy2#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCompile literal binds by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/543\"\u003egeoalchemy/geoalchemy2#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/544\"\u003egeoalchemy/geoalchemy2#544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore (mariadb): Stop converting WKB to WKT by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/545\"\u003egeoalchemy/geoalchemy2#545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker containers by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/546\"\u003egeoalchemy/geoalchemy2#546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/547\"\u003egeoalchemy/geoalchemy2#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/553\"\u003egeoalchemy/geoalchemy2#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/554\"\u003egeoalchemy/geoalchemy2#554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Improve readbility of benchmark results by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/556\"\u003egeoalchemy/geoalchemy2#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/555\"\u003egeoalchemy/geoalchemy2#555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/557\"\u003egeoalchemy/geoalchemy2#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Remove warning message from MySQL/MariaDB reflection by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/560\"\u003egeoalchemy/geoalchemy2#560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/561\"\u003egeoalchemy/geoalchemy2#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: correct doc strings by \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/564\"\u003egeoalchemy/geoalchemy2#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.0 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/565\"\u003egeoalchemy/geoalchemy2#565\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/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.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/geoalchemy/geoalchemy2/blob/master/CHANGES.txt\"\u003egeoalchemy2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Fix doc strings for cache enabled - \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e(papacodebear/master) Fix: Remove warning from MySQL/MariaDB reflection \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Improve readability of benchmark results \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/547\"\u003e#547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker container \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/546\"\u003e#546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf (mariadb): Stop converting WKB to WKT \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/545\"\u003e#545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/544\"\u003e#544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Compile literal binds properly \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/540\"\u003e#540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/538\"\u003e#538\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/geoalchemy/geoalchemy2/commit/60767082df9f4587fadd56ab94847ebc39df8295\"\u003e\u003ccode\u003e6076708\u003c/code\u003e\u003c/a\u003e Release: 0.18.0 (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/565\"\u003e#565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/e13112177bdf79cae0d72a6e89d815dc272e3dc5\"\u003e\u003ccode\u003ee131121\u003c/code\u003e\u003c/a\u003e Feat: Add support of spatial indexes for Raster type for PostgreSQL (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/0b432086a0c3b8ab160c5cc1864aa65e02f35362\"\u003e\u003ccode\u003e0b43208\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/8791b2eec013f21f599ca060d9fee4aba72ec2a1\"\u003e\u003ccode\u003e8791b2e\u003c/code\u003e\u003c/a\u003e Docs: Fix doc strings for cache enabled (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/d3c1d04c8b462c61132403e44a7a4f04a487c142\"\u003e\u003ccode\u003ed3c1d04\u003c/code\u003e\u003c/a\u003e Chore: Move reflection type registering (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/24dc5d05d97fb9a2a57103c1823a58f06940a5e8\"\u003e\u003ccode\u003e24dc5d0\u003c/code\u003e\u003c/a\u003e Fix: Remove warning from MySQL/MariaDB reflection (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/71f7914d4ddf7d9c46c772e36a8463e20901966a\"\u003e\u003ccode\u003e71f7914\u003c/code\u003e\u003c/a\u003e Feat: Handle computed columns (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/c139cdbca62019d92d18f12429706732777c38e2\"\u003e\u003ccode\u003ec139cdb\u003c/code\u003e\u003c/a\u003e Perf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/2e94baa4f3ac23e0160ed841d4efe7ceb3fa2378\"\u003e\u003ccode\u003e2e94baa\u003c/code\u003e\u003c/a\u003e Test: Improve readbility of benchmark results (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/84292bc352ab7ff1102a0529772d32afb0309616\"\u003e\u003ccode\u003e84292bc\u003c/code\u003e\u003c/a\u003e Chore: Create FUNDING.yml (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sqlglot` from 27.14.0 to 27.17.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tobymao/sqlglot/blob/main/CHANGELOG.md\"\u003esqlglot's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v27.17.0] - 2025-09-23\u003c/h2\u003e\n\u003ch3\u003e:boom: BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/f4ad25882951de4e4442dfd5189a56d5a1c5e630\"\u003e\u003ccode\u003ef4ad258\u003c/code\u003e\u003c/a\u003e - Annotate types for Snowflake BASE64_DECODE_BINARY function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5917\"\u003e#5917\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eAnnotate types for Snowflake BASE64_DECODE_BINARY function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5917\"\u003e#5917\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/6d0e3f8dcae7ed1a7659ece69b1f94cec5e7300e\"\u003e\u003ccode\u003e6d0e3f8\u003c/code\u003e\u003c/a\u003e - Add parser support to ilike like function versions. \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5915\"\u003e#5915\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eAdd parser support to ilike like function versions. (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5915\"\u003e#5915\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/22c7ed7734b41ca544bb67bcc1ca4151f6d5f05f\"\u003e\u003ccode\u003e22c7ed7\u003c/code\u003e\u003c/a\u003e - parse tuple \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5920\"\u003e#5920\u003c/a\u003e by \u003ca href=\"https://github.com/geooo109\"\u003e\u003ccode\u003e@​geooo109\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eparse tuple (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/fc5624eca43d2855ac350c92d85b184a6893d5ca\"\u003e\u003ccode\u003efc5624e\u003c/code\u003e\u003c/a\u003e - annotate types for Snowflake ASCII function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5926\"\u003e#5926\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eannotate types for Snowflake ASCII function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5926\"\u003e#5926\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/4e8169045edcaa28ae43abeb07370df63846fbfd\"\u003e\u003ccode\u003e4e81690\u003c/code\u003e\u003c/a\u003e - annotate type for Snowflake COLLATE function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5931\"\u003e#5931\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eannotate type for Snowflake COLLATE function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5931\"\u003e#5931\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/f07d35d29104c6203efaab738118d1903614b83c\"\u003e\u003ccode\u003ef07d35d\u003c/code\u003e\u003c/a\u003e - annotate type for Snowflake CHR function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5929\"\u003e#5929\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eannotate type for Snowflake CHR function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/f8c0ee4d3c1a4d4a92b897d1cc85f9904c8e566b\"\u003e\u003ccode\u003ef8c0ee4\u003c/code\u003e\u003c/a\u003e - Add function and annotate snowflake hex decode string and binary functions \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5928\"\u003e#5928\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eAdd function and annotate snowflake hex decode string and binary functions (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5928\"\u003e#5928\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/66f9501d76d087798bad93e578273ab2a45e2575\"\u003e\u003ccode\u003e66f9501\u003c/code\u003e\u003c/a\u003e - annotate types for Snowflake BIT_LENGTH function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5927\"\u003e#5927\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eannotate types for Snowflake BIT_LENGTH function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5927\"\u003e#5927\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/78784370712df65a2e1e79a1c2b441131ed7222a\"\u003e\u003ccode\u003e7878437\u003c/code\u003e\u003c/a\u003e - annotate snowflake's \u003ccode\u003eBASE64_DECODE_STRING\u003c/code\u003e, \u003ccode\u003eBASE64_ENCODE\u003c/code\u003e \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5922\"\u003e#5922\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eannotate snowflake's \u003ccode\u003eBASE64_DECODE_STRING\u003c/code\u003e, \u003ccode\u003eBASE64_ENCODE\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5922\"\u003e#5922\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/9bcad040bd51dd03821c68eea1a73534fc7a81b7\"\u003e\u003ccode\u003e9bcad04\u003c/code\u003e\u003c/a\u003e - Annotate type for HEX ENCODE function. \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5936\"\u003e#5936\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eAnnotate type for HEX ENCODE function. (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5936\"\u003e#5936\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/590928f4637306e8cf3f1302d5dd5d5dbc76e7e0\"\u003e\u003ccode\u003e590928f\u003c/code\u003e\u003c/a\u003e - annotate type for Snowflake INITCAP function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5941\"\u003e#5941\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eannotate type for Snowflake INITCAP function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5941\"\u003e#5941\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/ac04de1944c7a976406581b489b3cf9b11dafb77\"\u003e\u003ccode\u003eac04de1\u003c/code\u003e\u003c/a\u003e - annotate type for Snowflake EDITDISTANCE function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5940\"\u003e#5940\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eannotate type for Snowflake EDITDISTANCE function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5940\"\u003e#5940\u003c/a\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/tobymao/sqlglot/commit/0dc0015a30072db80f47af7c34a160a9d32689ff\"\u003e\u003ccode\u003e0dc0015\u003c/code\u003e\u003c/a\u003e Support postgres omitted interval span unit (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5930\"\u003e#5930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/9e28af8a52ced951ecf7f4e85a6305e20a13de1f\"\u003e\u003ccode\u003e9e28af8\u003c/code\u003e\u003c/a\u003e feat(optimizer)!: Annotate type for snowflake COMPRESS function (\u003ca href=\"https://redirect.github.com/tobymao/sql...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1329","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1329","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1329/packages"}},{"old_version":"47.0.0","new_version":"49.0.0","update_type":"major","path":null,"pr_created_at":"2025-09-22T18:50:13.000Z","version_change":"47.0.0 → 49.0.0","issue":{"uuid":"2850679014","node_id":"PR_kwDOHTdvBs6p6ejm","number":1327,"state":"closed","title":"deps(ibis): bump the all group across 1 directory with 21 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":5,"pull_request":true,"closed_at":"2025-09-24T02:35:06.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-22T18:50:13.000Z","updated_at":"2025-09-24T02:35:06.000Z","time_to_close":114293,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":21,"packages":[{"name":"fastapi","old_version":"0.116.1","new_version":"0.117.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"pydantic","old_version":"2.10.6","new_version":"2.11.9","repository_url":"https://github.com/pydantic/pydantic"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.40.3","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"orjson","old_version":"3.10.16","new_version":"3.11.3","repository_url":"https://github.com/ijl/orjson"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.2","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.18.0","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"sqlglot","old_version":"27.14.0","new_version":"27.16.3","repository_url":"https://github.com/tobymao/sqlglot"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"duckdb","old_version":"1.3.2","new_version":"1.4.0","repository_url":"https://github.com/duckdb/duckdb-python"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.36.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"uvicorn-worker","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/Kludex/uvicorn-worker"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.8","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"49.0.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"pytest","old_version":"8.3.5","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.13.0","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.43","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.13.1","repository_url":"https://github.com/astral-sh/ruff"},{"name":"trino","old_version":"0.335.0","new_version":"0.336.0","repository_url":"https://github.com/trinodb/trino-python-client"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.9.1","repository_url":"https://github.com/ClickHouse/clickhouse-connect"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 21 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.116.1` | `0.117.1` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.11.9` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.40.3` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.1.1` |\n| [orjson](https://github.com/ijl/orjson) | `3.10.16` | `3.11.3` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.2` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.18.0` |\n| [sqlglot](https://github.com/tobymao/sqlglot) | `27.14.0` | `27.16.3` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [duckdb](https://github.com/duckdb/duckdb-python) | `1.3.2` | `1.4.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.36.0` |\n| [uvicorn-worker](https://github.com/Kludex/uvicorn-worker) | `0.3.0` | `0.4.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.8` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `49.0.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `8.4.2` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.13.0` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.43` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.3.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.13.1` |\n| [trino](https://github.com/trinodb/trino-python-client) | `0.335.0` | `0.336.0` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.9.1` |\n\n\nUpdates `fastapi` from 0.116.1 to 0.117.1\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's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.117.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix validation error when \u003ccode\u003eFile\u003c/code\u003e is declared after \u003ccode\u003eForm\u003c/code\u003e parameter. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/11194\"\u003e#11194\u003c/a\u003e by \u003ca href=\"https://github.com/thomasleveil\"\u003e\u003ccode\u003e@​thomasleveil\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.117.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨  Allow \u003ccode\u003eNone\u003c/code\u003e as return type for bodiless responses. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/9425\"\u003e#9425\u003c/a\u003e by \u003ca href=\"https://github.com/hofrob\"\u003e\u003ccode\u003e@​hofrob\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✨ Allow array values for OpenAPI schema \u003ccode\u003etype\u003c/code\u003e field. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13639\"\u003e#13639\u003c/a\u003e by \u003ca href=\"https://github.com/sammasak\"\u003e\u003ccode\u003e@​sammasak\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✨ Add OpenAPI \u003ccode\u003eexternal_docs\u003c/code\u003e parameter to \u003ccode\u003eFastAPI\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13713\"\u003e#13713\u003c/a\u003e by \u003ca href=\"https://github.com/cmtoro\"\u003e\u003ccode\u003e@​cmtoro\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⚡️ Fix \u003ccode\u003edefault_factory\u003c/code\u003e for response model field with Pydantic V1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/9704\"\u003e#9704\u003c/a\u003e by \u003ca href=\"https://github.com/vvanglro\"\u003e\u003ccode\u003e@​vvanglro\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Fix inconsistent processing of model docstring formfeed char with Pydantic V1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/6039\"\u003e#6039\u003c/a\u003e by \u003ca href=\"https://github.com/MaxwellPayne\"\u003e\u003ccode\u003e@​MaxwellPayne\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003ejsonable_encoder\u003c/code\u003e alters \u003ccode\u003ejson_encoders\u003c/code\u003e of Pydantic v1 objects. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/4972\"\u003e#4972\u003c/a\u003e by \u003ca href=\"https://github.com/aboubacs\"\u003e\u003ccode\u003e@​aboubacs\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Reenable \u003ccode\u003eallow_arbitrary_types\u003c/code\u003e when only 1 argument is used on the API endpoint. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13694\"\u003e#13694\u003c/a\u003e by \u003ca href=\"https://github.com/rmawatson\"\u003e\u003ccode\u003e@​rmawatson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003einspect.getcoroutinefunction()\u003c/code\u003e can break testing with \u003ccode\u003eunittest.mock.patch()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14022\"\u003e#14022\u003c/a\u003e by \u003ca href=\"https://github.com/secrett2633\"\u003e\u003ccode\u003e@​secrett2633\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRefactors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e♻️ Create \u003ccode\u003edependency-cache\u003c/code\u003e dict in \u003ccode\u003esolve_dependencies\u003c/code\u003e only if \u003ccode\u003eNone\u003c/code\u003e (don't re-create if empty). PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13689\"\u003e#13689\u003c/a\u003e by \u003ca href=\"https://github.com/bokshitsky\"\u003e\u003ccode\u003e@​bokshitsky\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Enable test case for duplicated headers in \u003ccode\u003etest_tutorial/test_header_params/test_tutorial003.py\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13864\"\u003e#13864\u003c/a\u003e by \u003ca href=\"https://github.com/Amogha-ark\"\u003e\u003ccode\u003e@​Amogha-ark\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📌 Pin \u003ccode\u003ehttpx\u003c/code\u003e to \u003ccode\u003e\u0026gt;=0.23.0,\u0026lt;1.0.0\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14086\"\u003e#14086\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\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📝 Add note about Cookies and JavaScript on \u003ccode\u003etutorial/cookie-params.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13510\"\u003e#13510\u003c/a\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Remove outdated formatting from \u003ccode\u003epath-params-numeric-validations.md\u003c/code\u003e for languages \u003ccode\u003een\u003c/code\u003e, \u003ccode\u003ees\u003c/code\u003e and \u003ccode\u003euk\u003c/code\u003e.. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14059\"\u003e#14059\u003c/a\u003e by \u003ca href=\"https://github.com/svlandeg\"\u003e\u003ccode\u003e@​svlandeg\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Fix and Improve English Documentation. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14048\"\u003e#14048\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\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📝 Update prompts and German translation. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14015\"\u003e#14015\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\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✅ Simplify tests for response_model. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14062\"\u003e#14062\u003c/a\u003e by \u003ca href=\"https://github.com/dynamicy\"\u003e\u003ccode\u003e@​dynamicy\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🚨 Install pydantic.mypy plugin. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14081\"\u003e#14081\u003c/a\u003e by \u003ca href=\"https://github.com/svlandeg\"\u003e\u003ccode\u003e@​svlandeg\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Add LLM test file. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14049\"\u003e#14049\u003c/a\u003e by \u003ca href=\"https://github.com/nilslindemann\"\u003e\u003ccode\u003e@​nilslindemann\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔨 Update translations script. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13968\"\u003e#13968\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🛠️ Update \u003ccode\u003edocs.py generate-readme\u003c/code\u003e command to remove permalinks from headers. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14055\"\u003e#14055\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆️ Update mypy to 1.14.1. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/12970\"\u003e#12970\u003c/a\u003e by \u003ca href=\"https://github.com/tamird\"\u003e\u003ccode\u003e@​tamird\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.116.2\u003c/h2\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Upgrade Starlette supported version range to \u0026gt;=0.40.0,\u0026lt;0.49.0. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14077\"\u003e#14077\u003c/a\u003e by \u003ca href=\"https://github.com/musicinmybrain\"\u003e\u003ccode\u003e@​musicinmybrain\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/784f06cb9b7cc63f6a0cb2bc9cf238473eef93e2\"\u003e\u003ccode\u003e784f06c\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.117.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/b5c05893b4c43c93ff94761270ea750c0bd9e30e\"\u003e\u003ccode\u003eb5c0589\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/44fc67632bcdae4d078cb11b1a319ac122cbb06f\"\u003e\u003ccode\u003e44fc676\u003c/code\u003e\u003c/a\u003e 🐛 Fix validation error when \u003ccode\u003eFile\u003c/code\u003e is declared after \u003ccode\u003eForm\u003c/code\u003e parameter (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/11194\"\u003e#11194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/a84001000e59ff362e74f93b8d9a58a4309dac2d\"\u003e\u003ccode\u003ea840010\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/382d083e26a28e95c731e85345c85c6dc99b08b4\"\u003e\u003ccode\u003e382d083\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.117.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/a7f2dbe976bf72703376f0cd04487bfc4a849f83\"\u003e\u003ccode\u003ea7f2dbe\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/f1e6f978ce10a6f9b4c668350a79462e9ac330a8\"\u003e\u003ccode\u003ef1e6f97\u003c/code\u003e\u003c/a\u003e ⚡️ Fix \u003ccode\u003edefault_factory\u003c/code\u003e for response model field with Pydantic V1 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/9704\"\u003e#9704\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/b01d5c97a09b8f4f95b9e9b0d6bc083a23cdea20\"\u003e\u003ccode\u003eb01d5c9\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/b51ec36f2e442495de5e4c22ae51a8f5c44917eb\"\u003e\u003ccode\u003eb51ec36\u003c/code\u003e\u003c/a\u003e ✨  Allow \u003ccode\u003eNone\u003c/code\u003e as return type for bodiless responses (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/9425\"\u003e#9425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/0bdc3ca3732e3742e094bea2b320e9774659ac38\"\u003e\u003ccode\u003e0bdc3ca\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.116.1...0.117.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.10.6 to 2.11.9\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.11.9 2025-09-13\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBackport v1.10.23 changes by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\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.8...v2.11.9\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.8...v2.11.9\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.8 2025-09-13\u003c/h2\u003e\n\u003ch2\u003ev2.11.8 (2025-09-13)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix mypy plugin for mypy 1.18 by \u003ca href=\"https://github.com/cdce8p\"\u003e\u003ccode\u003e@​cdce8p\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12209\"\u003e#12209\u003c/a\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.7...v2.11.8\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.7...v2.11.8\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.7 2025-06-14\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCopy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build 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/11980\"\u003epydantic/pydantic#11980\u003c/a\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.6...v2.11.7\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.6...v2.11.7\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.6 2025-06-13\u003c/h2\u003e\n\u003ch2\u003ev2.11.6 (2025-06-13)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRebuild dataclass fields before 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/11949\"\u003e#11949\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlways store the original field assignment on \u003ccode\u003eFieldInfo\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/11946\"\u003e#11946\u003c/a\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.5...v2.11.6\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.5...v2.11.6\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.5 2025-05-22\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCheck if \u003ccode\u003eFieldInfo\u003c/code\u003e is complete after applying type variable map 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/11855\"\u003e#11855\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not delete mock validator/serializer in \u003ccode\u003emodel_rebuild()\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/11890\"\u003e#11890\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not duplicate metadata on model rebuild 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/11902\"\u003e#11902\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/pydantic/pydantic/blob/v2.11.9/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.11.9 (2025-09-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.9\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBackport v1.10.23 changes by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.8 (2025-09-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.8\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix mypy plugin for mypy 1.18 by \u003ca href=\"https://github.com/cdce8p\"\u003e\u003ccode\u003e@​cdce8p\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12209\"\u003e#12209\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.7 (2025-06-14)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.7\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCopy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build 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/11898\"\u003e#11898\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.6 (2025-06-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.6\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRebuild dataclass fields before 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/11949\"\u003e#11949\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlways store the original field assignment on \u003ccode\u003eFieldInfo\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/11946\"\u003e#11946\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.5 (2025-05-22)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCheck if \u003ccode\u003eFieldInfo\u003c/code\u003e is complete after applying type variable map 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/11855\"\u003e#11855\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/pydantic/pydantic/commit/92310953c146a2ac668a0141be820c083e325f5d\"\u003e\u003ccode\u003e9231095\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/f003a89eeaff35ee18f220a2c790d20536e3d0ab\"\u003e\u003ccode\u003ef003a89\u003c/code\u003e\u003c/a\u003e Backport v1.10.23 changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/96b81ddaf93a1f2e19ff1609080c33de10b8d931\"\u003e\u003ccode\u003e96b81dd\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/966f377692194b3f1d6d5155ac78052bec0a751d\"\u003e\u003ccode\u003e966f377\u003c/code\u003e\u003c/a\u003e Fix mypy v2 plugin for upcoming \u003ccode\u003e1.18\u003c/code\u003e mypy release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/5f033e46c54fea1b59b6894d6527daf49475e690\"\u003e\u003ccode\u003e5f033e4\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c3368b83c411f421a7322959bc29f3bea4bd252a\"\u003e\u003ccode\u003ec3368b8\u003c/code\u003e\u003c/a\u003e Copy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/11980\"\u003e#11980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/3987b23db4b31ff35e9fa15c21c0c1d1c9808838\"\u003e\u003ccode\u003e3987b23\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/dc7a9d20bee55a3a6e7397ee46abfcd9057b627b\"\u003e\u003ccode\u003edc7a9d2\u003c/code\u003e\u003c/a\u003e Always store the original field assignment on \u003ccode\u003eFieldInfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c284c279a5b8c95d32ab5ec31d2511b3b27bfa87\"\u003e\u003ccode\u003ec284c27\u003c/code\u003e\u003c/a\u003e Rebuild dataclass fields before schema generation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/5e6d1dc71fe9bd832635cb2e9b4af92286fd00b8\"\u003e\u003ccode\u003e5e6d1dc\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.5\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.11.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.40.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.40.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable logging response body for async logs (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1756\"\u003e#1756\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2f0ddfeb9f6c726c68beebd7eefd32c86f7f0963\"\u003e2f0ddfe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.39.0...v2.40.0\"\u003e2.40.0\u003c/a\u003e (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd request response logging to auth (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1678\"\u003e#1678\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/77ad53eb00c74b3badc486c8207a16dbc49f37e5\"\u003e77ad53e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrect webauthn JSON parsing to be compliant with standard. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1658\"\u003e#1658\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0c5ef364fb13ca9d7d17100166de87732d752de8\"\u003e0c5ef36\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.39.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.39.0\"\u003e2.39.0\u003c/a\u003e (2025-04-14)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds GA support for X.509 workload identity federation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1695\"\u003e#1695\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/74959605400f9a1976bbdc52c029943b634eb553\"\u003e7495960\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable logging response body for async logs (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1756\"\u003e#1756\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2f0ddfeb9f6c726c68beebd7eefd32c86f7f0963\"\u003e2f0ddfe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.39.0...v2.40.0\"\u003e2.40.0\u003c/a\u003e (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd request response logging to auth (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1678\"\u003e#1678\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/77ad53eb00c74b3badc486c8207a16dbc49f37e5\"\u003e77ad53e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrect webauthn JSON parsing to be compliant with standard. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1658\"\u003e#1658\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0c5ef364fb13ca9d7d17100166de87732d752de8\"\u003e0c5ef36\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.39.0\"\u003e2.39.0\u003c/a\u003e (2025-04-14)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds GA support for X.509 workload identity federation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1695\"\u003e#1695\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/74959605400f9a1976bbdc52c029943b634eb553\"\u003e7495960\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd impersonated SA via local ADC support for fetch_id_token (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1740\"\u003e#1740\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/f24976452d741de6a49d9b7a85cdab47812f5312\"\u003ef249764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd missing packaging dependency for feature requiring urllib3 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1732\"\u003e#1732\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/221f4a82fa25c1ad453b85bc8b7f2fc304724879\"\u003e221f4a8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd request timeout for MDS requests (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1699\"\u003e#1699\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/9f7d3fa92c0e656a1c970182833abe2d0d3ad3ee\"\u003e9f7d3fa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExplicitly declare support for Python 3.13 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1741\"\u003e#1741\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/6fd04d57df90866f24b554c489f8f2653467d70e\"\u003e6fd04d5\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/googleapis/google-auth-library-python/commit/ca94ead4035beea4741dc5384449032f8e6f75d8\"\u003e\u003ccode\u003eca94ead\u003c/code\u003e\u003c/a\u003e chore(main): release 2.40.3 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1768\"\u003e#1768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e\u003ccode\u003e88891cc\u003c/code\u003e\u003c/a\u003e fix: auth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0be91e2f795c989a592cb9c7828a1c53d8107165\"\u003e\u003ccode\u003e0be91e2\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;fix: remove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25660bc57569b3f3e9a1f664516d10f4bc8744b8\"\u003e\u003ccode\u003e25660bc\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1774\"\u003e#1774\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e\u003ccode\u003e7c61c7d\u003c/code\u003e\u003c/a\u003e fix: remove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e\u003ccode\u003e554f967\u003c/code\u003e\u003c/a\u003e fix: retry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/6845065aca69d5130eec40fbe052f56c36860bf7\"\u003e\u003ccode\u003e6845065\u003c/code\u003e\u003c/a\u003e chore(main): release 2.40.2 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1766\"\u003e#1766\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e\u003ccode\u003e44e38b6\u003c/code\u003e\u003c/a\u003e fix: Update test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e\u003ccode\u003e97ed1c8\u003c/code\u003e\u003c/a\u003e chore: remove sync response logs in AuthorizedSession (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1761\"\u003e#1761\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/13a897ea05feff6a2267f700a53b50e9741919a0\"\u003e\u003ccode\u003e13a897e\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1764\"\u003e#1764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.40.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: ensure find_dotenv work reliably on python 3.13 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003etheskumar/python-dotenv#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cli): issue with execvpe on Windows by \u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\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/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a security policy by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/512\"\u003etheskumar/python-dotenv#512\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep GitHub Actions up to date with GitHub's Dependabot by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/506\"\u003etheskumar/python-dotenv#506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix multiline string in test.yml \u0026amp; use fail-fast strategy by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/514\"\u003etheskumar/python-dotenv#514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnhance dotenv run: Switch to execvpe for better resource management and signal handling by \u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add py3.13 to test.yml by \u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 trove classifier by \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for python 3.13 and drop 3.8 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/551\"\u003etheskumar/python-dotenv#551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update README.md by \u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSome more s/Python-dotenv/python-dotenv/ by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/552\"\u003etheskumar/python-dotenv#552\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd _is_debugger so load_dotenv will work in pdb by \u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/553\"\u003etheskumar/python-dotenv#553\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/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/553\"\u003etheskumar/python-dotenv#553\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.0\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCLI: revert the use of execvpe on Windows by [\u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003e#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.0] - 2025-03-25\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFeature\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for python 3.13\u003c/li\u003e\n\u003cli\u003eEnhance \u003ccode\u003edotenv run\u003c/code\u003e, switch to \u003ccode\u003eexecvpe\u003c/code\u003e for better resource management and signal handling (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/523\"\u003e#523\u003c/a\u003e) by [\u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efind_dotenv\u003c/code\u003e and \u003ccode\u003eload_dotenv\u003c/code\u003e now correctly looks up at the current directory when running in debugger or pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e by [\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e])\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eMisc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8\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/theskumar/python-dotenv/commit/16e660d384b942b11879b44500afbbe021650448\"\u003e\u003ccode\u003e16e660d\u003c/code\u003e\u003c/a\u003e Bump version: 1.1.0 → 1.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/667e82f18d6e5306894c8746c46b1da2d031bd23\"\u003e\u003ccode\u003e667e82f\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/9d85edb3b8652de4601f9ad8a7a49ad9909f898a\"\u003e\u003ccode\u003e9d85edb\u003c/code\u003e\u003c/a\u003e fix(cli): issue with execvpe on Windows (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/566\"\u003e#566\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8411987b9301f716245074872afa30646e9b9eb7\"\u003e\u003ccode\u003e8411987\u003c/code\u003e\u003c/a\u003e fix: ensure find_dotenv work reliably on python 3.13 (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/01f899733de664cda0550207067eb36a1795062f\"\u003e\u003ccode\u003e01f8997\u003c/code\u003e\u003c/a\u003e docs update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/6a02ef5a1034d66338811757df07a113a1169af6\"\u003e\u003ccode\u003e6a02ef5\u003c/code\u003e\u003c/a\u003e update mkdocs -\u0026gt; mkdocstrings config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/36c6270db41e1e88be4ec21d0fb876ba0c79d363\"\u003e\u003ccode\u003e36c6270\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/2198b698c021851201261fac27884ee8db6553d5\"\u003e\u003ccode\u003e2198b69\u003c/code\u003e\u003c/a\u003e Bump version: 1.0.1 → 1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/c89fb6d41c0a25f670b34ba05f392260eaa6ccd1\"\u003e\u003ccode\u003ec89fb6d\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8dd413e84b1fb1b3368c02106aab07a533fae015\"\u003e\u003ccode\u003e8dd413e\u003c/code\u003e\u003c/a\u003e Add _is_debugger so load_dotenv will work in pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `orjson` from 3.10.16 to 3.11.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ijl/orjson/releases\"\u003eorjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared buffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI Windows aarch64/arm64 wheels.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 alpha 7.\u003c/li\u003e\n\u003cli\u003eFix incompatibility running on Python 3.13 using WASM.\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/ijl/orjson/blob/master/CHANGELOG.md\"\u003eorjson's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.3 - 2025-08-26\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1 - 2025-07-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures. This was introduced in 3.11.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 - 2025-07-15\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared\nbuffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18 - 2025-04-29\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17 - 2025-04-29\u003c/h2\u003e\n\u003ch3\u003eChanged\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/ijl/orjson/commit/aa8c946cfbe2aba29016bc9c9ddc8713cb00173b\"\u003e\u003ccode\u003eaa8c946\u003c/code\u003e\u003c/a\u003e 3.11.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2442efc125068e43bec97c26e3a6b5da8932936c\"\u003e\u003ccode\u003e2442efc\u003c/code\u003e\u003c/a\u003e Fix PyPI project metadata when using maturin 1.9.2 or later\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/ba760146e7bc407d729436d8dbcb9e1495c83773\"\u003e\u003ccode\u003eba76014\u003c/code\u003e\u003c/a\u003e 3.11.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/49315905a4f071f2279b6df87125ca94780b5173\"\u003e\u003ccode\u003e4931590\u003c/code\u003e\u003c/a\u003e CPython compatibility misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/3de9324511a704ffbe13a94221c8f05062bf71e8\"\u003e\u003ccode\u003e3de9324\u003c/code\u003e\u003c/a\u003e MSRV 1.85, edition 2024, stdarch_x86_avx512 fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/d7359c9899c63570b21a200bc0f8d559eea7cd19\"\u003e\u003ccode\u003ed7359c9\u003c/code\u003e\u003c/a\u003e Remove macOS 13 CI runner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/1d3aa7af6271981907b1e0d1eeee2e07a7c49302\"\u003e\u003ccode\u003e1d3aa7a\u003c/code\u003e\u003c/a\u003e 3.11.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/11d29cb9bcd73777c554d65ba670cde2d6c8c802\"\u003e\u003ccode\u003e11d29cb\u003c/code\u003e\u003c/a\u003e 3.14 packaging misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/168391825ba415df853735a4359095a0327dcd1a\"\u003e\u003ccode\u003e1683918\u003c/code\u003e\u003c/a\u003e bytes::BufMut\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/9c33ff9df61b3b9d71527acf4fb60a735d841025\"\u003e\u003ccode\u003e9c33ff9\u003c/code\u003e\u003c/a\u003e Fix big-endian PyStr\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ijl/orjson/compare/3.10.16...3.11.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` from 2.2.3 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\u003ch2\u003ePandas 2.3.0\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.0.\nThis release includes some new features, bug fixes, and performance improvements. 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.0/whatsnew/v2.3.0.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.0 supports Python 3.10 and higher.\u003c/p\u003e\n\u003cp\u003eThe release will be available on the defaults and conda-forge channels:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install -c conda-forge pandas\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr via PyPI:\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/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.2.3...v2.3.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geoalchemy2` from 0.17.1 to 0.18.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/releases\"\u003egeoalchemy2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/538\"\u003egeoalchemy/geoalchemy2#538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/540\"\u003egeoalchemy/geoalchemy2#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCompile literal binds by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/543\"\u003egeoalchemy/geoalchemy2#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/544\"\u003egeoalchemy/geoalchemy2#544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore (mariadb): Stop converting WKB to WKT by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/545\"\u003egeoalchemy/geoalchemy2#545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker containers by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/546\"\u003egeoalchemy/geoalchemy2#546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/547\"\u003egeoalchemy/geoalchemy2#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/553\"\u003egeoalchemy/geoalchemy2#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/554\"\u003egeoalchemy/geoalchemy2#554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Improve readbility of benchmark results by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/556\"\u003egeoalchemy/geoalchemy2#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/555\"\u003egeoalchemy/geoalchemy2#555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/557\"\u003egeoalchemy/geoalchemy2#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Remove warning message from MySQL/MariaDB reflection by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/560\"\u003egeoalchemy/geoalchemy2#560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/561\"\u003egeoalchemy/geoalchemy2#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: correct doc strings by \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/564\"\u003egeoalchemy/geoalchemy2#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.0 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/565\"\u003egeoalchemy/geoalchemy2#565\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/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.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/geoalchemy/geoalchemy2/blob/master/CHANGES.txt\"\u003egeoalchemy2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Fix doc strings for cache enabled - \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e(papacodebear/master) Fix: Remove warning from MySQL/MariaDB reflection \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Improve readability of benchmark results \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/547\"\u003e#547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker container \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/546\"\u003e#546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf (mariadb): Stop converting WKB to WKT \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/545\"\u003e#545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/544\"\u003e#544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Compile literal binds properly \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/540\"\u003e#540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/538\"\u003e#538\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/geoalchemy/geoalchemy2/commit/60767082df9f4587fadd56ab94847ebc39df8295\"\u003e\u003ccode\u003e6076708\u003c/code\u003e\u003c/a\u003e Release: 0.18.0 (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/565\"\u003e#565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/e13112177bdf79cae0d72a6e89d815dc272e3dc5\"\u003e\u003ccode\u003ee131121\u003c/code\u003e\u003c/a\u003e Feat: Add support of spatial indexes for Raster type for PostgreSQL (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/0b432086a0c3b8ab160c5cc1864aa65e02f35362\"\u003e\u003ccode\u003e0b43208\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/8791b2eec013f21f599ca060d9fee4aba72ec2a1\"\u003e\u003ccode\u003e8791b2e\u003c/code\u003e\u003c/a\u003e Docs: Fix doc strings for cache enabled (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/d3c1d04c8b462c61132403e44a7a4f04a487c142\"\u003e\u003ccode\u003ed3c1d04\u003c/code\u003e\u003c/a\u003e Chore: Move reflection type registering (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/24dc5d05d97fb9a2a57103c1823a58f06940a5e8\"\u003e\u003ccode\u003e24dc5d0\u003c/code\u003e\u003c/a\u003e Fix: Remove warning from MySQL/MariaDB reflection (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/71f7914d4ddf7d9c46c772e36a8463e20901966a\"\u003e\u003ccode\u003e71f7914\u003c/code\u003e\u003c/a\u003e Feat: Handle computed columns (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/c139cdbca62019d92d18f12429706732777c38e2\"\u003e\u003ccode\u003ec139cdb\u003c/code\u003e\u003c/a\u003e Perf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/2e94baa4f3ac23e0160ed841d4efe7ceb3fa2378\"\u003e\u003ccode\u003e2e94baa\u003c/code\u003e\u003c/a\u003e Test: Improve readbility of benchmark results (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/84292bc352ab7ff1102a0529772d32afb0309616\"\u003e\u003ccode\u003e84292bc\u003c/code\u003e\u003c/a\u003e Chore: Create FUNDING.yml (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sqlglot` from 27.14.0 to 27.16.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tobymao/sqlglot/blob/main/CHANGELOG.md\"\u003esqlglot's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v27.16.3] - 2025-09-18\u003c/h2\u003e\n\u003ch3\u003e:bug: Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/d1270517c3e124ca59caf29e4506eb3848f7452e\"\u003e\u003ccode\u003ed127051\u003c/code\u003e\u003c/a\u003e - precedence issue with column operator parsing \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5914\"\u003e#5914\u003c/a\u003e by \u003ca href=\"https://github.com/georgesittas\"\u003e\u003ccode\u003e@​georgesittas\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[v27.16.2] - 2025-09-18\u003c/h2\u003e\n\u003ch3\u003e:wrench: Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/837890c7e8bcc3695541bbe32fd8088eee70fea3\"\u003e\u003ccode\u003e837890c\u003c/code\u003e\u003c/a\u003e - handle badly formed binary expressions gracefully in type inference \u003cem\u003e(commit by \u003ca href=\"https://github.com/georgesittas\"\u003e\u003ccode\u003e@​georgesittas\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[v27.16.1] - 2025-09-18\u003c/h2\u003e\n\u003ch3\u003e:bug: Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/0e256b3f864bc2d026817bd08e89ee89f44ad256\"\u003e\u003ccode\u003e0e256b3\u003c/code\u003e\u003c/a\u003e - edge case with parsing \u003ccode\u003einterval\u003c/code\u003e as identifier \u003cem\u003e(commit by \u003ca href=\"https://github.com/georgesittas\"\u003e\u003ccode\u003e@​georgesittas\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[v27.16.0] - 2025-09-18\u003c/h2\u003e\n\u003ch3\u003e:boom: BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/5a973e9a88fa7f522a9bf91dc60fb0f6effef53d\"\u003e\u003ccode\u003e5a973e9\u003c/code\u003e\u003c/a\u003e - annotate types for Snowflake AI_CLASSIFY function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5909\"\u003e#5909\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eannotate types for Snowflake AI_CLASSIFY function (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5909\"\u003e#5909\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edue to \u003ca href=\"https://github.com/tobymao/sqlglot/commit/2d0d908b5bbc32ff3bc92eb1ae9fc6e5ac3409bc\"\u003e\u003ccode\u003e2d0d908\u003c/code\u003e\u003c/a\u003e - produce TableAlias instead of Alias for USING in merge builder \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5911\"\u003e#5911\u003c/a\u003e by \u003ca href=\"https://github.com/georgesittas\"\u003e\u003ccode\u003e@​georgesittas\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e:\u003c/p\u003e\n\u003cp\u003eproduce TableAlias instead of Alias for USING in merge builder (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e:sparkles: New Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/5a973e9a88fa7f522a9bf91dc60fb0f6effef53d\"\u003e\u003ccode\u003e5a973e9\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003eoptimizer\u003c/strong\u003e: annotate types for Snowflake AI_CLASSIFY function \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5909\"\u003e#5909\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-BradfordPaskewitz\"\u003e\u003ccode\u003e@​fivetran-BradfordPaskewitz\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e:bug: Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/2d0d908b5bbc32ff3bc92eb1ae9fc6e5ac3409bc\"\u003e\u003ccode\u003e2d0d908\u003c/code\u003e\u003c/a\u003e - produce TableAlias instead of Alias for USING in merge builder \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5911\"\u003e#5911\u003c/a\u003e by \u003ca href=\"https://github.com/georgesittas\"\u003e\u003ccode\u003e@​georgesittas\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\n\u003cul\u003e\n\u003cli\u003e:arrow_lower_right: \u003cem\u003efixes issue \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5910\"\u003e#5910\u003c/a\u003e opened by \u003ca href=\"https://github.com/deepyaman\"\u003e\u003ccode\u003e@​deepyaman\u003c/code\u003e\u003c/a\u003e\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e:wrench: Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/e8974e70d9956ce7a5cb119ba465660f5f172a17\"\u003e\u003ccode\u003ee8974e7\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003eoptimizer\u003c/strong\u003e: Add tests for snowflake likeall, likeany and ilikeany functions \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5908\"\u003e#5908\u003c/a\u003e by \u003ca href=\"https://github.com/fivetran-amrutabhimsenayachit\"\u003e\u003ccode\u003e@​fivetran-amrutabhimsenayachit\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[v27.15.3] - 2025-09-17\u003c/h2\u003e\n\u003ch3\u003e:bug: Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/bd3e9655aa72ffef8a9e0221205fa2c3915ef58b\"\u003e\u003ccode\u003ebd3e965\u003c/code\u003e\u003c/a\u003e - allow \u003ccode\u003elock\u003c/code\u003e to be used as an identifier \u003cem\u003e(commit by \u003ca href=\"https://github.com/georgesittas\"\u003e\u003ccode\u003e@​georgesittas\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[v27.15.2] - 2025-09-17\u003c/h2\u003e\n\u003ch3\u003e:sparkles: New Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/d5cf1149932850a91cb5f1ebecda2652616729ef\"\u003e\u003ccode\u003ed5cf114\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003educkdb\u003c/strong\u003e: support INSTALL \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5904\"\u003e#5904\u003c/a\u003e by \u003ca href=\"https://github.com/geooo109\"\u003e\u003ccode\u003e@​geooo109\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/73e05bb15bb86e4a07cc09bf02028a6cf7fa1e6f\"\u003e\u003ccode\u003e73e05bb\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003esnowflake\u003c/strong\u003e: properly generate \u003ccode\u003eBITNOT\u003c/code\u003e \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5906\"\u003e#5906\u003c/a\u003e by \u003ca href=\"https://github.com/YuvalOmerRep\"\u003e\u003ccode\u003e@​YuvalOmerRep\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/16f317c04f7c0a398c38b461e05f4d4c30baf98b\"\u003e\u003ccode\u003e16f317c\u003c/code\u003e\u003c/a\u003e - \u003cstrong\u003esnowflake\u003c/strong\u003e: add support for \u003ccode\u003e\u0026lt;model\u0026gt;!\u0026lt;attribute\u0026gt;\u003c/code\u003e syntax \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/tobymao/sqlglot/pull/5907\"\u003e#5907\u003c/a\u003e by \u003ca href=\"https://github.com/georgesittas\"\u003e\u003ccode\u003e@​georgesittas\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e:recycle: Refactors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/095b2ac3af230eff86d9bc1b0fd3a0a2095f151c\"\u003e\u003ccode\u003e095b2ac\u003c/code\u003e\u003c/a\u003e - clean up duckdb INSTALL tests \u003cem\u003e(commit by \u003ca href=\"https://github.com/geooo109\"\u003e\u003ccode\u003e@​geooo109\u003c/code\u003e\u003c/a\u003e)\u003c/em\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/tobymao/sqlglot/commit/d1270517c3e124ca59caf29e4506eb3848f7452e\"\u003e\u003ccode\u003ed127051\u003c/code\u003e\u003c/a\u003e Fix: precedence issue with column operator parsing (\u003ca href=\"https://redirect.github.com/tobymao/sqlglot/issues/5914\"\u003e#5914\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/a120f32d0f5456078f0c10b539c3c41a1942dec4\"\u003e\u003ccode\u003ea120f32\u003c/code\u003e\u003c/a\u003e docs: update API docs, CHANGELOG.md for v27.16.2 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/837890c7e8bcc3695541bbe32fd8088eee70fea3\"\u003e\u003ccode\u003e837890c\u003c/code\u003e\u003c/a\u003e Chore: handle badly formed binary expressions gracefully in type inference\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/080b1a537795e7352ad67b4718253eaec018c9d8\"\u003e\u003ccode\u003e080b1a5\u003c/code\u003e\u003c/a\u003e docs: update API docs, CHANGELOG.md for v27.16.1 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/0e256b3f864bc2d026817bd08e89ee89f44ad256\"\u003e\u003ccode\u003e0e256b3\u003c/code\u003e\u003c/a\u003e Fix: edge case with parsing \u003ccode\u003einterval\u003c/code\u003e as identifier\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/88d72af1b08bacc1323424ec517ff6ca53eb7ff4\"\u003e\u003ccode\u003e88d72af\u003c/code\u003e\u003c/a\u003e docs: update API docs, CHANGELOG.md for v27.16.0 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tobymao/sqlglot/commit/2d0d908b5bbc32ff3bc92eb1ae9fc6e5ac3409bc\"\u003e\u003ccode\u003e2d0d908\u003c/code\u003e\u003c/a\u003e Fix!: produce TableAlias instead ...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1327","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1327","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1327/packages"}},{"old_version":"47.0.0","new_version":"49.0.0","update_type":"major","path":null,"pr_created_at":"2025-09-17T08:35:59.000Z","version_change":"47.0.0 → 49.0.0","issue":{"uuid":"3425274705","node_id":"PR_kwDOHTdvBs6pBYGF","number":1324,"state":"open","title":"deps(ibis): bump the all group across 1 directory with 18 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-17T08:35:59.000Z","updated_at":"2025-09-17T08:36:15.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":18,"packages":[{"name":"fastapi","old_version":"0.116.1","new_version":"0.116.2","repository_url":"https://github.com/fastapi/fastapi"},{"name":"pydantic","old_version":"2.10.6","new_version":"2.11.9","repository_url":"https://github.com/pydantic/pydantic"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.40.3","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"orjson","old_version":"3.10.16","new_version":"3.11.3","repository_url":"https://github.com/ijl/orjson"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.2","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.18.0","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"duckdb","old_version":"1.3.2","new_version":"1.4.0","repository_url":"https://github.com/duckdb/duckdb-python"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.8","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"49.0.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"pytest","old_version":"8.3.5","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.13.0","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.43","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.13.0","repository_url":"https://github.com/astral-sh/ruff"},{"name":"trino","old_version":"0.335.0","new_version":"0.336.0","repository_url":"https://github.com/trinodb/trino-python-client"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.9.1","repository_url":"https://github.com/ClickHouse/clickhouse-connect"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 18 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.116.1` | `0.116.2` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.11.9` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.40.3` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.1.1` |\n| [orjson](https://github.com/ijl/orjson) | `3.10.16` | `3.11.3` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.2` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.18.0` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [duckdb](https://github.com/duckdb/duckdb-python) | `1.3.2` | `1.4.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.8` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `49.0.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `8.4.2` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.13.0` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.43` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.3.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.13.0` |\n| [trino](https://github.com/trinodb/trino-python-client) | `0.335.0` | `0.336.0` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.9.1` |\n\n\nUpdates `fastapi` from 0.116.1 to 0.116.2\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's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.116.2\u003c/h2\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Upgrade Starlette supported version range to \u0026gt;=0.40.0,\u0026lt;0.49.0. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14077\"\u003e#14077\u003c/a\u003e by \u003ca href=\"https://github.com/musicinmybrain\"\u003e\u003ccode\u003e@​musicinmybrain\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📝 Add documentation for Behind a Proxy - Proxy Forwarded Headers, using \u003ccode\u003e--forwarded-allow-ips=\u0026quot;*\u0026quot;\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14028\"\u003e#14028\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add deprecation info block about \u003ccode\u003edict()\u003c/code\u003e in \u003ccode\u003edocs/tutorial/body.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13906\"\u003e#13906\u003c/a\u003e by \u003ca href=\"https://github.com/jomkv\"\u003e\u003ccode\u003e@​jomkv\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Fix Twitter to be X (Twitter) everywhere in documentation. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13809\"\u003e#13809\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🐛 Prevent scroll-to-top on restart/fast buttons in \u003ccode\u003etermynal.js\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13714\"\u003e#13714\u003c/a\u003e by \u003ca href=\"https://github.com/Ashish-Pandey62\"\u003e\u003ccode\u003e@​Ashish-Pandey62\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Update testing events documentation. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13259\"\u003e#13259\u003c/a\u003e by \u003ca href=\"https://github.com/z0z0r4\"\u003e\u003ccode\u003e@​z0z0r4\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Remove obsolete \u003ccode\u003eurl\u003c/code\u003e field in error responses in docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13655\"\u003e#13655\u003c/a\u003e by \u003ca href=\"https://github.com/Taoup\"\u003e\u003ccode\u003e@​Taoup\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Bring the \u003ccode\u003escope\u003c/code\u003e claim in line with the standard in \u003ccode\u003edocs_src/security/tutorial005.py\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/11189\"\u003e#11189\u003c/a\u003e by \u003ca href=\"https://github.com/DurandA\"\u003e\u003ccode\u003e@​DurandA\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Update TrustedHostMiddleware Documentation. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/11441\"\u003e#11441\u003c/a\u003e by \u003ca href=\"https://github.com/soulee-dev\"\u003e\u003ccode\u003e@​soulee-dev\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Remove links to site callbackhell.com that doesn't exist anymore. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14006\"\u003e#14006\u003c/a\u003e by \u003ca href=\"https://github.com/dennybiasiolli\"\u003e\u003ccode\u003e@​dennybiasiolli\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add permalinks to headers in English docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13993\"\u003e#13993\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Update \u003ccode\u003edocs/en/docs/advanced/generate-clients.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13793\"\u003e#13793\u003c/a\u003e by \u003ca href=\"https://github.com/mrlubos\"\u003e\u003ccode\u003e@​mrlubos\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add discussion template for new language translation requests. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13535\"\u003e#13535\u003c/a\u003e by \u003ca href=\"https://github.com/alejsdev\"\u003e\u003ccode\u003e@​alejsdev\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📝 Fix code include for Pydantic models example in \u003ccode\u003edocs/zh/docs/python-types.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13997\"\u003e#13997\u003c/a\u003e by \u003ca href=\"https://github.com/anfreshman\"\u003e\u003ccode\u003e@​anfreshman\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Update Portuguese Translation for \u003ccode\u003edocs/pt/docs/async.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13863\"\u003e#13863\u003c/a\u003e by \u003ca href=\"https://github.com/EdmilsonRodrigues\"\u003e\u003ccode\u003e@​EdmilsonRodrigues\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Fix highlight line in \u003ccode\u003edocs/ja/docs/tutorial/body.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13927\"\u003e#13927\u003c/a\u003e by \u003ca href=\"https://github.com/KoyoMiyazaki\"\u003e\u003ccode\u003e@​KoyoMiyazaki\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Add Persian translation for \u003ccode\u003edocs/fa/docs/environment-variables.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13923\"\u003e#13923\u003c/a\u003e by \u003ca href=\"https://github.com/Mohammad222PR\"\u003e\u003ccode\u003e@​Mohammad222PR\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Add Persian translation for \u003ccode\u003edocs/fa/docs/python-types.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13524\"\u003e#13524\u003c/a\u003e by \u003ca href=\"https://github.com/Mohammad222PR\"\u003e\u003ccode\u003e@​Mohammad222PR\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Update Portuguese Translation for \u003ccode\u003edocs/pt/docs/project-generation.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13875\"\u003e#13875\u003c/a\u003e by \u003ca href=\"https://github.com/EdmilsonRodrigues\"\u003e\u003ccode\u003e@​EdmilsonRodrigues\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Add Persian translation for \u003ccode\u003edocs/fa/docs/async.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13541\"\u003e#13541\u003c/a\u003e by \u003ca href=\"https://github.com/Mohammad222PR\"\u003e\u003ccode\u003e@​Mohammad222PR\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🌐 Add Bangali translation for \u003ccode\u003edocs/bn/about/index.md\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13882\"\u003e#13882\u003c/a\u003e by \u003ca href=\"https://github.com/sajjadrahman56\"\u003e\u003ccode\u003e@​sajjadrahman56\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⬆ Bump pyjwt from 2.8.0 to 2.9.0. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/13960\"\u003e#13960\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ [pre-commit.ci] pre-commit autoupdate. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14080\"\u003e#14080\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\u003cli\u003e⬆ Bump actions/setup-python from 5 to 6. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14042\"\u003e#14042\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ Bump actions/labeler from 5 to 6. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14046\"\u003e#14046\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ [pre-commit.ci] pre-commit autoupdate. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14056\"\u003e#14056\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\u003cli\u003e⬆ [pre-commit.ci] pre-commit autoupdate. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14035\"\u003e#14035\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\u003cli\u003e⬆ Bump pypa/gh-action-pypi-publish from 1.12.4 to 1.13.0. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14041\"\u003e#14041\u003c/a\u003e by \u003ca href=\"https://github.com/apps/dependabot\"\u003e\u003ccode\u003e@​dependabot[bot]\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👥 Update FastAPI People - Contributors and Translators. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14029\"\u003e#14029\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👥 Update FastAPI People - Sponsors. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14030\"\u003e#14030\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👥 Update FastAPI GitHub topic repositories. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14031\"\u003e#14031\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👥 Update FastAPI People - Experts. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14034\"\u003e#14034\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e👷 Detect and label merge conflicts on PRs automatically. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14045\"\u003e#14045\u003c/a\u003e by \u003ca href=\"https://github.com/svlandeg\"\u003e\u003ccode\u003e@​svlandeg\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔧 Update sponsors: remove Platform.sh. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14027\"\u003e#14027\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🔧 Update sponsors: remove Mobb. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14026\"\u003e#14026\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🛠️ Update \u003ccode\u003emkdocs_hooks\u003c/code\u003e to handle headers with permalinks when building docs. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14025\"\u003e#14025\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e⬆ [pre-commit.ci] pre-commit autoupdate. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14016\"\u003e#14016\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\u003cli\u003e⬆ Bump \u003ccode\u003emkdocs-macros-plugin\u003c/code\u003e from 1.3.7 to 1.3.9. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14003\"\u003e#14003\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/a372edf7e8825068a780df643700e6cce7e035c5\"\u003e\u003ccode\u003ea372edf\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.116.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/bc1aba7322fb29195c474ea385073bbb619f0432\"\u003e\u003ccode\u003ebc1aba7\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/7563579dc882aebfaeaf2bc37bd97fead72740a3\"\u003e\u003ccode\u003e7563579\u003c/code\u003e\u003c/a\u003e ⬆️ Upgrade Starlette supported version range to \u0026gt;=0.40.0,\u0026lt;0.49.0 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14077\"\u003e#14077\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/938dd045fd6b5e740c55b1cdc912fe50449669a9\"\u003e\u003ccode\u003e938dd04\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/2a446f7151cea0595d0cadeb08f68486e083c3a1\"\u003e\u003ccode\u003e2a446f7\u003c/code\u003e\u003c/a\u003e ⬆ Bump pyjwt from 2.8.0 to 2.9.0 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/13960\"\u003e#13960\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/ed45b074b93e35cacfce87903b51af8f0ae9cf7e\"\u003e\u003ccode\u003eed45b07\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/480cd8f4f9bf95bd3b2b9a4687444f5f54e0059c\"\u003e\u003ccode\u003e480cd8f\u003c/code\u003e\u003c/a\u003e ⬆ [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14080\"\u003e#14080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/16d75d90eb96976a57b94cc24e4018859cd54c4d\"\u003e\u003ccode\u003e16d75d9\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/a4841de65e05fffc8d99198f2527c6903e3b9ad7\"\u003e\u003ccode\u003ea4841de\u003c/code\u003e\u003c/a\u003e ⬆ Bump actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/14042\"\u003e#14042\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/984d646705794b303de0ee570fff2198a2298fdb\"\u003e\u003ccode\u003e984d646\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.116.1...0.116.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.10.6 to 2.11.9\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.11.9 2025-09-13\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBackport v1.10.23 changes by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\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.8...v2.11.9\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.8...v2.11.9\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.8 2025-09-13\u003c/h2\u003e\n\u003ch2\u003ev2.11.8 (2025-09-13)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix mypy plugin for mypy 1.18 by \u003ca href=\"https://github.com/cdce8p\"\u003e\u003ccode\u003e@​cdce8p\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12209\"\u003e#12209\u003c/a\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.7...v2.11.8\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.7...v2.11.8\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.7 2025-06-14\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCopy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build 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/11980\"\u003epydantic/pydantic#11980\u003c/a\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.6...v2.11.7\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.6...v2.11.7\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.6 2025-06-13\u003c/h2\u003e\n\u003ch2\u003ev2.11.6 (2025-06-13)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRebuild dataclass fields before 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/11949\"\u003e#11949\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlways store the original field assignment on \u003ccode\u003eFieldInfo\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/11946\"\u003e#11946\u003c/a\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.5...v2.11.6\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.5...v2.11.6\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.5 2025-05-22\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCheck if \u003ccode\u003eFieldInfo\u003c/code\u003e is complete after applying type variable map 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/11855\"\u003e#11855\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not delete mock validator/serializer in \u003ccode\u003emodel_rebuild()\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/11890\"\u003e#11890\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not duplicate metadata on model rebuild 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/11902\"\u003e#11902\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/pydantic/pydantic/blob/v2.11.9/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.11.9 (2025-09-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.9\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBackport v1.10.23 changes by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.8 (2025-09-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.8\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix mypy plugin for mypy 1.18 by \u003ca href=\"https://github.com/cdce8p\"\u003e\u003ccode\u003e@​cdce8p\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12209\"\u003e#12209\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.7 (2025-06-14)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.7\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCopy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build 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/11898\"\u003e#11898\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.6 (2025-06-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.6\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRebuild dataclass fields before 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/11949\"\u003e#11949\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlways store the original field assignment on \u003ccode\u003eFieldInfo\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/11946\"\u003e#11946\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.5 (2025-05-22)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCheck if \u003ccode\u003eFieldInfo\u003c/code\u003e is complete after applying type variable map 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/11855\"\u003e#11855\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/pydantic/pydantic/commit/92310953c146a2ac668a0141be820c083e325f5d\"\u003e\u003ccode\u003e9231095\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/f003a89eeaff35ee18f220a2c790d20536e3d0ab\"\u003e\u003ccode\u003ef003a89\u003c/code\u003e\u003c/a\u003e Backport v1.10.23 changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/96b81ddaf93a1f2e19ff1609080c33de10b8d931\"\u003e\u003ccode\u003e96b81dd\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/966f377692194b3f1d6d5155ac78052bec0a751d\"\u003e\u003ccode\u003e966f377\u003c/code\u003e\u003c/a\u003e Fix mypy v2 plugin for upcoming \u003ccode\u003e1.18\u003c/code\u003e mypy release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/5f033e46c54fea1b59b6894d6527daf49475e690\"\u003e\u003ccode\u003e5f033e4\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c3368b83c411f421a7322959bc29f3bea4bd252a\"\u003e\u003ccode\u003ec3368b8\u003c/code\u003e\u003c/a\u003e Copy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/11980\"\u003e#11980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/3987b23db4b31ff35e9fa15c21c0c1d1c9808838\"\u003e\u003ccode\u003e3987b23\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/dc7a9d20bee55a3a6e7397ee46abfcd9057b627b\"\u003e\u003ccode\u003edc7a9d2\u003c/code\u003e\u003c/a\u003e Always store the original field assignment on \u003ccode\u003eFieldInfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c284c279a5b8c95d32ab5ec31d2511b3b27bfa87\"\u003e\u003ccode\u003ec284c27\u003c/code\u003e\u003c/a\u003e Rebuild dataclass fields before schema generation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/5e6d1dc71fe9bd832635cb2e9b4af92286fd00b8\"\u003e\u003ccode\u003e5e6d1dc\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.5\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.11.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.40.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.40.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable logging response body for async logs (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1756\"\u003e#1756\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2f0ddfeb9f6c726c68beebd7eefd32c86f7f0963\"\u003e2f0ddfe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.39.0...v2.40.0\"\u003e2.40.0\u003c/a\u003e (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd request response logging to auth (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1678\"\u003e#1678\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/77ad53eb00c74b3badc486c8207a16dbc49f37e5\"\u003e77ad53e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrect webauthn JSON parsing to be compliant with standard. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1658\"\u003e#1658\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0c5ef364fb13ca9d7d17100166de87732d752de8\"\u003e0c5ef36\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.39.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.39.0\"\u003e2.39.0\u003c/a\u003e (2025-04-14)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds GA support for X.509 workload identity federation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1695\"\u003e#1695\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/74959605400f9a1976bbdc52c029943b634eb553\"\u003e7495960\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable logging response body for async logs (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1756\"\u003e#1756\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2f0ddfeb9f6c726c68beebd7eefd32c86f7f0963\"\u003e2f0ddfe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.39.0...v2.40.0\"\u003e2.40.0\u003c/a\u003e (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd request response logging to auth (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1678\"\u003e#1678\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/77ad53eb00c74b3badc486c8207a16dbc49f37e5\"\u003e77ad53e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrect webauthn JSON parsing to be compliant with standard. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1658\"\u003e#1658\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0c5ef364fb13ca9d7d17100166de87732d752de8\"\u003e0c5ef36\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.39.0\"\u003e2.39.0\u003c/a\u003e (2025-04-14)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds GA support for X.509 workload identity federation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1695\"\u003e#1695\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/74959605400f9a1976bbdc52c029943b634eb553\"\u003e7495960\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd impersonated SA via local ADC support for fetch_id_token (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1740\"\u003e#1740\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/f24976452d741de6a49d9b7a85cdab47812f5312\"\u003ef249764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd missing packaging dependency for feature requiring urllib3 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1732\"\u003e#1732\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/221f4a82fa25c1ad453b85bc8b7f2fc304724879\"\u003e221f4a8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd request timeout for MDS requests (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1699\"\u003e#1699\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/9f7d3fa92c0e656a1c970182833abe2d0d3ad3ee\"\u003e9f7d3fa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExplicitly declare support for Python 3.13 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1741\"\u003e#1741\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/6fd04d57df90866f24b554c489f8f2653467d70e\"\u003e6fd04d5\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/googleapis/google-auth-library-python/commit/ca94ead4035beea4741dc5384449032f8e6f75d8\"\u003e\u003ccode\u003eca94ead\u003c/code\u003e\u003c/a\u003e chore(main): release 2.40.3 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1768\"\u003e#1768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e\u003ccode\u003e88891cc\u003c/code\u003e\u003c/a\u003e fix: auth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0be91e2f795c989a592cb9c7828a1c53d8107165\"\u003e\u003ccode\u003e0be91e2\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;fix: remove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25660bc57569b3f3e9a1f664516d10f4bc8744b8\"\u003e\u003ccode\u003e25660bc\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1774\"\u003e#1774\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e\u003ccode\u003e7c61c7d\u003c/code\u003e\u003c/a\u003e fix: remove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e\u003ccode\u003e554f967\u003c/code\u003e\u003c/a\u003e fix: retry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/6845065aca69d5130eec40fbe052f56c36860bf7\"\u003e\u003ccode\u003e6845065\u003c/code\u003e\u003c/a\u003e chore(main): release 2.40.2 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1766\"\u003e#1766\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e\u003ccode\u003e44e38b6\u003c/code\u003e\u003c/a\u003e fix: Update test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e\u003ccode\u003e97ed1c8\u003c/code\u003e\u003c/a\u003e chore: remove sync response logs in AuthorizedSession (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1761\"\u003e#1761\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/13a897ea05feff6a2267f700a53b50e9741919a0\"\u003e\u003ccode\u003e13a897e\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1764\"\u003e#1764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.40.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: ensure find_dotenv work reliably on python 3.13 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003etheskumar/python-dotenv#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cli): issue with execvpe on Windows by \u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\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/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a security policy by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/512\"\u003etheskumar/python-dotenv#512\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep GitHub Actions up to date with GitHub's Dependabot by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/506\"\u003etheskumar/python-dotenv#506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix multiline string in test.yml \u0026amp; use fail-fast strategy by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/514\"\u003etheskumar/python-dotenv#514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnhance dotenv run: Switch to execvpe for better resource management and signal handling by \u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add py3.13 to test.yml by \u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 trove classifier by \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for python 3.13 and drop 3.8 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/551\"\u003etheskumar/python-dotenv#551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update README.md by \u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSome more s/Python-dotenv/python-dotenv/ by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/552\"\u003etheskumar/python-dotenv#552\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd _is_debugger so load_dotenv will work in pdb by \u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/553\"\u003etheskumar/python-dotenv#553\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/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/553\"\u003etheskumar/python-dotenv#553\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.0\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCLI: revert the use of execvpe on Windows by [\u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003e#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.0] - 2025-03-25\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFeature\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for python 3.13\u003c/li\u003e\n\u003cli\u003eEnhance \u003ccode\u003edotenv run\u003c/code\u003e, switch to \u003ccode\u003eexecvpe\u003c/code\u003e for better resource management and signal handling (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/523\"\u003e#523\u003c/a\u003e) by [\u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efind_dotenv\u003c/code\u003e and \u003ccode\u003eload_dotenv\u003c/code\u003e now correctly looks up at the current directory when running in debugger or pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e by [\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e])\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eMisc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8\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/theskumar/python-dotenv/commit/16e660d384b942b11879b44500afbbe021650448\"\u003e\u003ccode\u003e16e660d\u003c/code\u003e\u003c/a\u003e Bump version: 1.1.0 → 1.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/667e82f18d6e5306894c8746c46b1da2d031bd23\"\u003e\u003ccode\u003e667e82f\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/9d85edb3b8652de4601f9ad8a7a49ad9909f898a\"\u003e\u003ccode\u003e9d85edb\u003c/code\u003e\u003c/a\u003e fix(cli): issue with execvpe on Windows (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/566\"\u003e#566\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8411987b9301f716245074872afa30646e9b9eb7\"\u003e\u003ccode\u003e8411987\u003c/code\u003e\u003c/a\u003e fix: ensure find_dotenv work reliably on python 3.13 (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/01f899733de664cda0550207067eb36a1795062f\"\u003e\u003ccode\u003e01f8997\u003c/code\u003e\u003c/a\u003e docs update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/6a02ef5a1034d66338811757df07a113a1169af6\"\u003e\u003ccode\u003e6a02ef5\u003c/code\u003e\u003c/a\u003e update mkdocs -\u0026gt; mkdocstrings config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/36c6270db41e1e88be4ec21d0fb876ba0c79d363\"\u003e\u003ccode\u003e36c6270\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/2198b698c021851201261fac27884ee8db6553d5\"\u003e\u003ccode\u003e2198b69\u003c/code\u003e\u003c/a\u003e Bump version: 1.0.1 → 1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/c89fb6d41c0a25f670b34ba05f392260eaa6ccd1\"\u003e\u003ccode\u003ec89fb6d\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8dd413e84b1fb1b3368c02106aab07a533fae015\"\u003e\u003ccode\u003e8dd413e\u003c/code\u003e\u003c/a\u003e Add _is_debugger so load_dotenv will work in pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `orjson` from 3.10.16 to 3.11.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ijl/orjson/releases\"\u003eorjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared buffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI Windows aarch64/arm64 wheels.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 alpha 7.\u003c/li\u003e\n\u003cli\u003eFix incompatibility running on Python 3.13 using WASM.\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/ijl/orjson/blob/master/CHANGELOG.md\"\u003eorjson's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.3 - 2025-08-26\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1 - 2025-07-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures. This was introduced in 3.11.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 - 2025-07-15\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared\nbuffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18 - 2025-04-29\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17 - 2025-04-29\u003c/h2\u003e\n\u003ch3\u003eChanged\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/ijl/orjson/commit/aa8c946cfbe2aba29016bc9c9ddc8713cb00173b\"\u003e\u003ccode\u003eaa8c946\u003c/code\u003e\u003c/a\u003e 3.11.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2442efc125068e43bec97c26e3a6b5da8932936c\"\u003e\u003ccode\u003e2442efc\u003c/code\u003e\u003c/a\u003e Fix PyPI project metadata when using maturin 1.9.2 or later\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/ba760146e7bc407d729436d8dbcb9e1495c83773\"\u003e\u003ccode\u003eba76014\u003c/code\u003e\u003c/a\u003e 3.11.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/49315905a4f071f2279b6df87125ca94780b5173\"\u003e\u003ccode\u003e4931590\u003c/code\u003e\u003c/a\u003e CPython compatibility misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/3de9324511a704ffbe13a94221c8f05062bf71e8\"\u003e\u003ccode\u003e3de9324\u003c/code\u003e\u003c/a\u003e MSRV 1.85, edition 2024, stdarch_x86_avx512 fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/d7359c9899c63570b21a200bc0f8d559eea7cd19\"\u003e\u003ccode\u003ed7359c9\u003c/code\u003e\u003c/a\u003e Remove macOS 13 CI runner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/1d3aa7af6271981907b1e0d1eeee2e07a7c49302\"\u003e\u003ccode\u003e1d3aa7a\u003c/code\u003e\u003c/a\u003e 3.11.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/11d29cb9bcd73777c554d65ba670cde2d6c8c802\"\u003e\u003ccode\u003e11d29cb\u003c/code\u003e\u003c/a\u003e 3.14 packaging misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/168391825ba415df853735a4359095a0327dcd1a\"\u003e\u003ccode\u003e1683918\u003c/code\u003e\u003c/a\u003e bytes::BufMut\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/9c33ff9df61b3b9d71527acf4fb60a735d841025\"\u003e\u003ccode\u003e9c33ff9\u003c/code\u003e\u003c/a\u003e Fix big-endian PyStr\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ijl/orjson/compare/3.10.16...3.11.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` from 2.2.3 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\u003ch2\u003ePandas 2.3.0\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.0.\nThis release includes some new features, bug fixes, and performance improvements. 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.0/whatsnew/v2.3.0.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.0 supports Python 3.10 and higher.\u003c/p\u003e\n\u003cp\u003eThe release will be available on the defaults and conda-forge channels:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install -c conda-forge pandas\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr via PyPI:\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/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.2.3...v2.3.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geoalchemy2` from 0.17.1 to 0.18.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/releases\"\u003egeoalchemy2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/538\"\u003egeoalchemy/geoalchemy2#538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/540\"\u003egeoalchemy/geoalchemy2#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCompile literal binds by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/543\"\u003egeoalchemy/geoalchemy2#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/544\"\u003egeoalchemy/geoalchemy2#544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore (mariadb): Stop converting WKB to WKT by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/545\"\u003egeoalchemy/geoalchemy2#545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker containers by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/546\"\u003egeoalchemy/geoalchemy2#546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/547\"\u003egeoalchemy/geoalchemy2#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/553\"\u003egeoalchemy/geoalchemy2#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/554\"\u003egeoalchemy/geoalchemy2#554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Improve readbility of benchmark results by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/556\"\u003egeoalchemy/geoalchemy2#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/555\"\u003egeoalchemy/geoalchemy2#555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/557\"\u003egeoalchemy/geoalchemy2#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Remove warning message from MySQL/MariaDB reflection by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/560\"\u003egeoalchemy/geoalchemy2#560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/561\"\u003egeoalchemy/geoalchemy2#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: correct doc strings by \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/564\"\u003egeoalchemy/geoalchemy2#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.0 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/565\"\u003egeoalchemy/geoalchemy2#565\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/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.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/geoalchemy/geoalchemy2/blob/master/CHANGES.txt\"\u003egeoalchemy2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Fix doc strings for cache enabled - \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e(papacodebear/master) Fix: Remove warning from MySQL/MariaDB reflection \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Improve readability of benchmark results \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/547\"\u003e#547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker container \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/546\"\u003e#546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf (mariadb): Stop converting WKB to WKT \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/545\"\u003e#545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/544\"\u003e#544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Compile literal binds properly \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/540\"\u003e#540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/538\"\u003e#538\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/geoalchemy/geoalchemy2/commit/60767082df9f4587fadd56ab94847ebc39df8295\"\u003e\u003ccode\u003e6076708\u003c/code\u003e\u003c/a\u003e Release: 0.18.0 (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/565\"\u003e#565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/e13112177bdf79cae0d72a6e89d815dc272e3dc5\"\u003e\u003ccode\u003ee131121\u003c/code\u003e\u003c/a\u003e Feat: Add support of spatial indexes for Raster type for PostgreSQL (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/0b432086a0c3b8ab160c5cc1864aa65e02f35362\"\u003e\u003ccode\u003e0b43208\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/8791b2eec013f21f599ca060d9fee4aba72ec2a1\"\u003e\u003ccode\u003e8791b2e\u003c/code\u003e\u003c/a\u003e Docs: Fix doc strings for cache enabled (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/d3c1d04c8b462c61132403e44a7a4f04a487c142\"\u003e\u003ccode\u003ed3c1d04\u003c/code\u003e\u003c/a\u003e Chore: Move reflection type registering (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/24dc5d05d97fb9a2a57103c1823a58f06940a5e8\"\u003e\u003ccode\u003e24dc5d0\u003c/code\u003e\u003c/a\u003e Fix: Remove warning from MySQL/MariaDB reflection (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/71f7914d4ddf7d9c46c772e36a8463e20901966a\"\u003e\u003ccode\u003e71f7914\u003c/code\u003e\u003c/a\u003e Feat: Handle computed columns (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/c139cdbca62019d92d18f12429706732777c38e2\"\u003e\u003ccode\u003ec139cdb\u003c/code\u003e\u003c/a\u003e Perf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/2e94baa4f3ac23e0160ed841d4efe7ceb3fa2378\"\u003e\u003ccode\u003e2e94baa\u003c/code\u003e\u003c/a\u003e Test: Improve readbility of benchmark results (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/84292bc352ab7ff1102a0529772d32afb0309616\"\u003e\u003ccode\u003e84292bc\u003c/code\u003e\u003c/a\u003e Chore: Create FUNDING.yml (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gql` from 3.5.2 to 4.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/graphql-python/gql/releases\"\u003egql's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eChange transports prototype using GraphQLRequest (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/551\"\u003e#551\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUsing GraphQLRequest instead of DocumentNode for gql, execute, subscribe methods (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/556\"\u003e#556\u003c/a\u003e):\n\u003cstrong\u003eThis is a big change:\u003c/strong\u003e\n\u003cul\u003e\n\u003cli\u003ethe \u003ccode\u003egql\u003c/code\u003e and \u003ccode\u003edsl_gql\u003c/code\u003e methods will now return a \u003ccode\u003eGraphQLRequest\u003c/code\u003e instead of a \u003ccode\u003eDocument\u003c/code\u003e Node\na \u003ccode\u003eGraphQLRequest\u003c/code\u003e is an object containing the document and optional \u003ccode\u003evariable_values\u003c/code\u003e and \u003ccode\u003eoperation_name\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eALL the \u003ccode\u003eexecute\u003c/code\u003e and \u003ccode\u003esubscribe\u003c/code\u003e methods now receive a \u003ccode\u003eGraphQLRequest\u003c/code\u003e as main argument instead of\na \u003ccode\u003eDocumentNode\u003c/code\u003e, \u003ccode\u003evariable_values\u003c/code\u003e and \u003ccode\u003eoperation_name\u003c/code\u003e arguments\u003c/li\u003e\n\u003cli\u003eThe old method of sending \u003ccode\u003evariable_values\u003c/code\u003e as an argument of \u003ccode\u003eexecute\u003c/code\u003e or \u003ccode\u003esubscribe\u003c/code\u003e still works but is deprecated\nSee \u003ca href=\"https://gql.readthedocs.io/en/latest/usage/variables.html\"\u003ehttps://gql.readthedocs.io/en/latest/usage/variables.html\u003c/a\u003e for the new syntax.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix subscription task cancel exception swallow (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/548\"\u003e#548\u003c/a\u003e):\nPreviously if a task was cancelled while a subscription task was active,\nthe \u003ccode\u003easyncio.CancelledError\u003c/code\u003e Exception would be swallowed by our code.\nThis is not the case anymore so you should now trap that Exception yourself.\u003c/li\u003e\n\u003cli\u003eClean up the file upload interface with FileVar class (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/549\"\u003e#549\u003c/a\u003e):\nThe file upload functionality has been modified to require \u003ccode\u003eFileVar\u003c/code\u003e instances\nfor uploaded files (the old method still works but is deprecated).\nSee \u003ca href=\"https://gql.readthedocs.io/en/latest/usage/file_upload.html\"\u003ehttps://gql.readthedocs.io/en/latest/usage/file_upload.html\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSet logging level to DEBUG for all transports (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/552\"\u003e#552\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eintrospection now requests deprecated input fields by default (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/553\"\u003e#553\u003c/a\u003e)\nNote that some backends might not support this and return \u003ccode\u003eUnknown argument includeDeprecated\u003c/code\u003e. See \u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/564\"\u003e#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTrapping dependencies Exceptions into TransportConnectionFailed (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/558\"\u003e#558\u003c/a\u003e):\nNow gql will trap Exceptions raised by dependencies when executing a request and will\nencapsulate that Exception into the \u003ccode\u003eTransportConnectionFailed\u003c/code\u003e Exception\u003c/li\u003e\n\u003cli\u003eSet \u003cstrong\u003essl=True\u003c/strong\u003e by default for AIOHTTPTransport (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/538\"\u003e#538\u003c/a\u003e) (issue \u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/529\"\u003e#529\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eTransportConnectionClosed\u003c/code\u003e Exception replacing \u003ccode\u003eConnectionClosed\u003c/code\u003e Exception (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/536\"\u003e#536\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ewebsocket\u003c/code\u003e attribute removed from transport, now using \u003ccode\u003e_connected\u003c/code\u003e instead (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/536\"\u003e#536\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade lastest websockets and Exceptions overhaul (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cp\u003eBatching requests is now fully supported, on sync or async transports, with automatic batching:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImplementation of execute_batch for async transports (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/550\"\u003e#550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImplementation of automatic batching for async (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://gql.readthedocs.io/en/latest/advanced/batching_requests.html\"\u003ehttps://gql.readthedocs.io/en/latest/advanced/batching_requests.html\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFi...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1324","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1324","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1324/packages"}},{"old_version":"47.0.0","new_version":"49.0.0","update_type":"major","path":null,"pr_created_at":"2025-09-02T17:15:55.000Z","version_change":"47.0.0 → 49.0.0","issue":{"uuid":"2793423565","node_id":"PR_kwDOKF4tPs6mgELN","number":2420,"state":"closed","title":"Build: Bump datafusion from 47.0.0 to 49.0.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-09-02T17:55:54.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-02T17:15:55.000Z","updated_at":"2025-09-02T17:55:54.000Z","time_to_close":2399,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Build: Bump","packages":[{"name":"datafusion","old_version":"47.0.0","new_version":"49.0.0","repository_url":"https://github.com/apache/datafusion-python"}],"path":null,"ecosystem":"pip"},"body":"Bumps [datafusion](https://github.com/apache/datafusion-python) from 47.0.0 to 49.0.0.\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/97a6ac392d6d5b46b97cc1ea1bc60c4351c878f7\"\u003e\u003ccode\u003e97a6ac3\u003c/code\u003e\u003c/a\u003e Bump version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/22c63812d03b1f228c2ab2636901a55216aaec3e\"\u003e\u003ccode\u003e22c6381\u003c/code\u003e\u003c/a\u003e Update cargo lock file and changelog for release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/d6d6ea69a7bcc80ebf025ee8778df12ecbf874c5\"\u003e\u003ccode\u003ed6d6ea6\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1204\"\u003e#1204\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/cb29176f61dbff5c0464ca16ed0f47f7b2edb12a\"\u003e\u003ccode\u003ecb29176\u003c/code\u003e\u003c/a\u003e build(deps): bump url from 2.5.4 to 2.5.7 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/b5536435bf75d6c0e2fb5ee07874d88bafef7746\"\u003e\u003ccode\u003eb553643\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1201\"\u003e#1201\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/0806ce52e4bd0086a96465206ff51319746c53c2\"\u003e\u003ccode\u003e0806ce5\u003c/code\u003e\u003c/a\u003e fix(build): Include build.rs in published crates (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1199\"\u003e#1199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/1ba8807cfd3ea878dbd866554a547da7148e2d4e\"\u003e\u003ccode\u003e1ba8807\u003c/code\u003e\u003c/a\u003e Improve \u003ccode\u003eshow()\u003c/code\u003e output for empty DataFrames (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1208\"\u003e#1208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/e28256cb935b6124373a3799f9e1f2e1c9c90a28\"\u003e\u003ccode\u003ee28256c\u003c/code\u003e\u003c/a\u003e suggestions (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1183\"\u003e#1183\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/589258533b796dd24a8ca56bbd0a0e7ed3ea05cc\"\u003e\u003ccode\u003e5892585\u003c/code\u003e\u003c/a\u003e Allow users to pass a single expression instead of a list of expressions for ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/f94794122f2d98797245ce6d9a3a441ef458f3af\"\u003e\u003ccode\u003ef947941\u003c/code\u003e\u003c/a\u003e build(deps): bump slab from 0.4.10 to 0.4.11 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1205\"\u003e#1205\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/datafusion-python/compare/47.0.0...49.0.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=datafusion\u0026package-manager=pip\u0026previous-version=47.0.0\u0026new-version=49.0.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/apache/iceberg-python/pull/2420","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Ficeberg-python/issues/2420","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2420/packages"}},{"old_version":"47.0.0","new_version":"49.0.0","update_type":"major","path":null,"pr_created_at":"2025-09-02T15:22:18.000Z","version_change":"47.0.0 → 49.0.0","issue":{"uuid":"2793081742","node_id":"PR_kwDOHTdvBs6mewuO","number":1309,"state":"open","title":"deps(ibis): bump the all group across 1 directory with 27 updates","user":"dependabot[bot]","labels":["ibis","dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-02T15:22:18.000Z","updated_at":"2025-09-02T15:22:20.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(ibis): bump","group_name":"all","update_count":27,"packages":[{"name":"pydantic","old_version":"2.10.6","new_version":"2.11.7","repository_url":"https://github.com/pydantic/pydantic"},{"name":"google-auth","old_version":"2.38.0","new_version":"2.40.3","repository_url":"https://github.com/googleapis/google-auth-library-python"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"orjson","old_version":"3.10.16","new_version":"3.11.3","repository_url":"https://github.com/ijl/orjson"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.2","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"geopandas","old_version":"1.1.0","new_version":"1.1.1","repository_url":"https://github.com/geopandas/geopandas"},{"name":"geoalchemy2","old_version":"0.17.1","new_version":"0.18.0","repository_url":"https://github.com/geoalchemy/geoalchemy2"},{"name":"gql","old_version":"3.5.2","new_version":"4.0.0","repository_url":"https://github.com/graphql-python/gql"},{"name":"anyio","old_version":"4.9.0","new_version":"4.10.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"duckdb","old_version":"1.2.1","new_version":"1.3.2","repository_url":"https://github.com/duckdb/duckdb"},{"name":"opendal","old_version":"0.45.20","new_version":"0.46.0","repository_url":"https://github.com/apache/opendal"},{"name":"oracledb","old_version":"3.0.0","new_version":"3.3.0","repository_url":"https://github.com/oracle/python-oracledb"},{"name":"uvicorn","old_version":"0.34.3","new_version":"0.35.0","repository_url":"https://github.com/encode/uvicorn"},{"name":"redshift-connector","old_version":"2.1.7","new_version":"2.1.8","repository_url":"https://github.com/aws/amazon-redshift-python-driver"},{"name":"datafusion","old_version":"47.0.0","new_version":"49.0.0","repository_url":"https://github.com/apache/datafusion-python"},{"name":"jupyterlab","old_version":"4.4.4","new_version":"4.4.6","repository_url":"https://github.com/jupyterlab/jupyterlab"},{"name":"ipykernel","old_version":"6.29.5","new_version":"6.30.1","repository_url":"https://github.com/ipython/ipykernel"},{"name":"matplotlib","old_version":"3.10.3","new_version":"3.10.6","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"plotly","old_version":"6.2.0","new_version":"6.3.0","repository_url":"https://github.com/plotly/plotly.py"},{"name":"pytest","old_version":"8.3.5","new_version":"8.4.1","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"testcontainers","old_version":"4.9.2","new_version":"4.12.0","repository_url":"https://github.com/testcontainers/testcontainers-python"},{"name":"sqlalchemy","old_version":"2.0.39","new_version":"2.0.43","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"ruff","old_version":"0.11.2","new_version":"0.12.11","repository_url":"https://github.com/astral-sh/ruff"},{"name":"trino","old_version":"0.334.0","new_version":"0.336.0","repository_url":"https://github.com/trinodb/trino-python-client"},{"name":"clickhouse-connect","old_version":"0.8.15","new_version":"0.8.18","repository_url":"https://github.com/ClickHouse/clickhouse-connect"},{"name":"polars","old_version":"1.32.3","new_version":"1.33.0","repository_url":"https://github.com/pola-rs/polars"}],"path":null,"ecosystem":"pip"},"body":"Bumps the all group with 27 updates in the /ibis-server directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.10.6` | `2.11.7` |\n| [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.38.0` | `2.40.3` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.1.1` |\n| [orjson](https://github.com/ijl/orjson) | `3.10.16` | `3.11.3` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.2` |\n| [geopandas](https://github.com/geopandas/geopandas) | `1.1.0` | `1.1.1` |\n| [geoalchemy2](https://github.com/geoalchemy/geoalchemy2) | `0.17.1` | `0.18.0` |\n| [gql](https://github.com/graphql-python/gql) | `3.5.2` | `4.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.9.0` | `4.10.0` |\n| [duckdb](https://github.com/duckdb/duckdb) | `1.2.1` | `1.3.2` |\n| [opendal](https://github.com/apache/opendal) | `0.45.20` | `0.46.0` |\n| [oracledb](https://github.com/oracle/python-oracledb) | `3.0.0` | `3.3.0` |\n| [uvicorn](https://github.com/encode/uvicorn) | `0.34.3` | `0.35.0` |\n| [redshift-connector](https://github.com/aws/amazon-redshift-python-driver) | `2.1.7` | `2.1.8` |\n| [datafusion](https://github.com/apache/datafusion-python) | `47.0.0` | `49.0.0` |\n| [jupyterlab](https://github.com/jupyterlab/jupyterlab) | `4.4.4` | `4.4.6` |\n| [ipykernel](https://github.com/ipython/ipykernel) | `6.29.5` | `6.30.1` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.10.3` | `3.10.6` |\n| [plotly](https://github.com/plotly/plotly.py) | `6.2.0` | `6.3.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `8.4.1` |\n| [testcontainers](https://github.com/testcontainers/testcontainers-python) | `4.9.2` | `4.12.0` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.39` | `2.0.43` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.3.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.2` | `0.12.11` |\n| [trino](https://github.com/trinodb/trino-python-client) | `0.334.0` | `0.336.0` |\n| [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) | `0.8.15` | `0.8.18` |\n| [polars](https://github.com/pola-rs/polars) | `1.32.3` | `1.33.0` |\n\n\nUpdates `pydantic` from 2.10.6 to 2.11.7\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.11.7 2025-06-14\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCopy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build 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/11980\"\u003epydantic/pydantic#11980\u003c/a\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.6...v2.11.7\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.6...v2.11.7\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.6 2025-06-13\u003c/h2\u003e\n\u003ch2\u003ev2.11.6 (2025-06-13)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRebuild dataclass fields before 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/11949\"\u003e#11949\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlways store the original field assignment on \u003ccode\u003eFieldInfo\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/11946\"\u003e#11946\u003c/a\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.5...v2.11.6\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.5...v2.11.6\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.5 2025-05-22\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCheck if \u003ccode\u003eFieldInfo\u003c/code\u003e is complete after applying type variable map 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/11855\"\u003e#11855\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not delete mock validator/serializer in \u003ccode\u003emodel_rebuild()\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/11890\"\u003e#11890\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not duplicate metadata on model rebuild 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/11902\"\u003e#11902\u003c/a\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.4...v2.11.5\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.4...v2.11.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.4 2025-04-29\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003ePackaging\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBump \u003ccode\u003emkdocs-llmstxt\u003c/code\u003e to v0.2.0 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/11725\"\u003e#11725\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eChanges\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow config and bases to be specified together in \u003ccode\u003ecreate_model()\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/11714\"\u003e#11714\u003c/a\u003e.\nThis change was backported as it was previously possible (although not meant to be supported)\nto provide \u003ccode\u003emodel_config\u003c/code\u003e as a field, which would make it possible to provide both configuration\nand bases.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eFixes\u003c/h4\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.11.7 (2025-06-14)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.7\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCopy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build 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/11898\"\u003e#11898\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.6 (2025-06-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.6\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eRebuild dataclass fields before 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/11949\"\u003e#11949\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlways store the original field assignment on \u003ccode\u003eFieldInfo\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/11946\"\u003e#11946\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.5 (2025-05-22)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eCheck if \u003ccode\u003eFieldInfo\u003c/code\u003e is complete after applying type variable map 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/11855\"\u003e#11855\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not delete mock validator/serializer in \u003ccode\u003emodel_rebuild()\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/11890\"\u003e#11890\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not duplicate metadata on model rebuild 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/11902\"\u003e#11902\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.4 (2025-04-29)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.4\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003ePackaging\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBump \u003ccode\u003emkdocs-llmstxt\u003c/code\u003e to v0.2.0 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/11725\"\u003e#11725\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eChanges\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow config and bases to be specified together in \u003ccode\u003ecreate_model()\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/11714\"\u003e#11714\u003c/a\u003e.\nThis change was backported as it was previously possible (although not meant to be supported)\nto provide \u003ccode\u003emodel_config\u003c/code\u003e as a field, which would make it possible to provide both configuration\nand bases.\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/pydantic/pydantic/commit/5f033e46c54fea1b59b6894d6527daf49475e690\"\u003e\u003ccode\u003e5f033e4\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c3368b83c411f421a7322959bc29f3bea4bd252a\"\u003e\u003ccode\u003ec3368b8\u003c/code\u003e\u003c/a\u003e Copy \u003ccode\u003eFieldInfo\u003c/code\u003e instance if necessary during \u003ccode\u003eFieldInfo\u003c/code\u003e build (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/11980\"\u003e#11980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/3987b23db4b31ff35e9fa15c21c0c1d1c9808838\"\u003e\u003ccode\u003e3987b23\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/dc7a9d20bee55a3a6e7397ee46abfcd9057b627b\"\u003e\u003ccode\u003edc7a9d2\u003c/code\u003e\u003c/a\u003e Always store the original field assignment on \u003ccode\u003eFieldInfo\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/c284c279a5b8c95d32ab5ec31d2511b3b27bfa87\"\u003e\u003ccode\u003ec284c27\u003c/code\u003e\u003c/a\u003e Rebuild dataclass fields before schema generation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/5e6d1dc71fe9bd832635cb2e9b4af92286fd00b8\"\u003e\u003ccode\u003e5e6d1dc\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/1b63218c42b515bd1f6b0dd323190236ead14bdb\"\u003e\u003ccode\u003e1b63218\u003c/code\u003e\u003c/a\u003e Do not duplicate metadata on model rebuild (\u003ca href=\"https://redirect.github.com/pydantic/pydantic/issues/11902\"\u003e#11902\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/5aefad873b3dfd60c419bd081ffaf0ac197c7b60\"\u003e\u003ccode\u003e5aefad8\u003c/code\u003e\u003c/a\u003e Do not delete mock validator/serializer in \u003ccode\u003emodel_rebuild()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/8fbe6585f4d6179e5234ab61de00059c52e57975\"\u003e\u003ccode\u003e8fbe658\u003c/code\u003e\u003c/a\u003e Check if \u003ccode\u003eFieldInfo\u003c/code\u003e is complete after applying type variable map\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/12b371a0f7f800bf65daa3eaada1b4348348d9c4\"\u003e\u003ccode\u003e12b371a\u003c/code\u003e\u003c/a\u003e Update documentation about \u003ccode\u003e@dataclass_transform\u003c/code\u003e support\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.10.6...v2.11.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `google-auth` from 2.38.0 to 2.40.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-auth-library-python/releases\"\u003egoogle-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.40.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable logging response body for async logs (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1756\"\u003e#1756\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2f0ddfeb9f6c726c68beebd7eefd32c86f7f0963\"\u003e2f0ddfe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.40.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.39.0...v2.40.0\"\u003e2.40.0\u003c/a\u003e (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd request response logging to auth (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1678\"\u003e#1678\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/77ad53eb00c74b3badc486c8207a16dbc49f37e5\"\u003e77ad53e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrect webauthn JSON parsing to be compliant with standard. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1658\"\u003e#1658\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0c5ef364fb13ca9d7d17100166de87732d752de8\"\u003e0c5ef36\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.39.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.39.0\"\u003e2.39.0\u003c/a\u003e (2025-04-14)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds GA support for X.509 workload identity federation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1695\"\u003e#1695\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/74959605400f9a1976bbdc52c029943b634eb553\"\u003e7495960\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\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/googleapis/google-auth-library-python/blob/main/CHANGELOG.md\"\u003egoogle-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.2...v2.40.3\"\u003e2.40.3\u003c/a\u003e (2025-06-04)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAuth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e88891cc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e7c61c7d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRetry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e554f967\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.1...v2.40.2\"\u003e2.40.2\u003c/a\u003e (2025-05-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove sync response logs in AuthorizedSession (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e97ed1c8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e44e38b6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.40.0...v2.40.1\"\u003e2.40.1\u003c/a\u003e (2025-05-06)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable logging response body for async logs (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1756\"\u003e#1756\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/2f0ddfeb9f6c726c68beebd7eefd32c86f7f0963\"\u003e2f0ddfe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.39.0...v2.40.0\"\u003e2.40.0\u003c/a\u003e (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd request response logging to auth (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1678\"\u003e#1678\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/77ad53eb00c74b3badc486c8207a16dbc49f37e5\"\u003e77ad53e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrect webauthn JSON parsing to be compliant with standard. (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1658\"\u003e#1658\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0c5ef364fb13ca9d7d17100166de87732d752de8\"\u003e0c5ef36\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.39.0\"\u003e2.39.0\u003c/a\u003e (2025-04-14)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds GA support for X.509 workload identity federation (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1695\"\u003e#1695\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/74959605400f9a1976bbdc52c029943b634eb553\"\u003e7495960\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd impersonated SA via local ADC support for fetch_id_token (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1740\"\u003e#1740\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/f24976452d741de6a49d9b7a85cdab47812f5312\"\u003ef249764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd missing packaging dependency for feature requiring urllib3 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1732\"\u003e#1732\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/221f4a82fa25c1ad453b85bc8b7f2fc304724879\"\u003e221f4a8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd request timeout for MDS requests (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1699\"\u003e#1699\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/9f7d3fa92c0e656a1c970182833abe2d0d3ad3ee\"\u003e9f7d3fa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExplicitly declare support for Python 3.13 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1741\"\u003e#1741\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/6fd04d57df90866f24b554c489f8f2653467d70e\"\u003e6fd04d5\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/googleapis/google-auth-library-python/commit/ca94ead4035beea4741dc5384449032f8e6f75d8\"\u003e\u003ccode\u003eca94ead\u003c/code\u003e\u003c/a\u003e chore(main): release 2.40.3 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1768\"\u003e#1768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/88891cc596640b0bb3a2891532e2d32f2c9f0ec3\"\u003e\u003ccode\u003e88891cc\u003c/code\u003e\u003c/a\u003e fix: auth fetch token from default endpoint (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1779\"\u003e#1779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/0be91e2f795c989a592cb9c7828a1c53d8107165\"\u003e\u003ccode\u003e0be91e2\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;fix: remove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/25660bc57569b3f3e9a1f664516d10f4bc8744b8\"\u003e\u003ccode\u003e25660bc\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1774\"\u003e#1774\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/7c61c7d0a42ceec3eab693065745a74f524acab0\"\u003e\u003ccode\u003e7c61c7d\u003c/code\u003e\u003c/a\u003e fix: remove unnecessary call to mds service (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1769\"\u003e#1769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/554f967620da2b02e5d44ac7463dcc2407ace5dd\"\u003e\u003ccode\u003e554f967\u003c/code\u003e\u003c/a\u003e fix: retry 504 errors (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1767\"\u003e#1767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/6845065aca69d5130eec40fbe052f56c36860bf7\"\u003e\u003ccode\u003e6845065\u003c/code\u003e\u003c/a\u003e chore(main): release 2.40.2 (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1766\"\u003e#1766\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/44e38b60002f9dbd524b1fe82fa8d4295afc68bc\"\u003e\u003ccode\u003e44e38b6\u003c/code\u003e\u003c/a\u003e fix: Update test to consider new error message from cryptography (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1765\"\u003e#1765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/97ed1c8ef1a797af26c5639b618aa26360e9d868\"\u003e\u003ccode\u003e97ed1c8\u003c/code\u003e\u003c/a\u003e chore: remove sync response logs in AuthorizedSession (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1761\"\u003e#1761\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-auth-library-python/commit/13a897ea05feff6a2267f700a53b50e9741919a0\"\u003e\u003ccode\u003e13a897e\u003c/code\u003e\u003c/a\u003e chore: update secret (\u003ca href=\"https://redirect.github.com/googleapis/google-auth-library-python/issues/1764\"\u003e#1764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-auth-library-python/compare/v2.38.0...v2.40.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.0.1 to 1.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: ensure find_dotenv work reliably on python 3.13 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003etheskumar/python-dotenv#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cli): issue with execvpe on Windows by \u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\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/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003etheskumar/python-dotenv#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a security policy by \u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/512\"\u003etheskumar/python-dotenv#512\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep GitHub Actions up to date with GitHub's Dependabot by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/506\"\u003etheskumar/python-dotenv#506\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: fix multiline string in test.yml \u0026amp; use fail-fast strategy by \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/514\"\u003etheskumar/python-dotenv#514\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnhance dotenv run: Switch to execvpe for better resource management and signal handling by \u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add py3.13 to test.yml by \u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 trove classifier by \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the github-actions group with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for python 3.13 and drop 3.8 by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/551\"\u003etheskumar/python-dotenv#551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update README.md by \u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSome more s/Python-dotenv/python-dotenv/ by \u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/552\"\u003etheskumar/python-dotenv#552\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd _is_debugger so load_dotenv will work in pdb by \u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/553\"\u003etheskumar/python-dotenv#553\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/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/523\"\u003etheskumar/python-dotenv#523\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/waketzheng\"\u003e\u003ccode\u003e@​waketzheng\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/527\"\u003etheskumar/python-dotenv#527\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/535\"\u003etheskumar/python-dotenv#535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/529\"\u003etheskumar/python-dotenv#529\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/chapeupreto\"\u003e\u003ccode\u003e@​chapeupreto\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/516\"\u003etheskumar/python-dotenv#516\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/553\"\u003etheskumar/python-dotenv#553\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.0\"\u003ehttps://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.1.1] - 2025-06-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCLI: Ensure \u003ccode\u003efind_dotenv\u003c/code\u003e work reliably on python 3.13 by [\u003ca href=\"https://github.com/theskumar\"\u003e\u003ccode\u003e@​theskumar\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/563\"\u003e#563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCLI: revert the use of execvpe on Windows by [\u003ca href=\"https://github.com/wrongontheinternet\"\u003e\u003ccode\u003e@​wrongontheinternet\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/pull/566\"\u003e#566\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[1.1.0] - 2025-03-25\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFeature\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for python 3.13\u003c/li\u003e\n\u003cli\u003eEnhance \u003ccode\u003edotenv run\u003c/code\u003e, switch to \u003ccode\u003eexecvpe\u003c/code\u003e for better resource management and signal handling (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/523\"\u003e#523\u003c/a\u003e) by [\u003ca href=\"https://github.com/eekstunt\"\u003e\u003ccode\u003e@​eekstunt\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFixed\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efind_dotenv\u003c/code\u003e and \u003ccode\u003eload_dotenv\u003c/code\u003e now correctly looks up at the current directory when running in debugger or pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e by [\u003ca href=\"https://github.com/randomseed42\"\u003e\u003ccode\u003e@​randomseed42\u003c/code\u003e\u003c/a\u003e])\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eMisc\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8\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/theskumar/python-dotenv/commit/16e660d384b942b11879b44500afbbe021650448\"\u003e\u003ccode\u003e16e660d\u003c/code\u003e\u003c/a\u003e Bump version: 1.1.0 → 1.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/667e82f18d6e5306894c8746c46b1da2d031bd23\"\u003e\u003ccode\u003e667e82f\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/9d85edb3b8652de4601f9ad8a7a49ad9909f898a\"\u003e\u003ccode\u003e9d85edb\u003c/code\u003e\u003c/a\u003e fix(cli): issue with execvpe on Windows (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/566\"\u003e#566\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8411987b9301f716245074872afa30646e9b9eb7\"\u003e\u003ccode\u003e8411987\u003c/code\u003e\u003c/a\u003e fix: ensure find_dotenv work reliably on python 3.13 (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/01f899733de664cda0550207067eb36a1795062f\"\u003e\u003ccode\u003e01f8997\u003c/code\u003e\u003c/a\u003e docs update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/6a02ef5a1034d66338811757df07a113a1169af6\"\u003e\u003ccode\u003e6a02ef5\u003c/code\u003e\u003c/a\u003e update mkdocs -\u0026gt; mkdocstrings config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/36c6270db41e1e88be4ec21d0fb876ba0c79d363\"\u003e\u003ccode\u003e36c6270\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/2198b698c021851201261fac27884ee8db6553d5\"\u003e\u003ccode\u003e2198b69\u003c/code\u003e\u003c/a\u003e Bump version: 1.0.1 → 1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/c89fb6d41c0a25f670b34ba05f392260eaa6ccd1\"\u003e\u003ccode\u003ec89fb6d\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8dd413e84b1fb1b3368c02106aab07a533fae015\"\u003e\u003ccode\u003e8dd413e\u003c/code\u003e\u003c/a\u003e Add _is_debugger so load_dotenv will work in pdb (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `orjson` from 3.10.16 to 3.11.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ijl/orjson/releases\"\u003eorjson's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared buffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI Windows aarch64/arm64 wheels.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 alpha 7.\u003c/li\u003e\n\u003cli\u003eFix incompatibility running on Python 3.13 using WASM.\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/ijl/orjson/blob/master/CHANGELOG.md\"\u003eorjson's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.3 - 2025-08-26\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix PyPI project metadata when using maturin 1.9.2 or later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.2 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix build using Rust 1.89 on amd64.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild now depends on Rust 1.85 or later instead of 1.82.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.1 - 2025-07-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePublish PyPI wheels for CPython 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003estr\u003c/code\u003e on big-endian architectures. This was introduced in 3.11.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 - 2025-07-15\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a deserialization buffer allocated per request instead of a shared\nbuffer allocated on import.\u003c/li\u003e\n\u003cli\u003eABI compatibility with CPython 3.14 beta 4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.18 - 2025-04-29\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect escaping of the vertical tabulation character. This was\nintroduced in 3.10.17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.17 - 2025-04-29\u003c/h2\u003e\n\u003ch3\u003eChanged\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/ijl/orjson/commit/aa8c946cfbe2aba29016bc9c9ddc8713cb00173b\"\u003e\u003ccode\u003eaa8c946\u003c/code\u003e\u003c/a\u003e 3.11.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/2442efc125068e43bec97c26e3a6b5da8932936c\"\u003e\u003ccode\u003e2442efc\u003c/code\u003e\u003c/a\u003e Fix PyPI project metadata when using maturin 1.9.2 or later\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/ba760146e7bc407d729436d8dbcb9e1495c83773\"\u003e\u003ccode\u003eba76014\u003c/code\u003e\u003c/a\u003e 3.11.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/49315905a4f071f2279b6df87125ca94780b5173\"\u003e\u003ccode\u003e4931590\u003c/code\u003e\u003c/a\u003e CPython compatibility misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/3de9324511a704ffbe13a94221c8f05062bf71e8\"\u003e\u003ccode\u003e3de9324\u003c/code\u003e\u003c/a\u003e MSRV 1.85, edition 2024, stdarch_x86_avx512 fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/d7359c9899c63570b21a200bc0f8d559eea7cd19\"\u003e\u003ccode\u003ed7359c9\u003c/code\u003e\u003c/a\u003e Remove macOS 13 CI runner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/1d3aa7af6271981907b1e0d1eeee2e07a7c49302\"\u003e\u003ccode\u003e1d3aa7a\u003c/code\u003e\u003c/a\u003e 3.11.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/11d29cb9bcd73777c554d65ba670cde2d6c8c802\"\u003e\u003ccode\u003e11d29cb\u003c/code\u003e\u003c/a\u003e 3.14 packaging misc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/168391825ba415df853735a4359095a0327dcd1a\"\u003e\u003ccode\u003e1683918\u003c/code\u003e\u003c/a\u003e bytes::BufMut\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ijl/orjson/commit/9c33ff9df61b3b9d71527acf4fb60a735d841025\"\u003e\u003ccode\u003e9c33ff9\u003c/code\u003e\u003c/a\u003e Fix big-endian PyStr\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ijl/orjson/compare/3.10.16...3.11.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` from 2.2.3 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\u003ch2\u003ePandas 2.3.0\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.0.\nThis release includes some new features, bug fixes, and performance improvements. 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.0/whatsnew/v2.3.0.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.0 supports Python 3.10 and higher.\u003c/p\u003e\n\u003cp\u003eThe release will be available on the defaults and conda-forge channels:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install -c conda-forge pandas\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr via PyPI:\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/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.2.3...v2.3.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geopandas` from 1.1.0 to 1.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geopandas/geopandas/releases\"\u003egeopandas's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003cp\u003eA patch release containing minor regression fixes.\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eREGR: fix GeoDataFrame constructor when np.nan given as only geometry by \u003ca href=\"https://github.com/martinfleis\"\u003e\u003ccode\u003e@​martinfleis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geopandas/geopandas/pull/3591\"\u003egeopandas/geopandas#3591\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eREGR: overlay with identity doesn't handle equal input column names correctly by \u003ca href=\"https://github.com/theroggy\"\u003e\u003ccode\u003e@​theroggy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geopandas/geopandas/pull/3596\"\u003egeopandas/geopandas#3596\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTST: use nadgrids=null to suppress influence of grid files by \u003ca href=\"https://github.com/mwtoews\"\u003e\u003ccode\u003e@​mwtoews\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geopandas/geopandas/pull/3588\"\u003egeopandas/geopandas#3588\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMAINT: enable pydocstyle ruff rules - automatic and easy fixes by \u003ca href=\"https://github.com/theroggy\"\u003e\u003ccode\u003e@​theroggy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geopandas/geopandas/pull/3598\"\u003egeopandas/geopandas#3598\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geopandas/geopandas/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/geopandas/geopandas/compare/v1.1.0...v1.1.1\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/geopandas/geopandas/blob/main/CHANGELOG.md\"\u003egeopandas's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.1.1 (June 27, 2025)\u003c/h2\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression in the GeoDataFrame constructor when np.nan is given as an only geometry (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3591\"\u003e#3591\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix regression in \u003ccode\u003eoverlay\u003c/code\u003e with \u003ccode\u003ehow=\u0026quot;identity\u0026quot;\u003c/code\u003e when input dataframes have column\nnames that are equal (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3596\"\u003e#3596\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/geopandas/geopandas/commit/e9b58ce57a238b28ebf5eddd83d437db92c314b5\"\u003e\u003ccode\u003ee9b58ce\u003c/code\u003e\u003c/a\u003e RLS: v1.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/c6bf8b318da5e4e8fde53d27b1a6481e15e54b59\"\u003e\u003ccode\u003ec6bf8b3\u003c/code\u003e\u003c/a\u003e MAINT: enable pydocstyle ruff rules - automatic and easy fixes (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3598\"\u003e#3598\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/339c7f78e92f1549bfa854ffe3bebdc03390d265\"\u003e\u003ccode\u003e339c7f7\u003c/code\u003e\u003c/a\u003e TST: use nadgrids=null to suppress influence of grid files (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3588\"\u003e#3588\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/2a7fad90d1a2af1dd8318f97831d9993164542f8\"\u003e\u003ccode\u003e2a7fad9\u003c/code\u003e\u003c/a\u003e REGR: overlay with identity doesn't handle equal input column names correctly...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/1a1585ddfba8ef229ebdfc05b1c20ef3eb1e67a7\"\u003e\u003ccode\u003e1a1585d\u003c/code\u003e\u003c/a\u003e REGR: fix GeoDataFrame constructor when np.nan given as only geometry (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3591\"\u003e#3591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/geopandas/geopandas/compare/v1.1.0...v1.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geoalchemy2` from 0.17.1 to 0.18.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/releases\"\u003egeoalchemy2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/538\"\u003egeoalchemy/geoalchemy2#538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/540\"\u003egeoalchemy/geoalchemy2#540\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCompile literal binds by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/543\"\u003egeoalchemy/geoalchemy2#543\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/544\"\u003egeoalchemy/geoalchemy2#544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore (mariadb): Stop converting WKB to WKT by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/545\"\u003egeoalchemy/geoalchemy2#545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker containers by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/546\"\u003egeoalchemy/geoalchemy2#546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/547\"\u003egeoalchemy/geoalchemy2#547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/553\"\u003egeoalchemy/geoalchemy2#553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/554\"\u003egeoalchemy/geoalchemy2#554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest: Improve readbility of benchmark results by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/556\"\u003egeoalchemy/geoalchemy2#556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/555\"\u003egeoalchemy/geoalchemy2#555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/557\"\u003egeoalchemy/geoalchemy2#557\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Remove warning message from MySQL/MariaDB reflection by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/560\"\u003egeoalchemy/geoalchemy2#560\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/561\"\u003egeoalchemy/geoalchemy2#561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: correct doc strings by \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/564\"\u003egeoalchemy/geoalchemy2#564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRelease: 0.18.0 by \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/565\"\u003egeoalchemy/geoalchemy2#565\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/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/pull/562\"\u003egeoalchemy/geoalchemy2#562\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ehttps://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.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/geoalchemy/geoalchemy2/blob/master/CHANGES.txt\"\u003egeoalchemy2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.18.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFeat: Add support of spatial indexes for Raster type for PostgreSQL \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Fix doc strings for cache enabled - \u003ca href=\"https://github.com/pjonsson\"\u003e\u003ccode\u003e@​pjonsson\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Move reflection type registering \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e(papacodebear/master) Fix: Remove warning from MySQL/MariaDB reflection \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Handle computed columns \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Improve readability of benchmark results \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChore: Create FUNDING.yml \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add more benchmarks \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTest: Add benchmark tests \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/547\"\u003e#547\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: Update doc to run the tests inside docker container \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/546\"\u003e#546\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePerf (mariadb): Stop converting WKB to WKT \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/545\"\u003e#545\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Improve Geometry initializer to make the dimension optional \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/544\"\u003e#544\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Compile literal binds properly \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFeat: Add more return types for spatial functions and update some typehints \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/540\"\u003e#540\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBuild: Deprecate Py\u0026lt;3.10 \u003ca href=\"https://github.com/adrien-berchet\"\u003e\u003ccode\u003e@​adrien-berchet\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/538\"\u003e#538\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/geoalchemy/geoalchemy2/commit/60767082df9f4587fadd56ab94847ebc39df8295\"\u003e\u003ccode\u003e6076708\u003c/code\u003e\u003c/a\u003e Release: 0.18.0 (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/565\"\u003e#565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/e13112177bdf79cae0d72a6e89d815dc272e3dc5\"\u003e\u003ccode\u003ee131121\u003c/code\u003e\u003c/a\u003e Feat: Add support of spatial indexes for Raster type for PostgreSQL (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/564\"\u003e#564\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/0b432086a0c3b8ab160c5cc1864aa65e02f35362\"\u003e\u003ccode\u003e0b43208\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/563\"\u003e#563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/8791b2eec013f21f599ca060d9fee4aba72ec2a1\"\u003e\u003ccode\u003e8791b2e\u003c/code\u003e\u003c/a\u003e Docs: Fix doc strings for cache enabled (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/562\"\u003e#562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/d3c1d04c8b462c61132403e44a7a4f04a487c142\"\u003e\u003ccode\u003ed3c1d04\u003c/code\u003e\u003c/a\u003e Chore: Move reflection type registering (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/24dc5d05d97fb9a2a57103c1823a58f06940a5e8\"\u003e\u003ccode\u003e24dc5d0\u003c/code\u003e\u003c/a\u003e Fix: Remove warning from MySQL/MariaDB reflection (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/560\"\u003e#560\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/71f7914d4ddf7d9c46c772e36a8463e20901966a\"\u003e\u003ccode\u003e71f7914\u003c/code\u003e\u003c/a\u003e Feat: Handle computed columns (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/c139cdbca62019d92d18f12429706732777c38e2\"\u003e\u003ccode\u003ec139cdb\u003c/code\u003e\u003c/a\u003e Perf: Define \u003cstrong\u003eslots\u003c/strong\u003e in element classes to reduce memory usage of elements ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/2e94baa4f3ac23e0160ed841d4efe7ceb3fa2378\"\u003e\u003ccode\u003e2e94baa\u003c/code\u003e\u003c/a\u003e Test: Improve readbility of benchmark results (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/556\"\u003e#556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geoalchemy/geoalchemy2/commit/84292bc352ab7ff1102a0529772d32afb0309616\"\u003e\u003ccode\u003e84292bc\u003c/code\u003e\u003c/a\u003e Chore: Create FUNDING.yml (\u003ca href=\"https://redirect.github.com/geoalchemy/geoalchemy2/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/geoalchemy/geoalchemy2/compare/0.17.1...0.18.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gql` from 3.5.2 to 4.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/graphql-python/gql/releases\"\u003egql's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eChange transports prototype using GraphQLRequest (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/551\"\u003e#551\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUsing GraphQLRequest instead of DocumentNode for gql, execute, subscribe methods (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/556\"\u003e#556\u003c/a\u003e):\n\u003cstrong\u003eThis is a big change:\u003c/strong\u003e\n\u003cul\u003e\n\u003cli\u003ethe \u003ccode\u003egql\u003c/code\u003e and \u003ccode\u003edsl_gql\u003c/code\u003e methods will now return a \u003ccode\u003eGraphQLRequest\u003c/code\u003e instead of a \u003ccode\u003eDocument\u003c/code\u003e Node\na \u003ccode\u003eGraphQLRequest\u003c/code\u003e is an object containing the document and optional \u003ccode\u003evariable_values\u003c/code\u003e and \u003ccode\u003eoperation_name\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eALL the \u003ccode\u003eexecute\u003c/code\u003e and \u003ccode\u003esubscribe\u003c/code\u003e methods now receive a \u003ccode\u003eGraphQLRequest\u003c/code\u003e as main argument instead of\na \u003ccode\u003eDocumentNode\u003c/code\u003e, \u003ccode\u003evariable_values\u003c/code\u003e and \u003ccode\u003eoperation_name\u003c/code\u003e arguments\u003c/li\u003e\n\u003cli\u003eThe old method of sending \u003ccode\u003evariable_values\u003c/code\u003e as an argument of \u003ccode\u003eexecute\u003c/code\u003e or \u003ccode\u003esubscribe\u003c/code\u003e still works but is deprecated\nSee \u003ca href=\"https://gql.readthedocs.io/en/latest/usage/variables.html\"\u003ehttps://gql.readthedocs.io/en/latest/usage/variables.html\u003c/a\u003e for the new syntax.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix subscription task cancel exception swallow (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/548\"\u003e#548\u003c/a\u003e):\nPreviously if a task was cancelled while a subscription task was active,\nthe \u003ccode\u003easyncio.CancelledError\u003c/code\u003e Exception would be swallowed by our code.\nThis is not the case anymore so you should now trap that Exception yourself.\u003c/li\u003e\n\u003cli\u003eClean up the file upload interface with FileVar class (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/549\"\u003e#549\u003c/a\u003e):\nThe file upload functionality has been modified to require \u003ccode\u003eFileVar\u003c/code\u003e instances\nfor uploaded files (the old method still works but is deprecated).\nSee \u003ca href=\"https://gql.readthedocs.io/en/latest/usage/file_upload.html\"\u003ehttps://gql.readthedocs.io/en/latest/usage/file_upload.html\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSet logging level to DEBUG for all transports (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/552\"\u003e#552\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eintrospection now requests deprecated input fields by default (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/553\"\u003e#553\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTrapping dependencies Exceptions into TransportConnectionFailed (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/558\"\u003e#558\u003c/a\u003e):\nNow gql will trap Exceptions raised by dependencies when executing a request and will\nencapsulate that Exception into the \u003ccode\u003eTransportConnectionFailed\u003c/code\u003e Exception\u003c/li\u003e\n\u003cli\u003eSet \u003cstrong\u003essl=True\u003c/strong\u003e by default for AIOHTTPTransport (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/538\"\u003e#538\u003c/a\u003e) (issue \u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/529\"\u003e#529\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eTransportConnectionClosed\u003c/code\u003e Exception replacing \u003ccode\u003eConnectionClosed\u003c/code\u003e Exception (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/536\"\u003e#536\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ewebsocket\u003c/code\u003e attribute removed from transport, now using \u003ccode\u003e_connected\u003c/code\u003e instead (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/536\"\u003e#536\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade lastest websockets and Exceptions overhaul (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/543\"\u003e#543\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cp\u003eBatching requests is now fully supported, on sync or async transports, with automatic batching:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImplementation of execute_batch for async transports (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/550\"\u003e#550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImplementation of automatic batching for async (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://gql.readthedocs.io/en/latest/advanced/batching_requests.html\"\u003ehttps://gql.readthedocs.io/en/latest/advanced/batching_requests.html\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix httpx test deprecated warning (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/542\"\u003e#542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRefactor websockets transports (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/536\"\u003e#536\u003c/a\u003e) :\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eRefactor WebSockets Transport with Dependency Injection Architecture\u003c/p\u003e\n\u003cp\u003eThis major architectural improvement implements dependency injection patterns across the WebSockets transport layer, creating a more modular, testable, and extensible system:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCreated abstract AdapterConnection interface in common/adapters/connection.py\u003c/li\u003e\n\u003cli\u003eImplemented concrete WebSocketsAdapter to wrap the websockets library\u003c/li\u003e\n\u003cli\u003eMoved websockets_base.py to common/base.py maintaining better structure which is independant of the websockets library used\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/graphql-python/gql/commit/059cabaadf69c3ebe94f34db5e4f5a24c918c231\"\u003e\u003ccode\u003e059caba\u003c/code\u003e\u003c/a\u003e Bump version number to 4.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-python/gql/commit/7695620579f6b3c94d69fed3fba147950fab4e5c\"\u003e\u003ccode\u003e7695620\u003c/code\u003e\u003c/a\u003e Restrict graphql-core to \u0026lt;3.3 instead of \u0026lt;3.2.7 on stable branch\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-python/gql/commit/16c76bfba8ac0ddd1e8213c8ab310eafcf32751f\"\u003e\u003ccode\u003e16c76bf\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-python/gql/commit/dba4953add92249800d8d8a92cb33dc66856a8a6\"\u003e\u003ccode\u003edba4953\u003c/code\u003e\u003c/a\u003e Documentation improvements (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/561\"\u003e#561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-python/gql/commit/a90f92322713bd75d8557b8fa79e89c1708fdcff\"\u003e\u003ccode\u003ea90f923\u003c/code\u003e\u003c/a\u003e Bump version number to 4.0.0b0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-python/gql/commit/4af703e6a0c0bbb824012a5d4c75978f53a8e25a\"\u003e\u003ccode\u003e4af703e\u003c/code\u003e\u003c/a\u003e Trapping dependencies Exceptions into TransportConnectionFailed (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/558\"\u003e#558\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-python/gql/commit/4fa1553fd5ba7c99b7176fe9eb6a18d8cc2cc5d4\"\u003e\u003ccode\u003e4fa1553\u003c/code\u003e\u003c/a\u003e Refactor transports (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/557\"\u003e#557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-python/gql/commit/b3789ef85f728e7b0dbc60e7159d9eb2cb71476a\"\u003e\u003ccode\u003eb3789ef\u003c/code\u003e\u003c/a\u003e Using GraphQLRequest instead of DocumentNode for gql, execute, subscribe meth...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-python/gql/commit/b221c0e60d7d02e8d32b8f1e4f113e86d74f1c51\"\u003e\u003ccode\u003eb221c0e\u003c/code\u003e\u003c/a\u003e Remove MIT license classifier (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/555\"\u003e#555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql-python/gql/commit/7fcb5b6f1a4f517b1f97c50f66599ea5943366e7\"\u003e\u003ccode\u003e7fcb5b6\u003c/code\u003e\u003c/a\u003e Implementation of automatic batching for async (\u003ca href=\"https://redirect.github.com/graphql-python/gql/issues/554\"\u003e#554\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/graphql-python/gql/compare/v3.5.2...v4.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `anyio` from 4.9.0 to 4.10.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/agronholm/anyio/releases\"\u003eanyio's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.10.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded the \u003ccode\u003efeed_data()\u003c/code\u003e method to the \u003ccode\u003eBufferedByteReceiveStream\u003c/code\u003e class, allowing users to inject data directly into the buffer\u003c/li\u003e\n\u003cli\u003eAdded various class methods to wrap existing sockets as listeners or socket streams:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eSocketListener.from_socket()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eSocketStream.from_socket()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUNIXSocketStream.from_socket()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUDPSocket.from_socket()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnectedUDPSocket.from_socket()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eUNIXDatagramSocket.from_socket()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eConnectedUNIXDatagramSocket.from_socket()\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eAdded a hierarchy of connectable stream classes for transparently connecting to various remote or local endpoints for exchanging bytes or objects\u003c/li\u003e\n\u003cli\u003eAdded context manager mix-in classes (\u003ccode\u003eanyio.ContextManagerMixin\u003c/code\u003e and \u003ccode\u003eanyio.AsyncContextManagerMixin\u003c/code\u003e) to help write classes that embed other context managers, particularly cancel scopes or task groups (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/905\"\u003e#905\u003c/a\u003e; PR by \u003ca href=\"https://github.com/agronholm\"\u003e\u003ccode\u003e@​agronholm\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/tapetersen\"\u003e\u003ccode\u003e@​tapetersen\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded the ability to specify the thread name in \u003ccode\u003estart_blocking_portal()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/818\"\u003e#818\u003c/a\u003e; PR by \u003ca href=\"https://github.com/davidbrochart\"\u003e\u003ccode\u003e@​davidbrochart\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eanyio.notify_closing\u003c/code\u003e to allow waking \u003ccode\u003eanyio.wait_readable\u003c/code\u003e and \u003ccode\u003eanyio.wait_writable\u003c/code\u003e before closing a socket. Among other things, this prevents an OSError on the \u003ccode\u003eProactorEventLoop\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/896\"\u003e#896\u003c/a\u003e; PR by \u003ca href=\"https://github.com/graingert\"\u003e\u003ccode\u003e@​graingert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eIncorporated several documentation improvements from the EuroPython 2025 sprint (special thanks to the sprinters: Emmanuel Okedele, Jan Murre, Euxenia Miruna Goia and Christoffer Fjord)\u003c/li\u003e\n\u003cli\u003eAdded a documentation page explaining why one might want to use AnyIO's APIs instead of asyncio's\u003c/li\u003e\n\u003cli\u003eUpdated the \u003ccode\u003eto_interpreters\u003c/code\u003e module to use the public \u003ccode\u003econcurrent.interpreters\u003c/code\u003e API on Python 3.14 or later\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eanyio.Path.copy()\u003c/code\u003e and \u003ccode\u003eanyio.Path.copy_into()\u003c/code\u003e failing on Python 3.14.0a7\u003c/li\u003e\n\u003cli\u003eFixed return annotation of \u003ccode\u003e__aexit__\u003c/code\u003e on async context managers. CMs which can suppress exceptions should return \u003ccode\u003ebool\u003c/code\u003e, or \u003ccode\u003eNone\u003c/code\u003e otherwise. (\u003ca href=\"https://redirect.github.com/agronh...\n\n_Description has been truncated_","html_url":"https://github.com/Canner/wren-engine/pull/1309","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canner%2Fwren-engine/issues/1309","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1309/packages"}},{"old_version":"46.0.0","new_version":"49.0.0","update_type":"major","path":"/python","pr_created_at":"2025-09-02T11:29:59.000Z","version_change":"46.0.0 → 49.0.0","issue":{"uuid":"2792310326","node_id":"PR_kwDOL2ZwPc6mb0Y2","number":436,"state":"open","title":"build(deps): bump datafusion from 46.0.0 to 49.0.0 in /python","user":"dependabot[bot]","labels":["python","dependencies"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-02T11:29:59.000Z","updated_at":"2025-09-02T11:30:00.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"datafusion","old_version":"46.0.0","new_version":"49.0.0","repository_url":"https://github.com/apache/datafusion-python"}],"path":"/python","ecosystem":"pip"},"body":"Bumps [datafusion](https://github.com/apache/datafusion-python) from 46.0.0 to 49.0.0.\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/97a6ac392d6d5b46b97cc1ea1bc60c4351c878f7\"\u003e\u003ccode\u003e97a6ac3\u003c/code\u003e\u003c/a\u003e Bump version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/22c63812d03b1f228c2ab2636901a55216aaec3e\"\u003e\u003ccode\u003e22c6381\u003c/code\u003e\u003c/a\u003e Update cargo lock file and changelog for release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/d6d6ea69a7bcc80ebf025ee8778df12ecbf874c5\"\u003e\u003ccode\u003ed6d6ea6\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1204\"\u003e#1204\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/cb29176f61dbff5c0464ca16ed0f47f7b2edb12a\"\u003e\u003ccode\u003ecb29176\u003c/code\u003e\u003c/a\u003e build(deps): bump url from 2.5.4 to 2.5.7 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/b5536435bf75d6c0e2fb5ee07874d88bafef7746\"\u003e\u003ccode\u003eb553643\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1201\"\u003e#1201\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/0806ce52e4bd0086a96465206ff51319746c53c2\"\u003e\u003ccode\u003e0806ce5\u003c/code\u003e\u003c/a\u003e fix(build): Include build.rs in published crates (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1199\"\u003e#1199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/1ba8807cfd3ea878dbd866554a547da7148e2d4e\"\u003e\u003ccode\u003e1ba8807\u003c/code\u003e\u003c/a\u003e Improve \u003ccode\u003eshow()\u003c/code\u003e output for empty DataFrames (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1208\"\u003e#1208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/e28256cb935b6124373a3799f9e1f2e1c9c90a28\"\u003e\u003ccode\u003ee28256c\u003c/code\u003e\u003c/a\u003e suggestions (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1183\"\u003e#1183\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/589258533b796dd24a8ca56bbd0a0e7ed3ea05cc\"\u003e\u003ccode\u003e5892585\u003c/code\u003e\u003c/a\u003e Allow users to pass a single expression instead of a list of expressions for ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/f94794122f2d98797245ce6d9a3a441ef458f3af\"\u003e\u003ccode\u003ef947941\u003c/code\u003e\u003c/a\u003e build(deps): bump slab from 0.4.10 to 0.4.11 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1205\"\u003e#1205\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/datafusion-python/compare/46.0.0...49.0.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=datafusion\u0026package-manager=pip\u0026previous-version=46.0.0\u0026new-version=49.0.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/apache/hudi-rs/pull/436","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fhudi-rs/issues/436","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/436/packages"}},{"old_version":"48.0.0","new_version":"49.0.0","update_type":"major","path":null,"pr_created_at":"2025-09-01T03:14:56.000Z","version_change":"48.0.0 → 49.0.0","issue":{"uuid":"2788382204","node_id":"PR_kwDOKa92Zs6mM1X8","number":186,"state":"open","title":"Build: Bump datafusion from 48.0.0 to 49.0.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-09-01T03:14:56.000Z","updated_at":"2025-09-01T03:14:57.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Build: Bump","packages":[{"name":"datafusion","old_version":"48.0.0","new_version":"49.0.0","repository_url":"https://github.com/apache/datafusion-python"}],"path":null,"ecosystem":"pip"},"body":"Bumps [datafusion](https://github.com/apache/datafusion-python) from 48.0.0 to 49.0.0.\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/97a6ac392d6d5b46b97cc1ea1bc60c4351c878f7\"\u003e\u003ccode\u003e97a6ac3\u003c/code\u003e\u003c/a\u003e Bump version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/22c63812d03b1f228c2ab2636901a55216aaec3e\"\u003e\u003ccode\u003e22c6381\u003c/code\u003e\u003c/a\u003e Update cargo lock file and changelog for release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/d6d6ea69a7bcc80ebf025ee8778df12ecbf874c5\"\u003e\u003ccode\u003ed6d6ea6\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1204\"\u003e#1204\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/cb29176f61dbff5c0464ca16ed0f47f7b2edb12a\"\u003e\u003ccode\u003ecb29176\u003c/code\u003e\u003c/a\u003e build(deps): bump url from 2.5.4 to 2.5.7 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/b5536435bf75d6c0e2fb5ee07874d88bafef7746\"\u003e\u003ccode\u003eb553643\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1201\"\u003e#1201\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/0806ce52e4bd0086a96465206ff51319746c53c2\"\u003e\u003ccode\u003e0806ce5\u003c/code\u003e\u003c/a\u003e fix(build): Include build.rs in published crates (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1199\"\u003e#1199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/1ba8807cfd3ea878dbd866554a547da7148e2d4e\"\u003e\u003ccode\u003e1ba8807\u003c/code\u003e\u003c/a\u003e Improve \u003ccode\u003eshow()\u003c/code\u003e output for empty DataFrames (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1208\"\u003e#1208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/e28256cb935b6124373a3799f9e1f2e1c9c90a28\"\u003e\u003ccode\u003ee28256c\u003c/code\u003e\u003c/a\u003e suggestions (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1183\"\u003e#1183\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/589258533b796dd24a8ca56bbd0a0e7ed3ea05cc\"\u003e\u003ccode\u003e5892585\u003c/code\u003e\u003c/a\u003e Allow users to pass a single expression instead of a list of expressions for ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/f94794122f2d98797245ce6d9a3a441ef458f3af\"\u003e\u003ccode\u003ef947941\u003c/code\u003e\u003c/a\u003e build(deps): bump slab from 0.4.10 to 0.4.11 (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1205\"\u003e#1205\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/datafusion-python/compare/48.0.0...49.0.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=datafusion\u0026package-manager=pip\u0026previous-version=48.0.0\u0026new-version=49.0.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/Fokko/iceberg-python/pull/186","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fokko%2Ficeberg-python/issues/186","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/186/packages"}},{"old_version":"46.0.0","new_version":"48.0.0","update_type":"major","path":"/python","pr_created_at":"2025-08-26T10:24:31.000Z","version_change":"46.0.0 → 48.0.0","issue":{"uuid":"2774632676","node_id":"PR_kwDOL2ZwPc6lYYjk","number":427,"state":"closed","title":"build(deps): bump datafusion from 46.0.0 to 48.0.0 in /python","user":"dependabot[bot]","labels":["python","dependencies"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-08-26T15:29:07.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-08-26T10:24:31.000Z","updated_at":"2025-08-26T15:29:07.000Z","time_to_close":18276,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"datafusion","old_version":"46.0.0","new_version":"48.0.0","repository_url":"https://github.com/apache/datafusion-python"}],"path":"/python","ecosystem":"pip"},"body":"Bumps [datafusion](https://github.com/apache/datafusion-python) from 46.0.0 to 48.0.0.\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/f10d3b892b81f48b4dfc2ccd848d9c2ad5a1c4a7\"\u003e\u003ccode\u003ef10d3b8\u003c/code\u003e\u003c/a\u003e Prepare for 48 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/2e1b71369eefc97c22b82be84bbabb414f748fb9\"\u003e\u003ccode\u003e2e1b713\u003c/code\u003e\u003c/a\u003e refactor: style loading logic in DataFrameHtmlFormatter (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1177\"\u003e#1177\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/98f4773bbe24e31abb7ab1a4a0b5f8c925257885\"\u003e\u003ccode\u003e98f4773\u003c/code\u003e\u003c/a\u003e feat: add FFI support for user defined functions (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1145\"\u003e#1145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/9362f53150e5423581757ed56883b3ca2c95b8a2\"\u003e\u003ccode\u003e9362f53\u003c/code\u003e\u003c/a\u003e feat: python based catalog and schema provider (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1156\"\u003e#1156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/954563429384078a9e85c56ad553c7e3be7ac52a\"\u003e\u003ccode\u003e9545634\u003c/code\u003e\u003c/a\u003e feat: collect once during display() in jupyter notebooks (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1167\"\u003e#1167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/03921d9629c576afc43b63ad67172f70abcd73e8\"\u003e\u003ccode\u003e03921d9\u003c/code\u003e\u003c/a\u003e feat: dataframe string formatter (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1170\"\u003e#1170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/ef62fa897e6e8334779f556aad4c0da89ebdc86f\"\u003e\u003ccode\u003eef62fa8\u003c/code\u003e\u003c/a\u003e Add compression_level support to ParquetWriterOptions and enhance write_parqu...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/0d3c37f9379fd12406022c7edc3fee056866a694\"\u003e\u003ccode\u003e0d3c37f\u003c/code\u003e\u003c/a\u003e Consolidate DataFrame Docs: Merge HTML Rendering Section as Subpage (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1161\"\u003e#1161\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/1812a0d3e88976f51b40ccfd1a02fddb17ddb8bb\"\u003e\u003ccode\u003e1812a0d\u003c/code\u003e\u003c/a\u003e Fix signature of \u003ccode\u003e__arrow_c_stream__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1168\"\u003e#1168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/datafusion-python/commit/98dc06b553b69576d50157542f761b44f456dcf2\"\u003e\u003ccode\u003e98dc06b\u003c/code\u003e\u003c/a\u003e feat: Support Parquet writer options (\u003ca href=\"https://redirect.github.com/apache/datafusion-python/issues/1123\"\u003e#1123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apache/datafusion-python/compare/46.0.0...48.0.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=datafusion\u0026package-manager=pip\u0026previous-version=46.0.0\u0026new-version=48.0.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/apache/hudi-rs/pull/427","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fhudi-rs/issues/427","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/427/packages"}}]}